DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
@ 2019-05-11  0:05 Nic Chautru
  2019-05-11  0:05 ` Nic Chautru
                   ` (7 more replies)
  0 siblings, 8 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:05 UTC (permalink / raw)
  To: dev; +Cc: Nic Chautru

This was deferred from 19.05 due to time running out. 
Addition of a PMD for 4G FEC encoding and decoding functions for Intel PAC N300 FPGA. 
Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
The HW dependency is available now.

Nicolas Chautru (5):
  baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC
    N300     FPGA card
  bbdev : Extension of BBDEV for 5G FEC
  baseband/turbo_sw : Extension of turbo_sw for 5G FEC
  test-bbdev : Update of bbdec test-app for FPGA and 5G testing
  usertools: update to usertool to allow binding of baseband device

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 ++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  521 +++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 +++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 +++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 ++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 ++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 ++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 ++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 +++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 ++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    9 +-
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |   57 +-
 doc/guides/prog_guide/bbdev.rst                    |  509 +++-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2671 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 drivers/baseband/turbo_sw/Makefile                 |   15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  707 +++++-
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  137 +-
 lib/librte_bbdev/rte_bbdev_op.h                    |  577 ++++-
 mk/rte.app.mk                                      |    9 +-
 usertools/dpdk-devbind.py                          |   10 +-
 usertools/dpdk-setup.sh                            |    6 +-
 68 files changed, 26858 insertions(+), 404 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
@ 2019-05-11  0:05 ` Nic Chautru
  2019-05-11  0:05 ` [dpdk-dev] [PATCH 1/5] baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC N300 FPGA card Nic Chautru
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:05 UTC (permalink / raw)
  To: dev; +Cc: Nic Chautru

This was deferred from 19.05 due to time running out. 
Addition of a PMD for 4G FEC encoding and decoding functions for Intel PAC N300 FPGA. 
Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
The HW dependency is available now.

Nicolas Chautru (5):
  baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC
    N300     FPGA card
  bbdev : Extension of BBDEV for 5G FEC
  baseband/turbo_sw : Extension of turbo_sw for 5G FEC
  test-bbdev : Update of bbdec test-app for FPGA and 5G testing
  usertools: update to usertool to allow binding of baseband device

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 ++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  521 +++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 +++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 +++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 ++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 ++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 ++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 ++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 +++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 ++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    9 +-
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |   57 +-
 doc/guides/prog_guide/bbdev.rst                    |  509 +++-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2671 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 drivers/baseband/turbo_sw/Makefile                 |   15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  707 +++++-
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  137 +-
 lib/librte_bbdev/rte_bbdev_op.h                    |  577 ++++-
 mk/rte.app.mk                                      |    9 +-
 usertools/dpdk-devbind.py                          |   10 +-
 usertools/dpdk-setup.sh                            |    6 +-
 68 files changed, 26858 insertions(+), 404 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 1/5] baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC N300 FPGA card
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
  2019-05-11  0:05 ` Nic Chautru
@ 2019-05-11  0:05 ` Nic Chautru
  2019-05-11  0:05   ` Nic Chautru
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 2/5] bbdev : Extension of BBDEV for 5G FEC Nic Chautru
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:05 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

---
 config/common_base                                 |    6 +
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2671 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 mk/rte.app.mk                                      |    1 +
 9 files changed, 3104 insertions(+)
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map

diff --git a/config/common_base b/config/common_base
index 6b96e0e..ae52028 100644
--- a/config/common_base
+++ b/config/common_base
@@ -521,6 +521,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 # EXPERIMENTAL: API may change without prior notice
 #
 CONFIG_RTE_LIBRTE_BBDEV=y
+CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 
@@ -535,6 +536,11 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
 
 #
+# Compile PMD for Intel FPGA LTE FEC bbdev device
+#
+CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC=y
+
+#
 # Compile generic crypto device library
 #
 CONFIG_RTE_LIBRTE_CRYPTODEV=y
diff --git a/doc/guides/bbdevs/fpga_lte_fec.rst b/doc/guides/bbdevs/fpga_lte_fec.rst
new file mode 100644
index 0000000..066907d
--- /dev/null
+++ b/doc/guides/bbdevs/fpga_lte_fec.rst
@@ -0,0 +1,318 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation
+
+Intel(R) FPGA LTE FEC Poll Mode Driver
+======================================
+
+The BBDEV FPGA LTE FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
+Turbo Encode / Decode LTE wireless acceleration function, using Intel's PCI-e and FPGA
+based Vista Creek device.
+
+Features
+--------
+
+FPGA LTE FEC PMD supports the following features:
+
+- Turbo Encode in the DL with total throughput of 4.5 Gbits/s
+- Turbo Decode in the UL with total throughput of 1.5 Gbits/s assuming 8 decoder iterations
+- 8 VFs per PF (physical device)
+- Maximum of 32 UL queues per VF
+- Maximum of 32 DL queues per VF
+- PCIe Gen-3 x8 Interface
+- MSI-X
+- SR-IOV
+
+
+FPGA LTE FEC PMD supports the following BBDEV capabilities:
+
+* For the turbo encode operation:
+   - ``RTE_BBDEV_TURBO_CRC_24B_ATTACH`` :  set to attach CRC24B to CB(s)
+   - ``RTE_BBDEV_TURBO_RATE_MATCH`` :  if set then do not do Rate Match bypass
+   - ``RTE_BBDEV_TURBO_ENC_INTERRUPTS`` :  set for encoder dequeue interrupts
+
+
+* For the turbo decode operation:
+   - ``RTE_BBDEV_TURBO_CRC_TYPE_24B`` :  check CRC24B from CB(s)
+   - ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE`` :  perform subblock de-interleave
+   - ``RTE_BBDEV_TURBO_DEC_INTERRUPTS`` :  set for decoder dequeue interrupts
+   - ``RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN`` :  set if negative LLR encoder i/p is supported
+   - ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP`` :  keep CRC24B bits appended while decoding
+
+
+Limitations
+-----------
+
+FPGA LTE FEC does not support the following:
+
+- Scatter-Gather function
+
+
+Installation
+--------------
+
+Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
+default set of bbdev compile flags may be found in config/common_base, where for example
+the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
+set. It is assumed DPDK has been compiled for an icc 64-bit target using:
+
+.. code-block:: console
+
+  make install T=x86_64-native-linuxapp-icc
+
+
+DPDK requires hugepages to be configured as detailed in section 2 of the DPDK manual.
+The bbdev test application has been tested with a configuration 40 x 1GB hugepages. The
+hugepage configuration of a server may be examined using:
+
+.. code-block:: console
+
+   grep Huge* /proc/meminfo
+
+
+Initialization
+--------------
+
+When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
+
+.. code-block:: console
+
+  sudo lspci -vd1172:5052
+
+The physical and virtual functions are compatible with Linux UIO drivers:
+``vfio`` and ``igb_uio``. However, in order to work the FPGA LTE FEC device firstly needs
+to be bound to one of these linux drivers through DPDK.
+
+
+Bind PF UIO driver(s)
+~~~~~~~~~~~~~~~~~~~~~
+
+Install the DPDK igb_uio driver, bind it with the PF PCI device ID and use
+``lspci`` to confirm the PF device is under use by ``igb_uio`` DPDK UIO driver.
+
+The igb_uio driver may be bound to the PF PCI device using one of three methods:
+
+
+1. PCI functions (physical or virtual, depending on the use case) can be bound to
+the UIO driver by repeating this command for every function.
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  insmod ./build/kmod/igb_uio.ko
+  echo "1172 5052" > /sys/bus/pci/drivers/igb_uio/new_id
+  lspci -vd1172:
+
+
+2. Another way to bind PF with DPDK UIO driver is by using the ``dpdk-devbind.py`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-devbind.py -b igb_uio 0000:06:00.0
+
+where the PCI device ID (example: 0000:06:00.0) is obtained using lspci -vd1172:
+
+
+3. A third way to bind is to use ``dpdk-setup.sh`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-setup.sh
+
+  select 'Bind Ethernet/Crypto/Baseband device to IGB UIO module'
+  or
+  select 'Bind Ethernet/Crypto/Baseband device to VFIO module' depending on driver required
+  enter PCI device ID
+  select 'Display current Ethernet/Crypto/Baseband device settings' to confirm binding
+
+
+In the same way the FPGA LTE FEC PF can be bound with vfio, but vfio driver does not
+support SR-IOV configuration right out of the box, so it will need to be patched.
+
+
+Enable Virtual Functions
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+Now, it should be visible in the printouts that PCI PF is under igb_uio control
+"``Kernel driver in use: igb_uio``"
+
+To show the number of available VFs on the device, read ``sriov_totalvfs`` file..
+
+.. code-block:: console
+
+  cat /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_totalvfs
+
+  where 0000\:<b>\:<d>.<f> is the PCI device ID
+
+
+To enable VFs via igb_uio, echo the number of virtual functions intended to
+enable to ``max_vfs`` file..
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/max_vfs
+
+
+Afterwards, all VFs must be bound to appropriate UIO drivers as required, same
+way it was done with the physical function previously.
+
+Enabling SR-IOV via vfio driver is pretty much the same, except that the file
+name is different:
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_numvfs
+
+
+Configure the VFs through PF
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The PCI virtual functions must be configured before working or getting assigned
+to VMs/Containers. The configuration involves allocating the number of hardware
+queues, priorities, load balance, bandwidth and other settings necessary for the
+device to perform FEC functions.
+
+This configuration needs to be executed at least once after reboot or PCI FLR and can
+be achieved by using the function ``fpga_lte_fec_configure()``, which sets up the
+parameters defined in ``fpga_lte_fec_conf`` structure:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf {
+      bool pf_mode_en;
+      uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t ul_bandwidth;
+      uint8_t dl_bandwidth;
+      uint8_t ul_load_balance;
+      uint8_t dl_load_balance;
+      uint16_t flr_time_out;
+  };
+
+- ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
+  VFs are mutually exclusive and cannot run simultaneously.
+  Set to 1 for PF mode enabled.
+  If PF mode is enabled all queues available in the device are assigned
+  exclusively to PF and 0 queues given to VFs.
+
+- ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
+
+- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
+  allocates different bandwidth to UL and DL. The weight is configured by this
+  setting. The unit of weight is 3 code blocks. For example, if the code block
+  cbps (code block per second) ratio between UL and DL is 12:1, then the
+  configuration value should be set to 36:3. The schedule algorithm is based
+  on code block regardless the length of each block.
+
+- ``*l_load_balance``: hardware queues are load-balanced in a round-robin
+  fashion. Queues get filled first-in first-out until they reach a pre-defined
+  watermark level, if exceeded, they won't get assigned new code blocks..
+  This watermark is defined by this setting.
+
+  If all hardware queues exceeds the watermark, no code blocks will be
+  streamed in from UL/DL code block FIFO.
+
+- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
+  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
+  the FLR time out then set this setting to 0x262=610.
+
+
+An example configuration code calling the function ``fpga_lte_fec_configure()`` is shown
+below:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf conf;
+  unsigned int i;
+
+  memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+  conf.pf_mode_en = 1;
+
+  for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+      conf.vf_ul_queues_number[i] = 4;
+      conf.vf_dl_queues_number[i] = 4;
+  }
+  conf.ul_bandwidth = 12;
+  conf.dl_bandwidth = 5;
+  conf.dl_load_balance = 64;
+  conf.ul_load_balance = 64;
+
+  /* setup FPGA PF */
+  ret = fpga_lte_fec_configure(info->dev_name, &conf);
+  TEST_ASSERT_SUCCESS(ret,
+      "Failed to configure 4G FPGA PF for bbdev %s",
+      info->dev_name);
+
+
+Test Application
+----------------
+
+BBDEV provides a test application, ``test-bbdev.py`` and range of test data for testing
+the functionality of FPGA LTE FEC turbo encode and turbo decode, depending on the device's
+capabilities. The test application is located under app->test-bbdev folder and has the
+following options:
+
+.. code-block:: console
+
+  "-p", "--testapp-path": specifies path to the bbdev test app.
+  "-e", "--eal-params"	: EAL arguments which are passed to the test app.
+  "-t", "--timeout"	: Timeout in seconds (default=300).
+  "-c", "--test-cases"	: Defines test cases to run. Run all if not specified.
+  "-v", "--test-vector"	: Test vector path (default=dpdk_path+/app/test-bbdev/test_vectors/bbdev_null.data).
+  "-n", "--num-ops"	: Number of operations to process on device (default=32).
+  "-b", "--burst-size"	: Operations enqueue/dequeue burst size (default=32).
+  "-l", "--num-lcores"	: Number of lcores to run (default=16).
+  "-i", "--init-device" : Initialise PF device with default values.
+
+
+To execute the test application tool using simple turbo decode or turbo encode data,
+type one of the following:
+
+.. code-block:: console
+
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_dec_default.data
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_enc_default.data
+
+
+The test application ``test-bbdev.py``, supports the ability to configure the PF device with
+a default set of values, if the "-i" or "- -init-device" option is included. The default values
+are defined in test_bbdev_perf.c as:
+
+- VF_UL_QUEUE_VALUE 4
+- VF_DL_QUEUE_VALUE 4
+- UL_BANDWIDTH 3
+- DL_BANDWIDTH 3
+- UL_LOAD_BALANCE 128
+- DL_LOAD_BALANCE 128
+- FLR_TIMEOUT 610
+
+
+Test Vectors
+~~~~~~~~~~~~
+
+In addition to the simple turbo decoder and turbo encoder tests, bbdev also provides
+a range of additional tests under the test_vectors folder, which may be useful. The results
+of these tests will depend on the FPGA LTE FEC capabilities:
+
+* turbo decoder tests:
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
+
+
+* turbo encoder tests:
+   - ``turbo_enc_c1_k40_r0_e1190_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1194_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1196_rm.data``
+   - ``turbo_enc_c1_k40_r0_e272_rm.data``
+   - ``turbo_enc_c1_k6144_r0_e18444.data``
+   - ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+   - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
+   - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
+   - ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
+
diff --git a/doc/guides/bbdevs/index.rst b/doc/guides/bbdevs/index.rst
index 93276ed..005b95e 100644
--- a/doc/guides/bbdevs/index.rst
+++ b/doc/guides/bbdevs/index.rst
@@ -10,3 +10,4 @@ Baseband Device Drivers
 
     null
     turbo_sw
+    fpga_lte_fec
diff --git a/drivers/baseband/Makefile b/drivers/baseband/Makefile
index 4ec83b0..ceffc7d 100644
--- a/drivers/baseband/Makefile
+++ b/drivers/baseband/Makefile
@@ -10,5 +10,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL) += null
 DEPDIRS-null = $(core-libs)
 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += turbo_sw
 DEPDIRS-turbo_sw = $(core-libs)
+DIRS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec
+DEPDIRS-fpga_lte_fec = $(core-libs)
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/baseband/fpga_lte_fec/Makefile b/drivers/baseband/fpga_lte_fec/Makefile
new file mode 100644
index 0000000..aedc8f3
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/Makefile
@@ -0,0 +1,29 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_pmd_fpga_lte_fec.a
+
+# build flags
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_bbdev
+LDLIBS += -lrte_pci -lrte_bus_pci
+
+# versioning export map
+EXPORT_MAP := fpga_lte_fec_version.map
+
+# library version
+LIBABIVER := 1
+
+# library source files
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec.c
+
+# export include files
+SYMLINK-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC)-include += fpga_lte_fec.h
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
new file mode 100644
index 0000000..fe59b16
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -0,0 +1,2671 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#include <unistd.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_dev.h>
+#include <rte_malloc.h>
+#include <rte_mempool.h>
+#include <rte_errno.h>
+#include <rte_pci.h>
+#include <rte_bus_pci.h>
+#include <rte_byteorder.h>
+#ifdef RTE_BBDEV_OFFLOAD_COST
+#include <rte_cycles.h>
+#endif
+
+#include <rte_bbdev.h>
+#include <rte_bbdev_pmd.h>
+
+#include "fpga_lte_fec.h"
+
+/* Turbo SW PMD logging ID */
+static int fpga_lte_fec_logtype;
+
+/* Helper macro for logging */
+#define rte_bbdev_log(level, fmt, ...) \
+	rte_log(RTE_LOG_ ## level, fpga_lte_fec_logtype, fmt "\n", \
+		##__VA_ARGS__)
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+#define rte_bbdev_log_debug(fmt, ...) \
+		rte_bbdev_log(DEBUG, "fpga_lte_fec: " fmt, \
+		##__VA_ARGS__)
+#else
+#define rte_bbdev_log_debug(fmt, ...)
+#endif
+
+/* FPGA LTE FEC driver names */
+#define FPGA_LTE_FEC_PF_DRIVER_NAME intel_fpga_lte_fec_pf
+#define FPGA_LTE_FEC_VF_DRIVER_NAME intel_fpga_lte_fec_vf
+
+/* FPGA LTE FEC PCI vendor & device IDs */
+#define FPGA_LTE_FEC_VENDOR_ID (0x1172)
+#define FPGA_LTE_FEC_PF_DEVICE_ID (0x5052)
+#define FPGA_LTE_FEC_VF_DEVICE_ID (0x5050)
+
+/* Align DMA descriptors to 256 bytes - cache-aligned */
+#define FPGA_RING_DESC_ENTRY_LENGTH (8)
+/* Ring size is in 256 bits (32 bytes) units */
+#define FPGA_RING_DESC_LEN_UNIT_BYTES (32)
+/* Maximum size of queue */
+#define FPGA_RING_MAX_SIZE (1024)
+#define FPGA_FLR_TIMEOUT_UNIT (16.384)
+
+#define FPGA_NUM_UL_QUEUES (32)
+#define FPGA_NUM_DL_QUEUES (32)
+#define FPGA_TOTAL_NUM_QUEUES (FPGA_NUM_UL_QUEUES + FPGA_NUM_DL_QUEUES)
+#define FPGA_NUM_INTR_VEC (FPGA_TOTAL_NUM_QUEUES - RTE_INTR_VEC_RXTX_OFFSET)
+
+#define FPGA_INVALID_HW_QUEUE_ID (0xFFFFFFFF)
+
+#define FPGA_QUEUE_FLUSH_TIMEOUT_US (1000)
+#define FPGA_TIMEOUT_CHECK_INTERVAL (5)
+
+/* FPGA LTE FEC Register mapping on BAR0 */
+enum {
+	FPGA_LTE_FEC_VERSION_ID = 0x00000000, /* len: 4B */
+	FPGA_LTE_FEC_CONFIGURATION = 0x00000004, /* len: 2B */
+	FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE = 0x00000008, /* len: 1B */
+	FPGA_LTE_FEC_LOAD_BALANCE_FACTOR = 0x0000000a, /* len: 2B */
+	FPGA_LTE_FEC_RING_DESC_LEN = 0x0000000c, /* len: 2B */
+	FPGA_LTE_FEC_FLR_TIME_OUT = 0x0000000e, /* len: 2B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW = 0x00000018, /* len: 4B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI = 0x0000001c, /* len: 4B */
+	FPGA_LTE_FEC_VF0_DEBUG = 0x00000020, /* len: 4B */
+	FPGA_LTE_FEC_VF1_DEBUG = 0x00000024, /* len: 4B */
+	FPGA_LTE_FEC_VF2_DEBUG = 0x00000028, /* len: 4B */
+	FPGA_LTE_FEC_VF3_DEBUG = 0x0000002c, /* len: 4B */
+	FPGA_LTE_FEC_VF4_DEBUG = 0x00000030, /* len: 4B */
+	FPGA_LTE_FEC_VF5_DEBUG = 0x00000034, /* len: 4B */
+	FPGA_LTE_FEC_VF6_DEBUG = 0x00000038, /* len: 4B */
+	FPGA_LTE_FEC_VF7_DEBUG = 0x0000003c, /* len: 4B */
+	FPGA_LTE_FEC_QUEUE_MAP = 0x00000040, /* len: 256B */
+	FPGA_LTE_FEC_RING_CTRL_REGS = 0x00000200  /* len: 2048B */
+};
+
+/* FPGA LTE FEC Ring Control Registers */
+enum {
+	FPGA_LTE_FEC_RING_HEAD_ADDR = 0x00000008,
+	FPGA_LTE_FEC_RING_SIZE = 0x00000010,
+	FPGA_LTE_FEC_RING_MISC = 0x00000014,
+	FPGA_LTE_FEC_RING_ENABLE = 0x00000015,
+	FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN = 0x00000016,
+	FPGA_LTE_FEC_RING_SHADOW_TAIL = 0x00000018,
+	FPGA_LTE_FEC_RING_HEAD_POINT = 0x0000001C
+};
+
+/* FPGA LTE FEC DESCRIPTOR ERROR */
+enum {
+	DESC_ERR_NO_ERR = 0x0,
+	DESC_ERR_K_OUT_OF_RANGE = 0x1,
+	DESC_ERR_K_NOT_NORMAL = 0x2,
+	DESC_ERR_KPAI_NOT_NORMAL = 0x3,
+	DESC_ERR_DESC_OFFSET_ERR = 0x4,
+	DESC_ERR_DESC_READ_FAIL = 0x8,
+	DESC_ERR_DESC_READ_TIMEOUT = 0x9,
+	DESC_ERR_DESC_READ_TLP_POISONED = 0xA,
+	DESC_ERR_CB_READ_FAIL = 0xC,
+	DESC_ERR_CB_READ_TIMEOUT = 0xD,
+	DESC_ERR_CB_READ_TLP_POISONED = 0xE
+};
+
+/* FPGA LTE FEC DMA Encoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_enc_desc {
+	uint32_t done:1,
+		rsrvd0:11,
+		error:4,
+		rsrvd1:16;
+	uint32_t ncb:16,
+		rsrvd2:14,
+		rv:2;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		crc_en:1,
+		rsrvd3:13,
+		offset:10,
+		rsrvd4:6;
+	uint16_t e;
+	uint16_t k;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint64_t cbs_in_op;
+		};
+
+		uint8_t sw_ctxt[FPGA_RING_DESC_LEN_UNIT_BYTES *
+					(FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE FEC DMA Decoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_dec_desc {
+	uint32_t done:1,
+		iter:5,
+		rsrvd0:2,
+		crc_pass:1,
+		rsrvd1:3,
+		error:4,
+		crc_type:1,
+		rsrvd2:7,
+		max_iter:5,
+		rsrvd3:3;
+	uint32_t rsrvd4;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		drop_crc:1,
+		rsrvd5:13,
+		offset:10,
+		rsrvd6:6;
+	uint16_t k;
+	uint16_t in_len;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint8_t cbs_in_op;
+		};
+
+		uint32_t sw_ctxt[8 * (FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE DMA Descriptor */
+union fpga_dma_desc {
+	struct fpga_dma_enc_desc enc_req;
+	struct fpga_dma_dec_desc dec_req;
+};
+
+/* FPGA LTE FEC Ring Control Register */
+struct __attribute__((__packed__)) fpga_ring_ctrl_reg {
+	uint64_t ring_base_addr;
+	uint64_t ring_head_addr;
+	uint16_t ring_size:11;
+	uint16_t rsrvd0;
+	union { /* Miscellaneous register */
+		uint8_t misc;
+		uint8_t max_ul_dec:5,
+			max_ul_dec_en:1,
+			rsrvd1:2;
+	};
+	uint8_t enable;
+	uint8_t flush_queue_en;
+	uint8_t rsrvd2;
+	uint16_t shadow_tail;
+	uint16_t rsrvd3;
+	uint16_t head_point;
+	uint16_t rsrvd4;
+
+};
+
+/* Private data structure for each FPGA FEC device */
+struct fpga_lte_fec_device {
+	/** Base address of MMIO registers (BAR0) */
+	void *mmio_base;
+	/** Base address of memory for sw rings */
+	void *sw_rings;
+	/** Physical address of sw_rings */
+	rte_iova_t sw_rings_phys;
+	/** Number of bytes available for each queue in device. */
+	uint32_t sw_ring_size;
+	/** Max number of entries available for each queue in device */
+	uint32_t sw_ring_max_depth;
+	/** Base address of response tail pointer buffer */
+	uint32_t *tail_ptrs;
+	/** Physical address of tail pointers */
+	rte_iova_t tail_ptr_phys;
+	/** Queues flush completion flag */
+	uint64_t *flush_queue_status;
+	/* Bitmap capturing which Queues are bound to the PF/VF */
+	uint64_t q_bound_bit_map;
+	/* Bitmap capturing which Queues have already been assigned */
+	uint64_t q_assigned_bit_map;
+	/** True if this is a PF FPGA FEC device */
+	bool pf_device;
+};
+
+/* Structure associated with each queue. */
+struct __rte_cache_aligned fpga_queue {
+	struct fpga_ring_ctrl_reg ring_ctrl_reg;  /* Ring Control Register */
+	union fpga_dma_desc *ring_addr;  /* Virtual address of software ring */
+	uint64_t *ring_head_addr;  /* Virtual address of completion_head */
+	uint64_t shadow_completion_head; /* Shadow completion head value */
+	uint16_t head_free_desc;  /* Ring head */
+	uint16_t tail;  /* Ring tail */
+	/* Mask used to wrap enqueued descriptors on the sw ring */
+	uint32_t sw_ring_wrap_mask;
+	uint32_t irq_enable;  /* Enable ops dequeue interrupts if set to 1 */
+	uint8_t q_idx;  /* Queue index */
+	struct fpga_lte_fec_device *d;
+	/* MMIO register of shadow_tail used to enqueue descriptors */
+	void *shadow_tail_addr;
+};
+
+/* Write to 16 bit MMIO register address */
+static inline void
+mmio_write_16(void *addr, uint16_t value)
+{
+	*((volatile uint16_t *)(addr)) = rte_cpu_to_le_16(value);
+}
+
+/* Write to 32 bit MMIO register address */
+static inline void
+mmio_write_32(void *addr, uint32_t value)
+{
+	*((volatile uint32_t *)(addr)) = rte_cpu_to_le_32(value);
+}
+
+/* Write to 64 bit MMIO register address */
+static inline void
+mmio_write_64(void *addr, uint64_t value)
+{
+	*((volatile uint64_t *)(addr)) = rte_cpu_to_le_64(value);
+}
+
+/* Write a 8 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_8(void *mmio_base, uint32_t offset, uint8_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	*((volatile uint8_t *)(reg_addr)) = payload;
+}
+
+/* Write a 16 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_16(void *mmio_base, uint32_t offset, uint16_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_16(reg_addr, payload);
+}
+
+/* Write a 32 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_32(void *mmio_base, uint32_t offset, uint32_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_32(reg_addr, payload);
+}
+
+/* Write a 64 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_64(void *mmio_base, uint32_t offset, uint64_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_64(reg_addr, payload);
+}
+
+/* Write a ring control register of a FPGA LTE FEC device */
+static inline void
+fpga_ring_reg_write(void *mmio_base, uint32_t offset,
+		struct fpga_ring_ctrl_reg payload)
+{
+	fpga_reg_write_64(mmio_base, offset, payload.ring_base_addr);
+	fpga_reg_write_64(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_ADDR,
+			payload.ring_head_addr);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SIZE,
+			payload.ring_size);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			payload.head_point);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN,
+			payload.flush_queue_en);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			payload.shadow_tail);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_MISC,
+			payload.misc);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload.enable);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint32_t
+fpga_reg_read_32(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint32_t ret = *((volatile uint32_t *)(reg_addr));
+	return rte_le_to_cpu_32(ret);
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Read a register of FPGA LTE FEC device */
+static uint8_t
+fpga_reg_read_8(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	return *((volatile uint8_t *)(reg_addr));
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint16_t
+fpga_reg_read_16(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint16_t ret = *((volatile uint16_t *)(reg_addr));
+	return rte_le_to_cpu_16(ret);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint64_t
+fpga_reg_read_64(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint64_t ret = *((volatile uint64_t *)(reg_addr));
+	return rte_le_to_cpu_64(ret);
+}
+
+/* Read Ring Control Register of FPGA LTE FEC device */
+static inline void
+print_ring_reg_debug_info(void *mmio_base, uint32_t offset)
+{
+	rte_bbdev_log_debug(
+		"FPGA MMIO base address @ %p | Ring Control Register @ offset = 0x%08"
+		PRIx32, mmio_base, offset);
+	rte_bbdev_log_debug(
+		"RING_BASE_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset));
+	rte_bbdev_log_debug(
+		"RING_HEAD_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_ADDR));
+	rte_bbdev_log_debug(
+		"RING_SIZE = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SIZE));
+	rte_bbdev_log_debug(
+		"RING_MISC = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_MISC));
+	rte_bbdev_log_debug(
+		"RING_ENABLE = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_ENABLE));
+	rte_bbdev_log_debug(
+		"RING_FLUSH_QUEUE_EN = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN));
+	rte_bbdev_log_debug(
+		"RING_SHADOW_TAIL = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SHADOW_TAIL));
+	rte_bbdev_log_debug(
+		"RING_HEAD_POINT = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_POINT));
+}
+
+/* Read Static Register of FPGA LTE FEC device */
+static inline void
+print_static_reg_debug_info(void *mmio_base)
+{
+	uint16_t config = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_CONFIGURATION);
+	uint8_t qmap_done = fpga_reg_read_8(mmio_base,
+			FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE);
+	uint16_t lb_factor = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_LOAD_BALANCE_FACTOR);
+	uint16_t ring_desc_len = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_RING_DESC_LEN);
+	uint16_t flr_time_out = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_FLR_TIME_OUT);
+
+	rte_bbdev_log_debug("UL.DL Weights = %u.%u",
+			((uint8_t)config), ((uint8_t)(config >> 8)));
+	rte_bbdev_log_debug("UL.DL Load Balance = %u.%u",
+			((uint8_t)lb_factor), ((uint8_t)(lb_factor >> 8)));
+	rte_bbdev_log_debug("Queue-PF/VF Mapping Table = %s",
+			(qmap_done > 0) ? "READY" : "NOT-READY");
+	rte_bbdev_log_debug("Ring Descriptor Size = %u bytes",
+			ring_desc_len*FPGA_RING_DESC_LEN_UNIT_BYTES);
+	rte_bbdev_log_debug("FLR Timeout = %f usec",
+			(float)flr_time_out*FPGA_FLR_TIMEOUT_UNIT);
+}
+
+/* Print decode DMA Descriptor of FPGA LTE FEC device */
+static void
+print_dma_dec_desc_debug_info(union fpga_dma_desc *desc)
+{
+	rte_bbdev_log_debug("DMA response desc %p\n"
+		"\t-- done(%"PRIu32") | iter(%"PRIu32") | crc_pass(%"PRIu32") | error (%"PRIu32") | crc_type(%"PRIu32")\n"
+		"\t-- max_iter(%"PRIu32") | bypass_rm(%"PRIu32") | irq_en (%"PRIu32") | drop_crc(%"PRIu32") | offset(%"PRIu32")\n"
+		"\t-- k(%"PRIu32") | in_len (%"PRIu16") | op_add(%p)\n"
+		"\t-- cbs_in_op(%"PRIu32") | in_add (0x%08"PRIx32"%08"PRIx32") | "
+		"out_add (0x%08"PRIx32"%08"PRIx32")",
+		desc,
+		(uint32_t)desc->dec_req.done,
+		(uint32_t)desc->dec_req.iter,
+		(uint32_t)desc->dec_req.crc_pass,
+		(uint32_t)desc->dec_req.error,
+		(uint32_t)desc->dec_req.crc_type,
+		(uint32_t)desc->dec_req.max_iter,
+		(uint32_t)desc->dec_req.bypass_rm,
+		(uint32_t)desc->dec_req.irq_en,
+		(uint32_t)desc->dec_req.drop_crc,
+		(uint32_t)desc->dec_req.offset,
+		(uint32_t)desc->dec_req.k,
+		(uint16_t)desc->dec_req.in_len,
+		desc->dec_req.op_addr,
+		(uint32_t)desc->dec_req.cbs_in_op,
+		(uint32_t)desc->dec_req.in_addr_hi,
+		(uint32_t)desc->dec_req.in_addr_lw,
+		(uint32_t)desc->dec_req.out_addr_hi,
+		(uint32_t)desc->dec_req.out_addr_lw);
+}
+#endif
+
+static int
+fpga_setup_queues(struct rte_bbdev *dev, uint16_t num_queues, int socket_id)
+{
+	/* Number of queues bound to a PF/VF */
+	uint32_t hw_q_num = 0;
+	uint32_t ring_size, payload, address, q_id, offset;
+	rte_iova_t phys_addr;
+	struct fpga_ring_ctrl_reg ring_reg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	if (!(fpga_reg_read_32(fpga_dev->mmio_base, address) & 0x1)) {
+		rte_bbdev_log(ERR,
+				"Queue-PF/VF mapping is not set! Was PF configured for device (%s) ?",
+				dev->data->name);
+		return -EPERM;
+	}
+
+	/* Clear queue registers structure */
+	memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+
+	/* Scan queue map.
+	 * If a queue is valid and mapped to a calling PF/VF the read value is
+	 * replaced with a queue ID and if it's not then
+	 * FPGA_INVALID_HW_QUEUE_ID is returned.
+	 */
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(fpga_dev->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+
+		rte_bbdev_log_debug("%s: queue ID: %u, registry queue ID: %u",
+				dev->device->name, q_id, hw_q_id);
+
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID) {
+			fpga_dev->q_bound_bit_map |= (1ULL << q_id);
+			/* Clear queue register of found queue */
+			offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+				(sizeof(struct fpga_ring_ctrl_reg) * q_id);
+			fpga_ring_reg_write(fpga_dev->mmio_base,
+					offset, ring_reg);
+			++hw_q_num;
+		}
+	}
+	if (hw_q_num == 0) {
+		rte_bbdev_log(ERR,
+			"No HW queues assigned to this device. Probably this is a VF configured for PF mode. Check device configuration!");
+		return -ENODEV;
+	}
+
+	if (num_queues > hw_q_num) {
+		rte_bbdev_log(ERR,
+			"Not enough queues for device %s! Requested: %u, available: %u",
+			dev->device->name, num_queues, hw_q_num);
+		return -EINVAL;
+	}
+
+	ring_size = FPGA_RING_MAX_SIZE * sizeof(struct fpga_dma_dec_desc);
+
+	/* Enforce 32 byte alignment */
+	RTE_BUILD_BUG_ON((RTE_CACHE_LINE_SIZE % 32) != 0);
+
+	/* Allocate memory for SW descriptor rings */
+	fpga_dev->sw_rings = rte_zmalloc_socket(dev->device->driver->name,
+			num_queues * ring_size, RTE_CACHE_LINE_SIZE,
+			socket_id);
+	if (fpga_dev->sw_rings == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u sw_rings",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	fpga_dev->sw_rings_phys = rte_malloc_virt2iova(fpga_dev->sw_rings);
+	fpga_dev->sw_ring_size = ring_size;
+	fpga_dev->sw_ring_max_depth = FPGA_RING_MAX_SIZE;
+
+	/* Allocate memory for ring flush status */
+	fpga_dev->flush_queue_status = rte_zmalloc_socket(NULL,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, socket_id);
+	if (fpga_dev->flush_queue_status == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u flush_queue_status",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	/* Set the flush status address registers */
+	phys_addr = rte_malloc_virt2iova(fpga_dev->flush_queue_status);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW;
+	payload = (uint32_t)(phys_addr);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI;
+	payload = (uint32_t)(phys_addr >> 32);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	return 0;
+}
+
+static int
+fpga_dev_close(struct rte_bbdev *dev)
+{
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	rte_free(fpga_dev->sw_rings);
+	rte_free(fpga_dev->flush_queue_status);
+
+	return 0;
+}
+
+static void
+fpga_dev_info_get(struct rte_bbdev *dev,
+		struct rte_bbdev_driver_info *dev_info)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint32_t q_id = 0;
+
+	/* TODO RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN and numbers of buffers are set
+	 * to temporary values as they are required by test application while
+	 * validation phase.
+	 */
+	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+		{
+			.type = RTE_BBDEV_OP_TURBO_DEC,
+			.cap.turbo_dec = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_TYPE_24B |
+					RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE |
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS |
+					RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN |
+					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
+				.max_llr_modulus = INT8_MAX,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_hard_out =
+					RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_soft_out = 0
+			}
+		},
+		{
+			.type = RTE_BBDEV_OP_TURBO_ENC,
+			.cap.turbo_enc = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_24B_ATTACH |
+					RTE_BBDEV_TURBO_RATE_MATCH |
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_MAX_CODE_BLOCKS
+			}
+		},
+		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
+	};
+
+	static struct rte_bbdev_queue_conf default_queue_conf;
+	default_queue_conf.socket = dev->data->socket_id;
+	default_queue_conf.queue_size = FPGA_RING_MAX_SIZE;
+
+
+	dev_info->driver_name = dev->device->driver->name;
+	dev_info->queue_size_lim = FPGA_RING_MAX_SIZE;
+	dev_info->hardware_accelerated = true;
+	dev_info->min_alignment = 64;
+	dev_info->default_queue_conf = default_queue_conf;
+	dev_info->capabilities = bbdev_capabilities;
+	dev_info->cpu_flag_reqs = NULL;
+
+	/* Calculates number of queues assigned to device */
+	dev_info->max_num_queues = 0;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(d->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID)
+			dev_info->max_num_queues++;
+	}
+}
+
+/**
+ * Find index of queue bound to current PF/VF which is unassigned. Return -1
+ * when there is no available queue
+ */
+static int
+fpga_find_free_queue_idx(struct rte_bbdev *dev,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint64_t q_idx;
+	uint8_t i = 0;
+	uint8_t range = FPGA_TOTAL_NUM_QUEUES >> 1;
+
+	if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC) {
+		i = FPGA_NUM_DL_QUEUES;
+		range = FPGA_TOTAL_NUM_QUEUES;
+	}
+
+	for (; i < range; ++i) {
+		q_idx = 1ULL << i;
+		/* Check if index of queue is bound to current PF/VF */
+		if (d->q_bound_bit_map & q_idx)
+			/* Check if found queue was not already assigned */
+			if (!(d->q_assigned_bit_map & q_idx)) {
+				d->q_assigned_bit_map |= q_idx;
+				return i;
+			}
+	}
+
+	rte_bbdev_log(INFO, "Failed to find free queue on %s", dev->data->name);
+
+	return -1;
+}
+
+static int
+fpga_queue_setup(struct rte_bbdev *dev, uint16_t queue_id,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	uint32_t address, ring_offset;
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q;
+	int8_t q_idx;
+
+	/* Check if there is a free queue to assign */
+	q_idx = fpga_find_free_queue_idx(dev, conf);
+	if (q_idx == -1)
+		return -1;
+
+	/* Allocate the queue data structure. */
+	q = rte_zmalloc_socket(dev->device->driver->name, sizeof(*q),
+			RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_bbdev_log(ERR, "Failed to allocate queue memory");
+		return -ENOMEM;
+	}
+
+	q->d = d;
+	q->q_idx = q_idx;
+
+	/* Set ring_base_addr */
+	q->ring_addr = RTE_PTR_ADD(d->sw_rings, (d->sw_ring_size * queue_id));
+	q->ring_ctrl_reg.ring_base_addr = d->sw_rings_phys +
+			(d->sw_ring_size * queue_id);
+
+	/* Allocate memory for Completion Head variable*/
+	q->ring_head_addr = rte_zmalloc_socket(dev->device->driver->name,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q->ring_head_addr == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u completion_head",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+	/* Set ring_head_addr */
+	q->ring_ctrl_reg.ring_head_addr =
+			rte_malloc_virt2iova(q->ring_head_addr);
+
+	/* Clear shadow_completion_head */
+	q->shadow_completion_head = 0;
+
+	/* Set ring_size */
+	if (conf->queue_size > FPGA_RING_MAX_SIZE) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Size of queue is too big %d (MAX: %d ) for %s:%u",
+				conf->queue_size, FPGA_RING_MAX_SIZE,
+				dev->device->driver->name, dev->data->dev_id);
+		return -EINVAL;
+	}
+	q->ring_ctrl_reg.ring_size = conf->queue_size;
+
+	/* Set Miscellaneous FPGA register*/
+	/* Max iteration number for TTI mitigation - todo */
+	q->ring_ctrl_reg.max_ul_dec = 0;
+	/* Enable max iteration number for TTI - todo */
+	q->ring_ctrl_reg.max_ul_dec_en = 0;
+
+	/* Enable the ring */
+	q->ring_ctrl_reg.enable = 1;
+
+	/* Set FPGA head_point and tail registers */
+	q->ring_ctrl_reg.head_point = q->tail = 0;
+
+	/* Set FPGA shadow_tail register */
+	q->ring_ctrl_reg.shadow_tail = q->tail;
+
+	/* Calculates the ring offset for found queue */
+	ring_offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q_idx);
+
+	/* Set FPGA Ring Control Registers */
+	fpga_ring_reg_write(d->mmio_base, ring_offset, q->ring_ctrl_reg);
+
+	/* Store MMIO register of shadow_tail */
+	address = ring_offset + FPGA_LTE_FEC_RING_SHADOW_TAIL;
+	q->shadow_tail_addr = RTE_PTR_ADD(d->mmio_base, address);
+
+	q->head_free_desc = q->tail;
+
+	/* Set wrap mask */
+	q->sw_ring_wrap_mask = conf->queue_size - 1;
+
+	rte_bbdev_log_debug("Setup dev%u q%u: queue_idx=%u",
+			dev->data->dev_id, queue_id, q->q_idx);
+
+	dev->data->queues[queue_id].queue_private = q;
+
+	rte_bbdev_log_debug("BBDEV queue[%d] set up for FPGA queue[%d]",
+			queue_id, q_idx);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Read FPGA Ring Control Registers after configuration*/
+	print_ring_reg_debug_info(d->mmio_base, ring_offset);
+#endif
+	return 0;
+}
+
+static int
+fpga_queue_release(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	struct fpga_ring_ctrl_reg ring_reg;
+	uint32_t offset;
+
+	rte_bbdev_log_debug("FPGA Queue[%d] released", queue_id);
+
+	if (q != NULL) {
+		memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+		offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+		/* Disable queue */
+		fpga_reg_write_8(d->mmio_base,
+				offset + FPGA_LTE_FEC_RING_ENABLE, 0x00);
+		/* Clear queue registers */
+		fpga_ring_reg_write(d->mmio_base, offset, ring_reg);
+
+		/* Mark the Queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q->q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		dev->data->queues[queue_id].queue_private = NULL;
+	}
+
+	return 0;
+}
+
+/* Function starts a device queue. */
+static int
+fpga_queue_start(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t enable = 0x01;
+	uint16_t zero = 0x0000;
+
+	/* Clear queue head and tail variables */
+	q->tail = q->head_free_desc = 0;
+
+	/* Clear FPGA head_point and tail registers */
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			zero);
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			zero);
+
+	/* Enable queue */
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			enable);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] started", queue_id);
+	return 0;
+}
+
+/* Function stops a device queue. */
+static int
+fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t payload = 0x01;
+	uint8_t counter = 0;
+	uint8_t timeout = FPGA_QUEUE_FLUSH_TIMEOUT_US / FPGA_TIMEOUT_CHECK_INTERVAL;
+
+	/* Set flush_queue_en bit to trigger queue flushing */
+	fpga_reg_write_8(d->mmio_base,
+			offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN, payload);
+
+	/** Check if queue flush is completed.
+	 * FPGA will update the completion flag after queue flushing is
+	 * completed. If completion flag is not updated within 1ms it is
+	 * considered as a failure.
+	 */
+	while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) {
+		if (counter > timeout) {
+			rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d",
+					queue_id);
+			return -1;
+		}
+		usleep(FPGA_TIMEOUT_CHECK_INTERVAL);
+		counter++;
+	}
+
+	/* Disable queue */
+	payload = 0x00;
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] stopped", queue_id);
+	return 0;
+}
+
+static inline uint16_t
+get_queue_id(struct rte_bbdev_data *data, uint8_t q_idx)
+{
+	uint16_t queue_id;
+
+	for (queue_id = 0; queue_id < data->num_queues; ++queue_id) {
+		struct fpga_queue *q = data->queues[queue_id].queue_private;
+		if (q != NULL && q->q_idx == q_idx)
+			return queue_id;
+	}
+
+	return -1;
+}
+
+/* Interrupt handler triggered by FPGA dev for handling specific interrupt */
+static void
+fpga_dev_interrupt_handler(void *cb_arg)
+{
+	struct rte_bbdev *dev = cb_arg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+	struct fpga_queue *q;
+	uint64_t ring_head;
+	uint64_t q_idx;
+	uint16_t queue_id;
+	uint8_t i;
+
+	/* Scan queue assigned to this device */
+	for (i = 0; i < FPGA_TOTAL_NUM_QUEUES; ++i) {
+		q_idx = 1ULL << i;
+		if (fpga_dev->q_bound_bit_map & q_idx) {
+			queue_id = get_queue_id(dev->data, i);
+			if (queue_id == (uint16_t) -1)
+				continue;
+
+			/* Check if completion head was changed */
+			q = dev->data->queues[queue_id].queue_private;
+			ring_head = *q->ring_head_addr;
+			if (q->shadow_completion_head != ring_head &&
+				q->irq_enable == 1) {
+				q->shadow_completion_head = ring_head;
+				rte_bbdev_pmd_callback_process(
+						dev,
+						RTE_BBDEV_EVENT_DEQUEUE,
+						&queue_id);
+			}
+		}
+	}
+}
+
+static int
+fpga_queue_intr_enable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle))
+		return -ENOTSUP;
+
+	q->irq_enable = 1;
+
+	return 0;
+}
+
+static int
+fpga_queue_intr_disable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	q->irq_enable = 0;
+
+	return 0;
+}
+
+static int
+fpga_intr_enable(struct rte_bbdev *dev)
+{
+	int ret;
+	uint8_t i;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle)) {
+		rte_bbdev_log(ERR, "Multiple intr vector is not supported by FPGA (%s)",
+				dev->data->name);
+		return -ENOTSUP;
+	}
+
+	/* Create event file descriptors for each of 64 queue. Event fds will be
+	 * mapped to FPGA IRQs in rte_intr_enable(). This is a 1:1 mapping where
+	 * the IRQ number is a direct translation to the queue number.
+	 *
+	 * 63 (FPGA_NUM_INTR_VEC) event fds are created as rte_intr_enable()
+	 * mapped the first IRQ to already created interrupt event file
+	 * descriptor (intr_handle->fd).
+	 */
+	if (rte_intr_efd_enable(dev->intr_handle, FPGA_NUM_INTR_VEC)) {
+		rte_bbdev_log(ERR, "Failed to create fds for %u queues",
+				dev->data->num_queues);
+		return -1;
+	}
+
+	/* TODO Each event file descriptor is overwritten by interrupt event
+	 * file descriptor. That descriptor is added to epoll observed list.
+	 * It ensures that callback function assigned to that descriptor will
+	 * invoked when any FPGA queue issues interrupt.
+	 */
+	for (i = 0; i < FPGA_NUM_INTR_VEC; ++i)
+		dev->intr_handle->efds[i] = dev->intr_handle->fd;
+
+	if (!dev->intr_handle->intr_vec) {
+		dev->intr_handle->intr_vec = rte_zmalloc("intr_vec",
+				dev->data->num_queues * sizeof(int), 0);
+		if (!dev->intr_handle->intr_vec) {
+			rte_bbdev_log(ERR, "Failed to allocate %u vectors",
+					dev->data->num_queues);
+			return -ENOMEM;
+		}
+	}
+
+	ret = rte_intr_enable(dev->intr_handle);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't enable interrupts for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	ret = rte_intr_callback_register(dev->intr_handle,
+			fpga_dev_interrupt_handler, dev);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't register interrupt callback for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct rte_bbdev_ops fpga_ops = {
+	.setup_queues = fpga_setup_queues,
+	.intr_enable = fpga_intr_enable,
+	.close = fpga_dev_close,
+	.info_get = fpga_dev_info_get,
+	.queue_setup = fpga_queue_setup,
+	.queue_stop = fpga_queue_stop,
+	.queue_start = fpga_queue_start,
+	.queue_release = fpga_queue_release,
+	.queue_intr_enable = fpga_queue_intr_enable,
+	.queue_intr_disable = fpga_queue_intr_disable
+};
+
+static inline void
+fpga_dma_enqueue(struct fpga_queue *q, uint16_t num_desc,
+		struct rte_bbdev_stats *queue_stats)
+{
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = 0;
+	queue_stats->acc_offload_cycles = 0;
+#else
+	RTE_SET_USED(queue_stats);
+#endif
+
+	/* Update tail and shadow_tail register */
+	q->tail = (q->tail + num_desc) & q->sw_ring_wrap_mask;
+
+	rte_wmb();
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	/* Start time measurement for enqueue function offload. */
+	start_time = rte_rdtsc_precise();
+#endif
+	mmio_write_16(q->shadow_tail_addr, q->tail);
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	rte_wmb();
+	queue_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+}
+
+/* Calculates number of CBs in processed encoder TB based on 'r' and input
+ * length.
+ */
+static inline uint8_t
+get_num_cbs_in_op_enc(struct rte_bbdev_op_turbo_enc *turbo_enc)
+{
+	uint8_t c, c_neg, r, crc24_bits = 0;
+	uint16_t k, k_neg, k_pos;
+	uint8_t cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_enc->input.length;
+	r = turbo_enc->tb_params.r;
+	c = turbo_enc->tb_params.c;
+	c_neg = turbo_enc->tb_params.c_neg;
+	k_neg = turbo_enc->tb_params.k_neg;
+	k_pos = turbo_enc->tb_params.k_pos;
+	crc24_bits = 24;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		length -= (k - crc24_bits) >> 3;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Calculates number of CBs in processed decoder TB based on 'r' and input
+ * length.
+ */
+static inline uint16_t
+get_num_cbs_in_op_dec(struct rte_bbdev_op_turbo_dec *turbo_dec)
+{
+	uint8_t c, c_neg, r = 0;
+	uint16_t kw, k, k_neg, k_pos, cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_dec->input.length;
+	r = turbo_dec->tb_params.r;
+	c = turbo_dec->tb_params.c;
+	c_neg = turbo_dec->tb_params.c_neg;
+	k_neg = turbo_dec->tb_params.k_neg;
+	k_pos = turbo_dec->tb_params.k_pos;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+		length -= kw;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Read flag value 0/1/ from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
+/* Print an error if a descriptor error has occurred.
+ *  Return 0 on success, 1 on failure
+ */
+static inline int
+check_desc_error(uint32_t error_code) {
+	switch (error_code) {
+	case DESC_ERR_NO_ERR:
+		return 0;
+	case DESC_ERR_K_OUT_OF_RANGE:
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144)");
+		break;
+	case DESC_ERR_K_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range");
+		break;
+	case DESC_ERR_KPAI_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only");
+		break;
+	case DESC_ERR_DESC_OFFSET_ERR:
+		rte_bbdev_log(ERR, "Queue offset does not meet the expectation in the FPGA");
+		break;
+	case (DESC_ERR_K_OUT_OF_RANGE | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144) and queue offset error");
+		break;
+	case (DESC_ERR_K_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range and queue offset error");
+		break;
+	case (DESC_ERR_KPAI_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only and queue offset error");
+		break;
+	case DESC_ERR_DESC_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for descriptor read");
+		break;
+	case DESC_ERR_DESC_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Descriptor read time-out");
+		break;
+	case DESC_ERR_DESC_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Descriptor read TLP poisoned");
+		break;
+	case DESC_ERR_CB_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for code block");
+		break;
+	case DESC_ERR_CB_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Code block read time-out");
+		break;
+	case DESC_ERR_CB_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Code block read TLP poisoned");
+		break;
+	default:
+		rte_bbdev_log(ERR, "Descriptor error unknown error code %u",
+				error_code);
+		break;
+	}
+	return 1;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param k
+ *   K value (length of input in bits).
+ * @param e
+ *   E value (length of output in bits).
+ * @param ncb
+ *   Ncb value (size of the soft buffer).
+ * @param out_length
+ *   Length of output buffer
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_te_fill(struct rte_bbdev_enc_op *op,
+		struct fpga_dma_enc_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t k, uint16_t e, uint16_t ncb,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+
+{
+	/* reset */
+	desc->done = 0;
+	desc->crc_en = check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_CRC_24B_ATTACH);
+	desc->bypass_rm = !check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_RATE_MATCH);
+	desc->k = k;
+	desc->e = e;
+	desc->ncb = ncb;
+	desc->rv = op->turbo_enc.rv_index;
+	desc->offset = desc_offset;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param in_length
+ *   Length of an input.
+ * @param k
+ *   K value (length of an output in bits).
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_td_fill(struct rte_bbdev_dec_op *op,
+		struct fpga_dma_dec_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t in_length, uint16_t k,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+{
+	/* reset */
+	desc->done = 0;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+	desc->in_len = in_length;
+	desc->k = k;
+	desc->crc_type = !check_bit(op->turbo_dec.op_flags,
+			RTE_BBDEV_TURBO_CRC_TYPE_24B);
+	if ((op->turbo_dec.code_block_mode == 0)
+		&& !check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		desc->drop_crc = 1;
+	desc->max_iter = op->turbo_dec.iter_max * 2;
+	desc->offset = desc_offset;
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo encoder parameters */
+static int
+validate_enc_op(struct rte_bbdev_enc_op *op)
+{
+	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
+	uint16_t kw, kw_neg, kw_pos;
+
+	if (turbo_enc->input.length >
+			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return -1;
+	}
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_enc->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_enc->output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid output pointer");
+		return -1;
+	}
+	if (turbo_enc->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_enc->rv_index);
+		return -1;
+	}
+	if (turbo_enc->code_block_mode != 0 &&
+			turbo_enc->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_enc->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_enc->code_block_mode == 0) {
+		tb = &turbo_enc->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+				&& tb->r < tb->cab) {
+			rte_bbdev_log(ERR,
+					"ea (%u) is less than %u or it is not even",
+					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+				&& tb->c > tb->cab) {
+			rte_bbdev_log(ERR,
+					"eb (%u) is less than %u or it is not even",
+					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
+			rte_bbdev_log(ERR,
+					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
+					tb->ncb_neg, tb->k_neg, kw_neg);
+			return -1;
+		}
+
+		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
+			rte_bbdev_log(ERR,
+					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
+					tb->ncb_pos, tb->k_pos, kw_pos);
+			return -1;
+		}
+		if (tb->r > (tb->c - 1)) {
+			rte_bbdev_log(ERR,
+					"r (%u) is greater than c - 1 (%u)",
+					tb->r, tb->c - 1);
+			return -1;
+		}
+	} else {
+		cb = &turbo_enc->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+
+		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+			rte_bbdev_log(ERR,
+					"e (%u) is less than %u or it is not even",
+					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
+		if (cb->ncb < cb->k || cb->ncb > kw) {
+			rte_bbdev_log(ERR,
+					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
+					cb->ncb, cb->k, kw);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline char *
+mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
+{
+	if (unlikely(len > rte_pktmbuf_tailroom(m)))
+		return NULL;
+
+	char *tail = (char *)m->buf_addr + m->data_off + m->data_len;
+	m->data_len = (uint16_t)(m->data_len + len);
+	m_head->pkt_len  = (m_head->pkt_len + len);
+	return tail;
+}
+
+static inline int
+enqueue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	total_left = op->turbo_enc.input.length;
+	k = op->turbo_enc.cb_params.k;
+	e = op->turbo_enc.cb_params.e;
+	ncb = op->turbo_enc.cb_params.ncb;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		in_length = ((k - 24) >> 3);
+	else
+		in_length = k >> 3;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_RATE_MATCH))
+		out_length = (e + 7) >> 3;
+	else
+		out_length = (k >> 3) * 3 + 2;
+
+	mbuf_append(output, output, out_length);
+
+	/* Offset into the ring */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	/* Setup DMA Descriptor */
+	desc = q->ring_addr + ring_offset;
+
+	ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output, k, e,
+			ncb, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_enc.output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+			"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+static inline int
+enqueue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c, crc24_bits = 0;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t mbuf_total_left, in_length, out_length, in_offset, out_offset;
+	uint32_t seg_total_left;
+	uint16_t current_enqueued_cbs = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output_head = output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	mbuf_total_left = op->turbo_enc.input.length;
+
+	c = op->turbo_enc.tb_params.c;
+	r = op->turbo_enc.tb_params.r;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		crc24_bits = 24;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+
+		e = (r < op->turbo_enc.tb_params.cab) ?
+				op->turbo_enc.tb_params.ea :
+				op->turbo_enc.tb_params.eb;
+		k = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.k_neg :
+				op->turbo_enc.tb_params.k_pos;
+		ncb = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.ncb_neg :
+				op->turbo_enc.tb_params.ncb_pos;
+
+		in_length = ((k - crc24_bits) >> 3);
+
+		if (check_bit(op->turbo_enc.op_flags,
+			RTE_BBDEV_TURBO_RATE_MATCH))
+			out_length = (e + 7) >> 3;
+		else
+			out_length = (k >> 3) * 3 + 2;
+
+		mbuf_append(output_head, output, out_length);
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output,
+				k, e, ncb, in_offset, out_offset, ring_offset,
+				cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		rte_bbdev_log_debug("DMA request desc %p", desc);
+
+		/* Update lengths */
+		op->turbo_enc.output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo decoder parameters */
+static int
+validate_dec_op(struct rte_bbdev_dec_op *op)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_dec->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_dec->hard_output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid hard_output pointer");
+		return -1;
+	}
+	if (turbo_dec->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_dec->rv_index);
+		return -1;
+	}
+	if (turbo_dec->iter_min < 1) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is less than 1",
+				turbo_dec->iter_min);
+		return -1;
+	}
+	if (turbo_dec->iter_max <= 2) {
+		rte_bbdev_log(ERR,
+				"iter_max (%u) is less than or equal to 2",
+				turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->iter_min > turbo_dec->iter_max) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is greater than iter_max (%u)",
+				turbo_dec->iter_min, turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->code_block_mode != 0 &&
+			turbo_dec->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_dec->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_dec->code_block_mode == 0) {
+
+		if ((turbo_dec->op_flags &
+			RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+			!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+			rte_bbdev_log(ERR,
+				"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP should accompany RTE_BBDEV_TURBO_CRC_TYPE_24B");
+			return -1;
+		}
+
+		tb = &turbo_dec->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c > tb->c_neg) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+	} else {
+
+		if (turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) {
+			rte_bbdev_log(ERR,
+					"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP is invalid in CB-mode");
+			return -1;
+		}
+
+		cb = &turbo_dec->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline int
+enqueue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, kw, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output = op->turbo_dec.hard_output.data;
+	total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	k = op->turbo_dec.cb_params.k;
+	kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+	in_length = kw;
+	out_length = k >> 3;
+
+	mbuf_append(output, output, out_length);
+
+	/* Setup DMA Descriptor */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	desc = q->ring_addr + ring_offset;
+	ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+			in_length, k, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+#endif
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_dec.hard_output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+
+static inline int
+enqueue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c;
+	uint16_t k, kw, in_length, out_length, ring_offset;
+	uint32_t mbuf_total_left, seg_total_left, in_offset, out_offset;
+	uint16_t current_enqueued_cbs = 0;
+	uint16_t crc24_overlap = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output_head = output = op->turbo_dec.hard_output.data;
+	mbuf_total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	if (!check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		crc24_overlap = 24;
+
+	c = op->turbo_dec.tb_params.c;
+	r = op->turbo_dec.tb_params.r;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+		k = (r < op->turbo_dec.tb_params.c_neg) ?
+				op->turbo_dec.tb_params.k_neg :
+				op->turbo_dec.tb_params.k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+
+		in_length = kw;
+		out_length = (k - crc24_overlap) >> 3;
+
+		mbuf_append(output_head, output, out_length);
+
+		if (seg_total_left < in_length) {
+			rte_bbdev_log(ERR,
+					"Partial CB found in a TB. FPGA Driver doesn't support scatter-gather operations!");
+			return -1;
+		}
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+				in_length, k, in_offset, out_offset,
+				ring_offset, cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		/* Update lengths */
+		ret = rte_pktmbuf_trim(op->turbo_dec.hard_output.data,
+				(crc24_overlap >> 3));
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		if (ret < 0) {
+			rte_bbdev_log(ERR,
+					"The length to remove is greater than the length of the last segment");
+			return -EINVAL;
+		}
+#endif
+		op->turbo_dec.hard_output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+static uint16_t
+fpga_enqueue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_enc.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_enc(&ops[i]->turbo_enc);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_enc_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_enc_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing enc ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->enc_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static uint16_t
+fpga_enqueue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_dec.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_dec(&ops[i]->turbo_dec);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_dec_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_dec_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing dec ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->dec_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static inline int
+dequeue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+
+	/* Set current desc */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/*check if done */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+	rte_bbdev_log_debug("DMA response desc %p", desc);
+
+	*op = desc->enc_req.op_addr;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status = desc_error << RTE_BBDEV_DATA_ERROR;
+
+	return 1;
+}
+
+static inline int
+dequeue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx;
+	int desc_error = 0;
+	int status = 0;
+
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->enc_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->enc_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |=  desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->enc_req.op_addr;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static inline int
+dequeue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+
+#endif
+
+	*op = desc->dec_req.op_addr;
+	/* FPGA reports in half-iterations, from 0 to 31. get ceiling */
+	(*op)->turbo_dec.iter_count = (desc->dec_req.iter + 2) >> 1;
+	/* crc_pass = 0 when decoder fails */
+	(*op)->status = !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status |= desc_error << RTE_BBDEV_DATA_ERROR;
+	return 1;
+}
+
+static inline int
+dequeue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx, iter_count = 0;
+	int status = 0;
+	int  desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->dec_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->dec_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* get max iter_count for all CBs in op */
+		iter_count = RTE_MAX(iter_count, (uint8_t) desc->dec_req.iter);
+		/* crc_pass = 0 when decoder fails, one fails all */
+		status |= !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |= desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->dec_req.op_addr;
+
+	/* FPGA reports in half-iterations, get ceiling */
+	(*op)->turbo_dec.iter_count = (iter_count + 2) >> 1;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static uint16_t
+fpga_dequeue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_enc_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->enc_req.op_addr;
+		if (op->turbo_enc.code_block_mode == 0)
+			ret = dequeue_enc_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_enc_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing enc ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+static uint16_t
+fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_dec_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->dec_req.op_addr;
+		if (op->turbo_dec.code_block_mode == 0)
+			ret = dequeue_dec_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_dec_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing dec ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+/* Initialization Function */
+static void
+fpga_lte_fec_init(struct rte_bbdev *dev)
+{
+	struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+
+	dev->dev_ops = &fpga_ops;
+	dev->enqueue_enc_ops = fpga_enqueue_enc;
+	dev->enqueue_dec_ops = fpga_enqueue_dec;
+	dev->dequeue_enc_ops = fpga_dequeue_enc;
+	dev->dequeue_dec_ops = fpga_dequeue_dec;
+
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device =
+			!strcmp(dev->device->driver->name,
+					RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME));
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base =
+			pci_dev->mem_resource[0].addr;
+
+	rte_bbdev_log_debug(
+			"Init device %s [%s] @ virtaddr %p phyaddr %#"PRIx64,
+			dev->device->driver->name, dev->data->name,
+			(void *)pci_dev->mem_resource[0].addr,
+			pci_dev->mem_resource[0].phys_addr);
+}
+
+static int
+fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev = NULL;
+	char dev_name[RTE_BBDEV_NAME_MAX_LEN];
+
+	if (pci_dev == NULL) {
+		rte_bbdev_log(ERR, "NULL PCI device");
+		return -EINVAL;
+	}
+
+	rte_pci_device_name(&pci_dev->addr, dev_name, sizeof(dev_name));
+
+	/* Allocate memory to be used privately by drivers */
+	bbdev = rte_bbdev_allocate(pci_dev->device.name);
+	if (bbdev == NULL)
+		return -ENODEV;
+
+	/* allocate device private memory */
+	bbdev->data->dev_private = rte_zmalloc_socket(dev_name,
+			sizeof(struct fpga_lte_fec_device), RTE_CACHE_LINE_SIZE,
+			pci_dev->device.numa_node);
+
+	if (bbdev->data->dev_private == NULL) {
+		rte_bbdev_log(CRIT,
+				"Allocate of %zu bytes for device \"%s\" failed",
+				sizeof(struct fpga_lte_fec_device), dev_name);
+				rte_bbdev_release(bbdev);
+			return -ENOMEM;
+	}
+
+	/* Fill HW specific part of device structure */
+	bbdev->device = &pci_dev->device;
+	bbdev->intr_handle = &pci_dev->intr_handle;
+	bbdev->data->socket_id = pci_dev->device.numa_node;
+
+	/* Invoke FEC FPGA device initialization function */
+	fpga_lte_fec_init(bbdev);
+
+	rte_bbdev_log_debug("bbdev id = %u [%s]",
+			bbdev->data->dev_id, dev_name);
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+	uint32_t version_id = fpga_reg_read_32(d->mmio_base,
+			FPGA_LTE_FEC_VERSION_ID);
+	rte_bbdev_log(INFO, "FEC FPGA RTL v%u.%u",
+		((uint16_t)(version_id >> 16)), ((uint16_t)version_id));
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (!strcmp(bbdev->device->driver->name,
+			RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)))
+		print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+static int
+fpga_lte_fec_remove(struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev;
+	int ret;
+	uint8_t dev_id;
+
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* Find device */
+	bbdev = rte_bbdev_get_named_dev(pci_dev->device.name);
+	if (bbdev == NULL) {
+		rte_bbdev_log(CRIT,
+				"Couldn't find HW dev \"%s\" to uninitialise it",
+				pci_dev->device.name);
+		return -ENODEV;
+	}
+	dev_id = bbdev->data->dev_id;
+
+	/* free device private memory before close */
+	rte_free(bbdev->data->dev_private);
+
+	/* Close device */
+	ret = rte_bbdev_close(dev_id);
+	if (ret < 0)
+		rte_bbdev_log(ERR,
+				"Device %i failed to close during uninit: %i",
+				dev_id, ret);
+
+	/* release bbdev from library */
+	ret = rte_bbdev_release(bbdev);
+	if (ret)
+		rte_bbdev_log(ERR, "Device %i failed to uninit: %i", dev_id,
+				ret);
+
+	rte_bbdev_log_debug("Destroyed bbdev = %u", dev_id);
+
+	return 0;
+}
+
+static inline void
+set_default_fpga_conf(struct fpga_lte_fec_conf *def_conf)
+{
+	/* clear default configuration before initialization */
+	memset(def_conf, 0, sizeof(struct fpga_lte_fec_conf));
+	/* Set pf mode to true */
+	def_conf->pf_mode_en = true;
+
+	/* Set ratio between UL and DL to 1:1 (unit of weight is 3 CBs) */
+	def_conf->ul_bandwidth = 3;
+	def_conf->dl_bandwidth = 3;
+
+	/* Set Load Balance Factor to 64 */
+	def_conf->dl_load_balance = 64;
+	def_conf->ul_load_balance = 64;
+}
+
+/* Initial configuration of FPGA LTE FEC device */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf)
+{
+	uint32_t payload_32, address;
+	uint16_t payload_16;
+	uint8_t payload_8;
+	uint16_t q_id, vf_id, total_q_id, total_ul_q_id, total_dl_q_id;
+	struct rte_bbdev *bbdev = rte_bbdev_get_named_dev(dev_name);
+	struct fpga_lte_fec_conf def_conf;
+
+	if (bbdev == NULL) {
+		rte_bbdev_log(ERR,
+				"Invalid dev_name (%s), or device is not yet initialised",
+				dev_name);
+		return -ENODEV;
+	}
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+
+	if (conf == NULL) {
+		rte_bbdev_log(ERR,
+				"FPGA Configuration was not provided. Default configuration will be loaded.");
+		set_default_fpga_conf(&def_conf);
+		conf = &def_conf;
+	}
+
+	/*
+	 * Configure UL:DL ratio.
+	 * [7:0]: UL weight
+	 * [15:8]: DL weight
+	 */
+	payload_16 = (conf->dl_bandwidth << 8) | conf->ul_bandwidth;
+	address = FPGA_LTE_FEC_CONFIGURATION;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Clear all queues registers */
+	payload_32 = FPGA_INVALID_HW_QUEUE_ID;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+		fpga_reg_write_32(d->mmio_base, address, payload_32);
+	}
+
+	/*
+	 * If PF mode is enabled allocate all queues for PF only.
+	 *
+	 * For VF mode each VF can have different number of UL and DL queues.
+	 * Total number of queues to configure cannot exceed FPGA
+	 * capabilities - 64 queues - 32 queues for UL and 32 queues for DL.
+	 * Queues mapping is done according to configuration:
+	 *
+	 * UL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 0                |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_dl_queues_number[0] - 1 |   0   |
+	 * | conf->vf_dl_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_dl_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_dl_queues_number[7] - 1 |   7   |
+	 *
+	 * DL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 32               |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_ul_queues_number[0] - 1 |   0   |
+	 * | conf->vf_ul_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_ul_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_ul_queues_number[7] - 1 |   7   |
+	 *
+	 * Example of configuration:
+	 * conf->vf_ul_queues_number[0] = 4;  -> 4 UL queues for VF0
+	 * conf->vf_dl_queues_number[0] = 4;  -> 4 DL queues for VF0
+	 * conf->vf_ul_queues_number[1] = 2;  -> 2 UL queues for VF1
+	 * conf->vf_dl_queues_number[1] = 2;  -> 2 DL queues for VF1
+	 *
+	 * UL:
+	 * | Q_ID | VF_ID |
+	 * |   0  |   0   |
+	 * |   1  |   0   |
+	 * |   2  |   0   |
+	 * |   3  |   0   |
+	 * |   4  |   1   |
+	 * |   5  |   1   |
+	 *
+	 * DL:
+	 * | Q_ID | VF_ID |
+	 * |  32  |   0   |
+	 * |  33  |   0   |
+	 * |  34  |   0   |
+	 * |  35  |   0   |
+	 * |  36  |   1   |
+	 * |  37  |   1   |
+	 */
+	if (conf->pf_mode_en) {
+		payload_32 = 0x1;
+		for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+			address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+			fpga_reg_write_32(d->mmio_base, address, payload_32);
+		}
+	} else {
+		/* Calculate total number of UL and DL queues to configure */
+		total_ul_q_id = total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			total_ul_q_id += conf->vf_ul_queues_number[vf_id];
+			total_dl_q_id += conf->vf_dl_queues_number[vf_id];
+		}
+		total_q_id = total_dl_q_id + total_ul_q_id;
+		/*
+		 * Check if total number of queues to configure does not exceed
+		 * FPGA capabilities (64 queues - 32 UL and 32 DL queues)
+		 */
+		if ((total_ul_q_id > FPGA_NUM_UL_QUEUES) ||
+			(total_dl_q_id > FPGA_NUM_DL_QUEUES) ||
+			(total_q_id > FPGA_TOTAL_NUM_QUEUES)) {
+			rte_bbdev_log(ERR,
+					"FPGA Configuration failed. Too many queues to configure: UL_Q %u, DL_Q %u, FPGA_Q %u",
+					total_ul_q_id, total_dl_q_id,
+					FPGA_TOTAL_NUM_QUEUES);
+			return -EINVAL;
+		}
+		total_ul_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_ul_queues_number[vf_id];
+					++q_id, ++total_ul_q_id) {
+				address = (total_ul_q_id << 2) +
+						FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+		total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_dl_queues_number[vf_id];
+					++q_id, ++total_dl_q_id) {
+				address = ((total_dl_q_id + FPGA_NUM_UL_QUEUES)
+						<< 2) + FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+	}
+
+	/* Setting Load Balance Factor */
+	payload_16 = (conf->dl_load_balance << 8) | (conf->ul_load_balance);
+	address = FPGA_LTE_FEC_LOAD_BALANCE_FACTOR;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting length of ring descriptor entry */
+	payload_16 = FPGA_RING_DESC_ENTRY_LENGTH;
+	address = FPGA_LTE_FEC_RING_DESC_LEN;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting FLR timeout value */
+	payload_16 = conf->flr_time_out;
+	address = FPGA_LTE_FEC_FLR_TIME_OUT;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Queue PF/VF mapping table is ready */
+	payload_8 = 0x1;
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	fpga_reg_write_8(d->mmio_base, address, payload_8);
+
+	rte_bbdev_log_debug("PF FPGA LTE FEC configuration complete for %s",
+			dev_name);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+/* FPGA LTE FEC PCI PF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_pf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_PF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_pf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_pf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+/* FPGA LTE FEC PCI VF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_vf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_VF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_vf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_vf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_PF_DRIVER_NAME, fpga_lte_fec_pci_pf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_pf_map);
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_vf_map);
+
+RTE_INIT(fpga_lte_fec_init_log)
+{
+	fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec");
+	if (fpga_lte_fec_logtype >= 0)
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG);
+#else
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE);
+#endif
+}
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
new file mode 100644
index 0000000..2c6952e
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#ifndef _FPGA_LTE_FEC_H_
+#define _FPGA_LTE_FEC_H_
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/**
+ * @file fpga_lte_fec.h
+ *
+ * Interface for Intel(R) FGPA LTE FEC device configuration at the host level,
+ * directly accessible by the application.
+ * Configuration related to LTE Turbo coding functionality is done through
+ * librte_bbdev library.
+ *
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**< Number of Virtual Functions FGPA 4G FEC supports */
+#define FPGA_LTE_FEC_NUM_VFS 8
+
+/**
+ * Structure to pass FPGA 4G FEC configuration.
+ */
+struct fpga_lte_fec_conf {
+	/**< 1 if PF is used for dataplane, 0 for VFs */
+	bool pf_mode_en;
+	/**< Number of UL queues per VF */
+	uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< Number of DL queues per VF */
+	uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< UL bandwidth. Needed for schedule algorithm */
+	uint8_t ul_bandwidth;
+	/**< DL bandwidth. Needed for schedule algorithm */
+	uint8_t dl_bandwidth;
+	/**< UL Load Balance */
+	uint8_t ul_load_balance;
+	/**< DL Load Balance */
+	uint8_t dl_load_balance;
+	/**< FLR timeout value */
+	uint16_t flr_time_out;
+};
+
+/**
+ * Configure Intel(R) FPGA LTE FEC device
+ *
+ * @param dev_name
+ *   The name of the device. This is the short form of PCI BDF, e.g. 00:01.0.
+ *   It can also be retrieved for a bbdev device from the dev_name field in the
+ *   rte_bbdev_info structure returned by rte_bbdev_info_get().
+ * @param conf
+ *   Configuration to apply to FPGA 4G FEC.
+ *
+ * @return
+ *   Zero on success, negative value on failure.
+ */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FPGA_LTE_FEC_H_ */
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
new file mode 100644
index 0000000..1a99f8d
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
@@ -0,0 +1,3 @@
+DPDK_18.08 {
+    local: *;
+};
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 7c9b4b5..21d32a2 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -218,6 +218,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_NETVSC_PMD)     += -lrte_pmd_netvsc
 
 ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += -lrte_pmd_fpga_lte_fec
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 1/5] baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC N300 FPGA card
  2019-05-11  0:05 ` [dpdk-dev] [PATCH 1/5] baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC N300 FPGA card Nic Chautru
@ 2019-05-11  0:05   ` Nic Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:05 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

---
 config/common_base                                 |    6 +
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2671 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 mk/rte.app.mk                                      |    1 +
 9 files changed, 3104 insertions(+)
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map

diff --git a/config/common_base b/config/common_base
index 6b96e0e..ae52028 100644
--- a/config/common_base
+++ b/config/common_base
@@ -521,6 +521,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 # EXPERIMENTAL: API may change without prior notice
 #
 CONFIG_RTE_LIBRTE_BBDEV=y
+CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 
@@ -535,6 +536,11 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
 
 #
+# Compile PMD for Intel FPGA LTE FEC bbdev device
+#
+CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC=y
+
+#
 # Compile generic crypto device library
 #
 CONFIG_RTE_LIBRTE_CRYPTODEV=y
diff --git a/doc/guides/bbdevs/fpga_lte_fec.rst b/doc/guides/bbdevs/fpga_lte_fec.rst
new file mode 100644
index 0000000..066907d
--- /dev/null
+++ b/doc/guides/bbdevs/fpga_lte_fec.rst
@@ -0,0 +1,318 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation
+
+Intel(R) FPGA LTE FEC Poll Mode Driver
+======================================
+
+The BBDEV FPGA LTE FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
+Turbo Encode / Decode LTE wireless acceleration function, using Intel's PCI-e and FPGA
+based Vista Creek device.
+
+Features
+--------
+
+FPGA LTE FEC PMD supports the following features:
+
+- Turbo Encode in the DL with total throughput of 4.5 Gbits/s
+- Turbo Decode in the UL with total throughput of 1.5 Gbits/s assuming 8 decoder iterations
+- 8 VFs per PF (physical device)
+- Maximum of 32 UL queues per VF
+- Maximum of 32 DL queues per VF
+- PCIe Gen-3 x8 Interface
+- MSI-X
+- SR-IOV
+
+
+FPGA LTE FEC PMD supports the following BBDEV capabilities:
+
+* For the turbo encode operation:
+   - ``RTE_BBDEV_TURBO_CRC_24B_ATTACH`` :  set to attach CRC24B to CB(s)
+   - ``RTE_BBDEV_TURBO_RATE_MATCH`` :  if set then do not do Rate Match bypass
+   - ``RTE_BBDEV_TURBO_ENC_INTERRUPTS`` :  set for encoder dequeue interrupts
+
+
+* For the turbo decode operation:
+   - ``RTE_BBDEV_TURBO_CRC_TYPE_24B`` :  check CRC24B from CB(s)
+   - ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE`` :  perform subblock de-interleave
+   - ``RTE_BBDEV_TURBO_DEC_INTERRUPTS`` :  set for decoder dequeue interrupts
+   - ``RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN`` :  set if negative LLR encoder i/p is supported
+   - ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP`` :  keep CRC24B bits appended while decoding
+
+
+Limitations
+-----------
+
+FPGA LTE FEC does not support the following:
+
+- Scatter-Gather function
+
+
+Installation
+--------------
+
+Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
+default set of bbdev compile flags may be found in config/common_base, where for example
+the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
+set. It is assumed DPDK has been compiled for an icc 64-bit target using:
+
+.. code-block:: console
+
+  make install T=x86_64-native-linuxapp-icc
+
+
+DPDK requires hugepages to be configured as detailed in section 2 of the DPDK manual.
+The bbdev test application has been tested with a configuration 40 x 1GB hugepages. The
+hugepage configuration of a server may be examined using:
+
+.. code-block:: console
+
+   grep Huge* /proc/meminfo
+
+
+Initialization
+--------------
+
+When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
+
+.. code-block:: console
+
+  sudo lspci -vd1172:5052
+
+The physical and virtual functions are compatible with Linux UIO drivers:
+``vfio`` and ``igb_uio``. However, in order to work the FPGA LTE FEC device firstly needs
+to be bound to one of these linux drivers through DPDK.
+
+
+Bind PF UIO driver(s)
+~~~~~~~~~~~~~~~~~~~~~
+
+Install the DPDK igb_uio driver, bind it with the PF PCI device ID and use
+``lspci`` to confirm the PF device is under use by ``igb_uio`` DPDK UIO driver.
+
+The igb_uio driver may be bound to the PF PCI device using one of three methods:
+
+
+1. PCI functions (physical or virtual, depending on the use case) can be bound to
+the UIO driver by repeating this command for every function.
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  insmod ./build/kmod/igb_uio.ko
+  echo "1172 5052" > /sys/bus/pci/drivers/igb_uio/new_id
+  lspci -vd1172:
+
+
+2. Another way to bind PF with DPDK UIO driver is by using the ``dpdk-devbind.py`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-devbind.py -b igb_uio 0000:06:00.0
+
+where the PCI device ID (example: 0000:06:00.0) is obtained using lspci -vd1172:
+
+
+3. A third way to bind is to use ``dpdk-setup.sh`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-setup.sh
+
+  select 'Bind Ethernet/Crypto/Baseband device to IGB UIO module'
+  or
+  select 'Bind Ethernet/Crypto/Baseband device to VFIO module' depending on driver required
+  enter PCI device ID
+  select 'Display current Ethernet/Crypto/Baseband device settings' to confirm binding
+
+
+In the same way the FPGA LTE FEC PF can be bound with vfio, but vfio driver does not
+support SR-IOV configuration right out of the box, so it will need to be patched.
+
+
+Enable Virtual Functions
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+Now, it should be visible in the printouts that PCI PF is under igb_uio control
+"``Kernel driver in use: igb_uio``"
+
+To show the number of available VFs on the device, read ``sriov_totalvfs`` file..
+
+.. code-block:: console
+
+  cat /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_totalvfs
+
+  where 0000\:<b>\:<d>.<f> is the PCI device ID
+
+
+To enable VFs via igb_uio, echo the number of virtual functions intended to
+enable to ``max_vfs`` file..
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/max_vfs
+
+
+Afterwards, all VFs must be bound to appropriate UIO drivers as required, same
+way it was done with the physical function previously.
+
+Enabling SR-IOV via vfio driver is pretty much the same, except that the file
+name is different:
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_numvfs
+
+
+Configure the VFs through PF
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The PCI virtual functions must be configured before working or getting assigned
+to VMs/Containers. The configuration involves allocating the number of hardware
+queues, priorities, load balance, bandwidth and other settings necessary for the
+device to perform FEC functions.
+
+This configuration needs to be executed at least once after reboot or PCI FLR and can
+be achieved by using the function ``fpga_lte_fec_configure()``, which sets up the
+parameters defined in ``fpga_lte_fec_conf`` structure:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf {
+      bool pf_mode_en;
+      uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t ul_bandwidth;
+      uint8_t dl_bandwidth;
+      uint8_t ul_load_balance;
+      uint8_t dl_load_balance;
+      uint16_t flr_time_out;
+  };
+
+- ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
+  VFs are mutually exclusive and cannot run simultaneously.
+  Set to 1 for PF mode enabled.
+  If PF mode is enabled all queues available in the device are assigned
+  exclusively to PF and 0 queues given to VFs.
+
+- ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
+
+- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
+  allocates different bandwidth to UL and DL. The weight is configured by this
+  setting. The unit of weight is 3 code blocks. For example, if the code block
+  cbps (code block per second) ratio between UL and DL is 12:1, then the
+  configuration value should be set to 36:3. The schedule algorithm is based
+  on code block regardless the length of each block.
+
+- ``*l_load_balance``: hardware queues are load-balanced in a round-robin
+  fashion. Queues get filled first-in first-out until they reach a pre-defined
+  watermark level, if exceeded, they won't get assigned new code blocks..
+  This watermark is defined by this setting.
+
+  If all hardware queues exceeds the watermark, no code blocks will be
+  streamed in from UL/DL code block FIFO.
+
+- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
+  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
+  the FLR time out then set this setting to 0x262=610.
+
+
+An example configuration code calling the function ``fpga_lte_fec_configure()`` is shown
+below:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf conf;
+  unsigned int i;
+
+  memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+  conf.pf_mode_en = 1;
+
+  for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+      conf.vf_ul_queues_number[i] = 4;
+      conf.vf_dl_queues_number[i] = 4;
+  }
+  conf.ul_bandwidth = 12;
+  conf.dl_bandwidth = 5;
+  conf.dl_load_balance = 64;
+  conf.ul_load_balance = 64;
+
+  /* setup FPGA PF */
+  ret = fpga_lte_fec_configure(info->dev_name, &conf);
+  TEST_ASSERT_SUCCESS(ret,
+      "Failed to configure 4G FPGA PF for bbdev %s",
+      info->dev_name);
+
+
+Test Application
+----------------
+
+BBDEV provides a test application, ``test-bbdev.py`` and range of test data for testing
+the functionality of FPGA LTE FEC turbo encode and turbo decode, depending on the device's
+capabilities. The test application is located under app->test-bbdev folder and has the
+following options:
+
+.. code-block:: console
+
+  "-p", "--testapp-path": specifies path to the bbdev test app.
+  "-e", "--eal-params"	: EAL arguments which are passed to the test app.
+  "-t", "--timeout"	: Timeout in seconds (default=300).
+  "-c", "--test-cases"	: Defines test cases to run. Run all if not specified.
+  "-v", "--test-vector"	: Test vector path (default=dpdk_path+/app/test-bbdev/test_vectors/bbdev_null.data).
+  "-n", "--num-ops"	: Number of operations to process on device (default=32).
+  "-b", "--burst-size"	: Operations enqueue/dequeue burst size (default=32).
+  "-l", "--num-lcores"	: Number of lcores to run (default=16).
+  "-i", "--init-device" : Initialise PF device with default values.
+
+
+To execute the test application tool using simple turbo decode or turbo encode data,
+type one of the following:
+
+.. code-block:: console
+
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_dec_default.data
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_enc_default.data
+
+
+The test application ``test-bbdev.py``, supports the ability to configure the PF device with
+a default set of values, if the "-i" or "- -init-device" option is included. The default values
+are defined in test_bbdev_perf.c as:
+
+- VF_UL_QUEUE_VALUE 4
+- VF_DL_QUEUE_VALUE 4
+- UL_BANDWIDTH 3
+- DL_BANDWIDTH 3
+- UL_LOAD_BALANCE 128
+- DL_LOAD_BALANCE 128
+- FLR_TIMEOUT 610
+
+
+Test Vectors
+~~~~~~~~~~~~
+
+In addition to the simple turbo decoder and turbo encoder tests, bbdev also provides
+a range of additional tests under the test_vectors folder, which may be useful. The results
+of these tests will depend on the FPGA LTE FEC capabilities:
+
+* turbo decoder tests:
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
+
+
+* turbo encoder tests:
+   - ``turbo_enc_c1_k40_r0_e1190_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1194_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1196_rm.data``
+   - ``turbo_enc_c1_k40_r0_e272_rm.data``
+   - ``turbo_enc_c1_k6144_r0_e18444.data``
+   - ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+   - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
+   - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
+   - ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
+
diff --git a/doc/guides/bbdevs/index.rst b/doc/guides/bbdevs/index.rst
index 93276ed..005b95e 100644
--- a/doc/guides/bbdevs/index.rst
+++ b/doc/guides/bbdevs/index.rst
@@ -10,3 +10,4 @@ Baseband Device Drivers
 
     null
     turbo_sw
+    fpga_lte_fec
diff --git a/drivers/baseband/Makefile b/drivers/baseband/Makefile
index 4ec83b0..ceffc7d 100644
--- a/drivers/baseband/Makefile
+++ b/drivers/baseband/Makefile
@@ -10,5 +10,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL) += null
 DEPDIRS-null = $(core-libs)
 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += turbo_sw
 DEPDIRS-turbo_sw = $(core-libs)
+DIRS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec
+DEPDIRS-fpga_lte_fec = $(core-libs)
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/baseband/fpga_lte_fec/Makefile b/drivers/baseband/fpga_lte_fec/Makefile
new file mode 100644
index 0000000..aedc8f3
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/Makefile
@@ -0,0 +1,29 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_pmd_fpga_lte_fec.a
+
+# build flags
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_bbdev
+LDLIBS += -lrte_pci -lrte_bus_pci
+
+# versioning export map
+EXPORT_MAP := fpga_lte_fec_version.map
+
+# library version
+LIBABIVER := 1
+
+# library source files
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec.c
+
+# export include files
+SYMLINK-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC)-include += fpga_lte_fec.h
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
new file mode 100644
index 0000000..fe59b16
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -0,0 +1,2671 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#include <unistd.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_dev.h>
+#include <rte_malloc.h>
+#include <rte_mempool.h>
+#include <rte_errno.h>
+#include <rte_pci.h>
+#include <rte_bus_pci.h>
+#include <rte_byteorder.h>
+#ifdef RTE_BBDEV_OFFLOAD_COST
+#include <rte_cycles.h>
+#endif
+
+#include <rte_bbdev.h>
+#include <rte_bbdev_pmd.h>
+
+#include "fpga_lte_fec.h"
+
+/* Turbo SW PMD logging ID */
+static int fpga_lte_fec_logtype;
+
+/* Helper macro for logging */
+#define rte_bbdev_log(level, fmt, ...) \
+	rte_log(RTE_LOG_ ## level, fpga_lte_fec_logtype, fmt "\n", \
+		##__VA_ARGS__)
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+#define rte_bbdev_log_debug(fmt, ...) \
+		rte_bbdev_log(DEBUG, "fpga_lte_fec: " fmt, \
+		##__VA_ARGS__)
+#else
+#define rte_bbdev_log_debug(fmt, ...)
+#endif
+
+/* FPGA LTE FEC driver names */
+#define FPGA_LTE_FEC_PF_DRIVER_NAME intel_fpga_lte_fec_pf
+#define FPGA_LTE_FEC_VF_DRIVER_NAME intel_fpga_lte_fec_vf
+
+/* FPGA LTE FEC PCI vendor & device IDs */
+#define FPGA_LTE_FEC_VENDOR_ID (0x1172)
+#define FPGA_LTE_FEC_PF_DEVICE_ID (0x5052)
+#define FPGA_LTE_FEC_VF_DEVICE_ID (0x5050)
+
+/* Align DMA descriptors to 256 bytes - cache-aligned */
+#define FPGA_RING_DESC_ENTRY_LENGTH (8)
+/* Ring size is in 256 bits (32 bytes) units */
+#define FPGA_RING_DESC_LEN_UNIT_BYTES (32)
+/* Maximum size of queue */
+#define FPGA_RING_MAX_SIZE (1024)
+#define FPGA_FLR_TIMEOUT_UNIT (16.384)
+
+#define FPGA_NUM_UL_QUEUES (32)
+#define FPGA_NUM_DL_QUEUES (32)
+#define FPGA_TOTAL_NUM_QUEUES (FPGA_NUM_UL_QUEUES + FPGA_NUM_DL_QUEUES)
+#define FPGA_NUM_INTR_VEC (FPGA_TOTAL_NUM_QUEUES - RTE_INTR_VEC_RXTX_OFFSET)
+
+#define FPGA_INVALID_HW_QUEUE_ID (0xFFFFFFFF)
+
+#define FPGA_QUEUE_FLUSH_TIMEOUT_US (1000)
+#define FPGA_TIMEOUT_CHECK_INTERVAL (5)
+
+/* FPGA LTE FEC Register mapping on BAR0 */
+enum {
+	FPGA_LTE_FEC_VERSION_ID = 0x00000000, /* len: 4B */
+	FPGA_LTE_FEC_CONFIGURATION = 0x00000004, /* len: 2B */
+	FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE = 0x00000008, /* len: 1B */
+	FPGA_LTE_FEC_LOAD_BALANCE_FACTOR = 0x0000000a, /* len: 2B */
+	FPGA_LTE_FEC_RING_DESC_LEN = 0x0000000c, /* len: 2B */
+	FPGA_LTE_FEC_FLR_TIME_OUT = 0x0000000e, /* len: 2B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW = 0x00000018, /* len: 4B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI = 0x0000001c, /* len: 4B */
+	FPGA_LTE_FEC_VF0_DEBUG = 0x00000020, /* len: 4B */
+	FPGA_LTE_FEC_VF1_DEBUG = 0x00000024, /* len: 4B */
+	FPGA_LTE_FEC_VF2_DEBUG = 0x00000028, /* len: 4B */
+	FPGA_LTE_FEC_VF3_DEBUG = 0x0000002c, /* len: 4B */
+	FPGA_LTE_FEC_VF4_DEBUG = 0x00000030, /* len: 4B */
+	FPGA_LTE_FEC_VF5_DEBUG = 0x00000034, /* len: 4B */
+	FPGA_LTE_FEC_VF6_DEBUG = 0x00000038, /* len: 4B */
+	FPGA_LTE_FEC_VF7_DEBUG = 0x0000003c, /* len: 4B */
+	FPGA_LTE_FEC_QUEUE_MAP = 0x00000040, /* len: 256B */
+	FPGA_LTE_FEC_RING_CTRL_REGS = 0x00000200  /* len: 2048B */
+};
+
+/* FPGA LTE FEC Ring Control Registers */
+enum {
+	FPGA_LTE_FEC_RING_HEAD_ADDR = 0x00000008,
+	FPGA_LTE_FEC_RING_SIZE = 0x00000010,
+	FPGA_LTE_FEC_RING_MISC = 0x00000014,
+	FPGA_LTE_FEC_RING_ENABLE = 0x00000015,
+	FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN = 0x00000016,
+	FPGA_LTE_FEC_RING_SHADOW_TAIL = 0x00000018,
+	FPGA_LTE_FEC_RING_HEAD_POINT = 0x0000001C
+};
+
+/* FPGA LTE FEC DESCRIPTOR ERROR */
+enum {
+	DESC_ERR_NO_ERR = 0x0,
+	DESC_ERR_K_OUT_OF_RANGE = 0x1,
+	DESC_ERR_K_NOT_NORMAL = 0x2,
+	DESC_ERR_KPAI_NOT_NORMAL = 0x3,
+	DESC_ERR_DESC_OFFSET_ERR = 0x4,
+	DESC_ERR_DESC_READ_FAIL = 0x8,
+	DESC_ERR_DESC_READ_TIMEOUT = 0x9,
+	DESC_ERR_DESC_READ_TLP_POISONED = 0xA,
+	DESC_ERR_CB_READ_FAIL = 0xC,
+	DESC_ERR_CB_READ_TIMEOUT = 0xD,
+	DESC_ERR_CB_READ_TLP_POISONED = 0xE
+};
+
+/* FPGA LTE FEC DMA Encoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_enc_desc {
+	uint32_t done:1,
+		rsrvd0:11,
+		error:4,
+		rsrvd1:16;
+	uint32_t ncb:16,
+		rsrvd2:14,
+		rv:2;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		crc_en:1,
+		rsrvd3:13,
+		offset:10,
+		rsrvd4:6;
+	uint16_t e;
+	uint16_t k;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint64_t cbs_in_op;
+		};
+
+		uint8_t sw_ctxt[FPGA_RING_DESC_LEN_UNIT_BYTES *
+					(FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE FEC DMA Decoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_dec_desc {
+	uint32_t done:1,
+		iter:5,
+		rsrvd0:2,
+		crc_pass:1,
+		rsrvd1:3,
+		error:4,
+		crc_type:1,
+		rsrvd2:7,
+		max_iter:5,
+		rsrvd3:3;
+	uint32_t rsrvd4;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		drop_crc:1,
+		rsrvd5:13,
+		offset:10,
+		rsrvd6:6;
+	uint16_t k;
+	uint16_t in_len;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint8_t cbs_in_op;
+		};
+
+		uint32_t sw_ctxt[8 * (FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE DMA Descriptor */
+union fpga_dma_desc {
+	struct fpga_dma_enc_desc enc_req;
+	struct fpga_dma_dec_desc dec_req;
+};
+
+/* FPGA LTE FEC Ring Control Register */
+struct __attribute__((__packed__)) fpga_ring_ctrl_reg {
+	uint64_t ring_base_addr;
+	uint64_t ring_head_addr;
+	uint16_t ring_size:11;
+	uint16_t rsrvd0;
+	union { /* Miscellaneous register */
+		uint8_t misc;
+		uint8_t max_ul_dec:5,
+			max_ul_dec_en:1,
+			rsrvd1:2;
+	};
+	uint8_t enable;
+	uint8_t flush_queue_en;
+	uint8_t rsrvd2;
+	uint16_t shadow_tail;
+	uint16_t rsrvd3;
+	uint16_t head_point;
+	uint16_t rsrvd4;
+
+};
+
+/* Private data structure for each FPGA FEC device */
+struct fpga_lte_fec_device {
+	/** Base address of MMIO registers (BAR0) */
+	void *mmio_base;
+	/** Base address of memory for sw rings */
+	void *sw_rings;
+	/** Physical address of sw_rings */
+	rte_iova_t sw_rings_phys;
+	/** Number of bytes available for each queue in device. */
+	uint32_t sw_ring_size;
+	/** Max number of entries available for each queue in device */
+	uint32_t sw_ring_max_depth;
+	/** Base address of response tail pointer buffer */
+	uint32_t *tail_ptrs;
+	/** Physical address of tail pointers */
+	rte_iova_t tail_ptr_phys;
+	/** Queues flush completion flag */
+	uint64_t *flush_queue_status;
+	/* Bitmap capturing which Queues are bound to the PF/VF */
+	uint64_t q_bound_bit_map;
+	/* Bitmap capturing which Queues have already been assigned */
+	uint64_t q_assigned_bit_map;
+	/** True if this is a PF FPGA FEC device */
+	bool pf_device;
+};
+
+/* Structure associated with each queue. */
+struct __rte_cache_aligned fpga_queue {
+	struct fpga_ring_ctrl_reg ring_ctrl_reg;  /* Ring Control Register */
+	union fpga_dma_desc *ring_addr;  /* Virtual address of software ring */
+	uint64_t *ring_head_addr;  /* Virtual address of completion_head */
+	uint64_t shadow_completion_head; /* Shadow completion head value */
+	uint16_t head_free_desc;  /* Ring head */
+	uint16_t tail;  /* Ring tail */
+	/* Mask used to wrap enqueued descriptors on the sw ring */
+	uint32_t sw_ring_wrap_mask;
+	uint32_t irq_enable;  /* Enable ops dequeue interrupts if set to 1 */
+	uint8_t q_idx;  /* Queue index */
+	struct fpga_lte_fec_device *d;
+	/* MMIO register of shadow_tail used to enqueue descriptors */
+	void *shadow_tail_addr;
+};
+
+/* Write to 16 bit MMIO register address */
+static inline void
+mmio_write_16(void *addr, uint16_t value)
+{
+	*((volatile uint16_t *)(addr)) = rte_cpu_to_le_16(value);
+}
+
+/* Write to 32 bit MMIO register address */
+static inline void
+mmio_write_32(void *addr, uint32_t value)
+{
+	*((volatile uint32_t *)(addr)) = rte_cpu_to_le_32(value);
+}
+
+/* Write to 64 bit MMIO register address */
+static inline void
+mmio_write_64(void *addr, uint64_t value)
+{
+	*((volatile uint64_t *)(addr)) = rte_cpu_to_le_64(value);
+}
+
+/* Write a 8 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_8(void *mmio_base, uint32_t offset, uint8_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	*((volatile uint8_t *)(reg_addr)) = payload;
+}
+
+/* Write a 16 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_16(void *mmio_base, uint32_t offset, uint16_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_16(reg_addr, payload);
+}
+
+/* Write a 32 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_32(void *mmio_base, uint32_t offset, uint32_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_32(reg_addr, payload);
+}
+
+/* Write a 64 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_64(void *mmio_base, uint32_t offset, uint64_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_64(reg_addr, payload);
+}
+
+/* Write a ring control register of a FPGA LTE FEC device */
+static inline void
+fpga_ring_reg_write(void *mmio_base, uint32_t offset,
+		struct fpga_ring_ctrl_reg payload)
+{
+	fpga_reg_write_64(mmio_base, offset, payload.ring_base_addr);
+	fpga_reg_write_64(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_ADDR,
+			payload.ring_head_addr);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SIZE,
+			payload.ring_size);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			payload.head_point);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN,
+			payload.flush_queue_en);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			payload.shadow_tail);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_MISC,
+			payload.misc);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload.enable);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint32_t
+fpga_reg_read_32(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint32_t ret = *((volatile uint32_t *)(reg_addr));
+	return rte_le_to_cpu_32(ret);
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Read a register of FPGA LTE FEC device */
+static uint8_t
+fpga_reg_read_8(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	return *((volatile uint8_t *)(reg_addr));
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint16_t
+fpga_reg_read_16(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint16_t ret = *((volatile uint16_t *)(reg_addr));
+	return rte_le_to_cpu_16(ret);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint64_t
+fpga_reg_read_64(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint64_t ret = *((volatile uint64_t *)(reg_addr));
+	return rte_le_to_cpu_64(ret);
+}
+
+/* Read Ring Control Register of FPGA LTE FEC device */
+static inline void
+print_ring_reg_debug_info(void *mmio_base, uint32_t offset)
+{
+	rte_bbdev_log_debug(
+		"FPGA MMIO base address @ %p | Ring Control Register @ offset = 0x%08"
+		PRIx32, mmio_base, offset);
+	rte_bbdev_log_debug(
+		"RING_BASE_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset));
+	rte_bbdev_log_debug(
+		"RING_HEAD_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_ADDR));
+	rte_bbdev_log_debug(
+		"RING_SIZE = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SIZE));
+	rte_bbdev_log_debug(
+		"RING_MISC = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_MISC));
+	rte_bbdev_log_debug(
+		"RING_ENABLE = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_ENABLE));
+	rte_bbdev_log_debug(
+		"RING_FLUSH_QUEUE_EN = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN));
+	rte_bbdev_log_debug(
+		"RING_SHADOW_TAIL = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SHADOW_TAIL));
+	rte_bbdev_log_debug(
+		"RING_HEAD_POINT = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_POINT));
+}
+
+/* Read Static Register of FPGA LTE FEC device */
+static inline void
+print_static_reg_debug_info(void *mmio_base)
+{
+	uint16_t config = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_CONFIGURATION);
+	uint8_t qmap_done = fpga_reg_read_8(mmio_base,
+			FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE);
+	uint16_t lb_factor = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_LOAD_BALANCE_FACTOR);
+	uint16_t ring_desc_len = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_RING_DESC_LEN);
+	uint16_t flr_time_out = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_FLR_TIME_OUT);
+
+	rte_bbdev_log_debug("UL.DL Weights = %u.%u",
+			((uint8_t)config), ((uint8_t)(config >> 8)));
+	rte_bbdev_log_debug("UL.DL Load Balance = %u.%u",
+			((uint8_t)lb_factor), ((uint8_t)(lb_factor >> 8)));
+	rte_bbdev_log_debug("Queue-PF/VF Mapping Table = %s",
+			(qmap_done > 0) ? "READY" : "NOT-READY");
+	rte_bbdev_log_debug("Ring Descriptor Size = %u bytes",
+			ring_desc_len*FPGA_RING_DESC_LEN_UNIT_BYTES);
+	rte_bbdev_log_debug("FLR Timeout = %f usec",
+			(float)flr_time_out*FPGA_FLR_TIMEOUT_UNIT);
+}
+
+/* Print decode DMA Descriptor of FPGA LTE FEC device */
+static void
+print_dma_dec_desc_debug_info(union fpga_dma_desc *desc)
+{
+	rte_bbdev_log_debug("DMA response desc %p\n"
+		"\t-- done(%"PRIu32") | iter(%"PRIu32") | crc_pass(%"PRIu32") | error (%"PRIu32") | crc_type(%"PRIu32")\n"
+		"\t-- max_iter(%"PRIu32") | bypass_rm(%"PRIu32") | irq_en (%"PRIu32") | drop_crc(%"PRIu32") | offset(%"PRIu32")\n"
+		"\t-- k(%"PRIu32") | in_len (%"PRIu16") | op_add(%p)\n"
+		"\t-- cbs_in_op(%"PRIu32") | in_add (0x%08"PRIx32"%08"PRIx32") | "
+		"out_add (0x%08"PRIx32"%08"PRIx32")",
+		desc,
+		(uint32_t)desc->dec_req.done,
+		(uint32_t)desc->dec_req.iter,
+		(uint32_t)desc->dec_req.crc_pass,
+		(uint32_t)desc->dec_req.error,
+		(uint32_t)desc->dec_req.crc_type,
+		(uint32_t)desc->dec_req.max_iter,
+		(uint32_t)desc->dec_req.bypass_rm,
+		(uint32_t)desc->dec_req.irq_en,
+		(uint32_t)desc->dec_req.drop_crc,
+		(uint32_t)desc->dec_req.offset,
+		(uint32_t)desc->dec_req.k,
+		(uint16_t)desc->dec_req.in_len,
+		desc->dec_req.op_addr,
+		(uint32_t)desc->dec_req.cbs_in_op,
+		(uint32_t)desc->dec_req.in_addr_hi,
+		(uint32_t)desc->dec_req.in_addr_lw,
+		(uint32_t)desc->dec_req.out_addr_hi,
+		(uint32_t)desc->dec_req.out_addr_lw);
+}
+#endif
+
+static int
+fpga_setup_queues(struct rte_bbdev *dev, uint16_t num_queues, int socket_id)
+{
+	/* Number of queues bound to a PF/VF */
+	uint32_t hw_q_num = 0;
+	uint32_t ring_size, payload, address, q_id, offset;
+	rte_iova_t phys_addr;
+	struct fpga_ring_ctrl_reg ring_reg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	if (!(fpga_reg_read_32(fpga_dev->mmio_base, address) & 0x1)) {
+		rte_bbdev_log(ERR,
+				"Queue-PF/VF mapping is not set! Was PF configured for device (%s) ?",
+				dev->data->name);
+		return -EPERM;
+	}
+
+	/* Clear queue registers structure */
+	memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+
+	/* Scan queue map.
+	 * If a queue is valid and mapped to a calling PF/VF the read value is
+	 * replaced with a queue ID and if it's not then
+	 * FPGA_INVALID_HW_QUEUE_ID is returned.
+	 */
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(fpga_dev->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+
+		rte_bbdev_log_debug("%s: queue ID: %u, registry queue ID: %u",
+				dev->device->name, q_id, hw_q_id);
+
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID) {
+			fpga_dev->q_bound_bit_map |= (1ULL << q_id);
+			/* Clear queue register of found queue */
+			offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+				(sizeof(struct fpga_ring_ctrl_reg) * q_id);
+			fpga_ring_reg_write(fpga_dev->mmio_base,
+					offset, ring_reg);
+			++hw_q_num;
+		}
+	}
+	if (hw_q_num == 0) {
+		rte_bbdev_log(ERR,
+			"No HW queues assigned to this device. Probably this is a VF configured for PF mode. Check device configuration!");
+		return -ENODEV;
+	}
+
+	if (num_queues > hw_q_num) {
+		rte_bbdev_log(ERR,
+			"Not enough queues for device %s! Requested: %u, available: %u",
+			dev->device->name, num_queues, hw_q_num);
+		return -EINVAL;
+	}
+
+	ring_size = FPGA_RING_MAX_SIZE * sizeof(struct fpga_dma_dec_desc);
+
+	/* Enforce 32 byte alignment */
+	RTE_BUILD_BUG_ON((RTE_CACHE_LINE_SIZE % 32) != 0);
+
+	/* Allocate memory for SW descriptor rings */
+	fpga_dev->sw_rings = rte_zmalloc_socket(dev->device->driver->name,
+			num_queues * ring_size, RTE_CACHE_LINE_SIZE,
+			socket_id);
+	if (fpga_dev->sw_rings == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u sw_rings",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	fpga_dev->sw_rings_phys = rte_malloc_virt2iova(fpga_dev->sw_rings);
+	fpga_dev->sw_ring_size = ring_size;
+	fpga_dev->sw_ring_max_depth = FPGA_RING_MAX_SIZE;
+
+	/* Allocate memory for ring flush status */
+	fpga_dev->flush_queue_status = rte_zmalloc_socket(NULL,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, socket_id);
+	if (fpga_dev->flush_queue_status == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u flush_queue_status",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	/* Set the flush status address registers */
+	phys_addr = rte_malloc_virt2iova(fpga_dev->flush_queue_status);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW;
+	payload = (uint32_t)(phys_addr);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI;
+	payload = (uint32_t)(phys_addr >> 32);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	return 0;
+}
+
+static int
+fpga_dev_close(struct rte_bbdev *dev)
+{
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	rte_free(fpga_dev->sw_rings);
+	rte_free(fpga_dev->flush_queue_status);
+
+	return 0;
+}
+
+static void
+fpga_dev_info_get(struct rte_bbdev *dev,
+		struct rte_bbdev_driver_info *dev_info)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint32_t q_id = 0;
+
+	/* TODO RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN and numbers of buffers are set
+	 * to temporary values as they are required by test application while
+	 * validation phase.
+	 */
+	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+		{
+			.type = RTE_BBDEV_OP_TURBO_DEC,
+			.cap.turbo_dec = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_TYPE_24B |
+					RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE |
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS |
+					RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN |
+					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
+				.max_llr_modulus = INT8_MAX,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_hard_out =
+					RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_soft_out = 0
+			}
+		},
+		{
+			.type = RTE_BBDEV_OP_TURBO_ENC,
+			.cap.turbo_enc = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_24B_ATTACH |
+					RTE_BBDEV_TURBO_RATE_MATCH |
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_MAX_CODE_BLOCKS
+			}
+		},
+		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
+	};
+
+	static struct rte_bbdev_queue_conf default_queue_conf;
+	default_queue_conf.socket = dev->data->socket_id;
+	default_queue_conf.queue_size = FPGA_RING_MAX_SIZE;
+
+
+	dev_info->driver_name = dev->device->driver->name;
+	dev_info->queue_size_lim = FPGA_RING_MAX_SIZE;
+	dev_info->hardware_accelerated = true;
+	dev_info->min_alignment = 64;
+	dev_info->default_queue_conf = default_queue_conf;
+	dev_info->capabilities = bbdev_capabilities;
+	dev_info->cpu_flag_reqs = NULL;
+
+	/* Calculates number of queues assigned to device */
+	dev_info->max_num_queues = 0;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(d->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID)
+			dev_info->max_num_queues++;
+	}
+}
+
+/**
+ * Find index of queue bound to current PF/VF which is unassigned. Return -1
+ * when there is no available queue
+ */
+static int
+fpga_find_free_queue_idx(struct rte_bbdev *dev,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint64_t q_idx;
+	uint8_t i = 0;
+	uint8_t range = FPGA_TOTAL_NUM_QUEUES >> 1;
+
+	if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC) {
+		i = FPGA_NUM_DL_QUEUES;
+		range = FPGA_TOTAL_NUM_QUEUES;
+	}
+
+	for (; i < range; ++i) {
+		q_idx = 1ULL << i;
+		/* Check if index of queue is bound to current PF/VF */
+		if (d->q_bound_bit_map & q_idx)
+			/* Check if found queue was not already assigned */
+			if (!(d->q_assigned_bit_map & q_idx)) {
+				d->q_assigned_bit_map |= q_idx;
+				return i;
+			}
+	}
+
+	rte_bbdev_log(INFO, "Failed to find free queue on %s", dev->data->name);
+
+	return -1;
+}
+
+static int
+fpga_queue_setup(struct rte_bbdev *dev, uint16_t queue_id,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	uint32_t address, ring_offset;
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q;
+	int8_t q_idx;
+
+	/* Check if there is a free queue to assign */
+	q_idx = fpga_find_free_queue_idx(dev, conf);
+	if (q_idx == -1)
+		return -1;
+
+	/* Allocate the queue data structure. */
+	q = rte_zmalloc_socket(dev->device->driver->name, sizeof(*q),
+			RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_bbdev_log(ERR, "Failed to allocate queue memory");
+		return -ENOMEM;
+	}
+
+	q->d = d;
+	q->q_idx = q_idx;
+
+	/* Set ring_base_addr */
+	q->ring_addr = RTE_PTR_ADD(d->sw_rings, (d->sw_ring_size * queue_id));
+	q->ring_ctrl_reg.ring_base_addr = d->sw_rings_phys +
+			(d->sw_ring_size * queue_id);
+
+	/* Allocate memory for Completion Head variable*/
+	q->ring_head_addr = rte_zmalloc_socket(dev->device->driver->name,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q->ring_head_addr == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u completion_head",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+	/* Set ring_head_addr */
+	q->ring_ctrl_reg.ring_head_addr =
+			rte_malloc_virt2iova(q->ring_head_addr);
+
+	/* Clear shadow_completion_head */
+	q->shadow_completion_head = 0;
+
+	/* Set ring_size */
+	if (conf->queue_size > FPGA_RING_MAX_SIZE) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Size of queue is too big %d (MAX: %d ) for %s:%u",
+				conf->queue_size, FPGA_RING_MAX_SIZE,
+				dev->device->driver->name, dev->data->dev_id);
+		return -EINVAL;
+	}
+	q->ring_ctrl_reg.ring_size = conf->queue_size;
+
+	/* Set Miscellaneous FPGA register*/
+	/* Max iteration number for TTI mitigation - todo */
+	q->ring_ctrl_reg.max_ul_dec = 0;
+	/* Enable max iteration number for TTI - todo */
+	q->ring_ctrl_reg.max_ul_dec_en = 0;
+
+	/* Enable the ring */
+	q->ring_ctrl_reg.enable = 1;
+
+	/* Set FPGA head_point and tail registers */
+	q->ring_ctrl_reg.head_point = q->tail = 0;
+
+	/* Set FPGA shadow_tail register */
+	q->ring_ctrl_reg.shadow_tail = q->tail;
+
+	/* Calculates the ring offset for found queue */
+	ring_offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q_idx);
+
+	/* Set FPGA Ring Control Registers */
+	fpga_ring_reg_write(d->mmio_base, ring_offset, q->ring_ctrl_reg);
+
+	/* Store MMIO register of shadow_tail */
+	address = ring_offset + FPGA_LTE_FEC_RING_SHADOW_TAIL;
+	q->shadow_tail_addr = RTE_PTR_ADD(d->mmio_base, address);
+
+	q->head_free_desc = q->tail;
+
+	/* Set wrap mask */
+	q->sw_ring_wrap_mask = conf->queue_size - 1;
+
+	rte_bbdev_log_debug("Setup dev%u q%u: queue_idx=%u",
+			dev->data->dev_id, queue_id, q->q_idx);
+
+	dev->data->queues[queue_id].queue_private = q;
+
+	rte_bbdev_log_debug("BBDEV queue[%d] set up for FPGA queue[%d]",
+			queue_id, q_idx);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Read FPGA Ring Control Registers after configuration*/
+	print_ring_reg_debug_info(d->mmio_base, ring_offset);
+#endif
+	return 0;
+}
+
+static int
+fpga_queue_release(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	struct fpga_ring_ctrl_reg ring_reg;
+	uint32_t offset;
+
+	rte_bbdev_log_debug("FPGA Queue[%d] released", queue_id);
+
+	if (q != NULL) {
+		memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+		offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+		/* Disable queue */
+		fpga_reg_write_8(d->mmio_base,
+				offset + FPGA_LTE_FEC_RING_ENABLE, 0x00);
+		/* Clear queue registers */
+		fpga_ring_reg_write(d->mmio_base, offset, ring_reg);
+
+		/* Mark the Queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q->q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		dev->data->queues[queue_id].queue_private = NULL;
+	}
+
+	return 0;
+}
+
+/* Function starts a device queue. */
+static int
+fpga_queue_start(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t enable = 0x01;
+	uint16_t zero = 0x0000;
+
+	/* Clear queue head and tail variables */
+	q->tail = q->head_free_desc = 0;
+
+	/* Clear FPGA head_point and tail registers */
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			zero);
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			zero);
+
+	/* Enable queue */
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			enable);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] started", queue_id);
+	return 0;
+}
+
+/* Function stops a device queue. */
+static int
+fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t payload = 0x01;
+	uint8_t counter = 0;
+	uint8_t timeout = FPGA_QUEUE_FLUSH_TIMEOUT_US / FPGA_TIMEOUT_CHECK_INTERVAL;
+
+	/* Set flush_queue_en bit to trigger queue flushing */
+	fpga_reg_write_8(d->mmio_base,
+			offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN, payload);
+
+	/** Check if queue flush is completed.
+	 * FPGA will update the completion flag after queue flushing is
+	 * completed. If completion flag is not updated within 1ms it is
+	 * considered as a failure.
+	 */
+	while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) {
+		if (counter > timeout) {
+			rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d",
+					queue_id);
+			return -1;
+		}
+		usleep(FPGA_TIMEOUT_CHECK_INTERVAL);
+		counter++;
+	}
+
+	/* Disable queue */
+	payload = 0x00;
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] stopped", queue_id);
+	return 0;
+}
+
+static inline uint16_t
+get_queue_id(struct rte_bbdev_data *data, uint8_t q_idx)
+{
+	uint16_t queue_id;
+
+	for (queue_id = 0; queue_id < data->num_queues; ++queue_id) {
+		struct fpga_queue *q = data->queues[queue_id].queue_private;
+		if (q != NULL && q->q_idx == q_idx)
+			return queue_id;
+	}
+
+	return -1;
+}
+
+/* Interrupt handler triggered by FPGA dev for handling specific interrupt */
+static void
+fpga_dev_interrupt_handler(void *cb_arg)
+{
+	struct rte_bbdev *dev = cb_arg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+	struct fpga_queue *q;
+	uint64_t ring_head;
+	uint64_t q_idx;
+	uint16_t queue_id;
+	uint8_t i;
+
+	/* Scan queue assigned to this device */
+	for (i = 0; i < FPGA_TOTAL_NUM_QUEUES; ++i) {
+		q_idx = 1ULL << i;
+		if (fpga_dev->q_bound_bit_map & q_idx) {
+			queue_id = get_queue_id(dev->data, i);
+			if (queue_id == (uint16_t) -1)
+				continue;
+
+			/* Check if completion head was changed */
+			q = dev->data->queues[queue_id].queue_private;
+			ring_head = *q->ring_head_addr;
+			if (q->shadow_completion_head != ring_head &&
+				q->irq_enable == 1) {
+				q->shadow_completion_head = ring_head;
+				rte_bbdev_pmd_callback_process(
+						dev,
+						RTE_BBDEV_EVENT_DEQUEUE,
+						&queue_id);
+			}
+		}
+	}
+}
+
+static int
+fpga_queue_intr_enable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle))
+		return -ENOTSUP;
+
+	q->irq_enable = 1;
+
+	return 0;
+}
+
+static int
+fpga_queue_intr_disable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	q->irq_enable = 0;
+
+	return 0;
+}
+
+static int
+fpga_intr_enable(struct rte_bbdev *dev)
+{
+	int ret;
+	uint8_t i;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle)) {
+		rte_bbdev_log(ERR, "Multiple intr vector is not supported by FPGA (%s)",
+				dev->data->name);
+		return -ENOTSUP;
+	}
+
+	/* Create event file descriptors for each of 64 queue. Event fds will be
+	 * mapped to FPGA IRQs in rte_intr_enable(). This is a 1:1 mapping where
+	 * the IRQ number is a direct translation to the queue number.
+	 *
+	 * 63 (FPGA_NUM_INTR_VEC) event fds are created as rte_intr_enable()
+	 * mapped the first IRQ to already created interrupt event file
+	 * descriptor (intr_handle->fd).
+	 */
+	if (rte_intr_efd_enable(dev->intr_handle, FPGA_NUM_INTR_VEC)) {
+		rte_bbdev_log(ERR, "Failed to create fds for %u queues",
+				dev->data->num_queues);
+		return -1;
+	}
+
+	/* TODO Each event file descriptor is overwritten by interrupt event
+	 * file descriptor. That descriptor is added to epoll observed list.
+	 * It ensures that callback function assigned to that descriptor will
+	 * invoked when any FPGA queue issues interrupt.
+	 */
+	for (i = 0; i < FPGA_NUM_INTR_VEC; ++i)
+		dev->intr_handle->efds[i] = dev->intr_handle->fd;
+
+	if (!dev->intr_handle->intr_vec) {
+		dev->intr_handle->intr_vec = rte_zmalloc("intr_vec",
+				dev->data->num_queues * sizeof(int), 0);
+		if (!dev->intr_handle->intr_vec) {
+			rte_bbdev_log(ERR, "Failed to allocate %u vectors",
+					dev->data->num_queues);
+			return -ENOMEM;
+		}
+	}
+
+	ret = rte_intr_enable(dev->intr_handle);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't enable interrupts for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	ret = rte_intr_callback_register(dev->intr_handle,
+			fpga_dev_interrupt_handler, dev);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't register interrupt callback for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct rte_bbdev_ops fpga_ops = {
+	.setup_queues = fpga_setup_queues,
+	.intr_enable = fpga_intr_enable,
+	.close = fpga_dev_close,
+	.info_get = fpga_dev_info_get,
+	.queue_setup = fpga_queue_setup,
+	.queue_stop = fpga_queue_stop,
+	.queue_start = fpga_queue_start,
+	.queue_release = fpga_queue_release,
+	.queue_intr_enable = fpga_queue_intr_enable,
+	.queue_intr_disable = fpga_queue_intr_disable
+};
+
+static inline void
+fpga_dma_enqueue(struct fpga_queue *q, uint16_t num_desc,
+		struct rte_bbdev_stats *queue_stats)
+{
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = 0;
+	queue_stats->acc_offload_cycles = 0;
+#else
+	RTE_SET_USED(queue_stats);
+#endif
+
+	/* Update tail and shadow_tail register */
+	q->tail = (q->tail + num_desc) & q->sw_ring_wrap_mask;
+
+	rte_wmb();
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	/* Start time measurement for enqueue function offload. */
+	start_time = rte_rdtsc_precise();
+#endif
+	mmio_write_16(q->shadow_tail_addr, q->tail);
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	rte_wmb();
+	queue_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+}
+
+/* Calculates number of CBs in processed encoder TB based on 'r' and input
+ * length.
+ */
+static inline uint8_t
+get_num_cbs_in_op_enc(struct rte_bbdev_op_turbo_enc *turbo_enc)
+{
+	uint8_t c, c_neg, r, crc24_bits = 0;
+	uint16_t k, k_neg, k_pos;
+	uint8_t cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_enc->input.length;
+	r = turbo_enc->tb_params.r;
+	c = turbo_enc->tb_params.c;
+	c_neg = turbo_enc->tb_params.c_neg;
+	k_neg = turbo_enc->tb_params.k_neg;
+	k_pos = turbo_enc->tb_params.k_pos;
+	crc24_bits = 24;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		length -= (k - crc24_bits) >> 3;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Calculates number of CBs in processed decoder TB based on 'r' and input
+ * length.
+ */
+static inline uint16_t
+get_num_cbs_in_op_dec(struct rte_bbdev_op_turbo_dec *turbo_dec)
+{
+	uint8_t c, c_neg, r = 0;
+	uint16_t kw, k, k_neg, k_pos, cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_dec->input.length;
+	r = turbo_dec->tb_params.r;
+	c = turbo_dec->tb_params.c;
+	c_neg = turbo_dec->tb_params.c_neg;
+	k_neg = turbo_dec->tb_params.k_neg;
+	k_pos = turbo_dec->tb_params.k_pos;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+		length -= kw;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Read flag value 0/1/ from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
+/* Print an error if a descriptor error has occurred.
+ *  Return 0 on success, 1 on failure
+ */
+static inline int
+check_desc_error(uint32_t error_code) {
+	switch (error_code) {
+	case DESC_ERR_NO_ERR:
+		return 0;
+	case DESC_ERR_K_OUT_OF_RANGE:
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144)");
+		break;
+	case DESC_ERR_K_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range");
+		break;
+	case DESC_ERR_KPAI_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only");
+		break;
+	case DESC_ERR_DESC_OFFSET_ERR:
+		rte_bbdev_log(ERR, "Queue offset does not meet the expectation in the FPGA");
+		break;
+	case (DESC_ERR_K_OUT_OF_RANGE | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144) and queue offset error");
+		break;
+	case (DESC_ERR_K_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range and queue offset error");
+		break;
+	case (DESC_ERR_KPAI_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only and queue offset error");
+		break;
+	case DESC_ERR_DESC_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for descriptor read");
+		break;
+	case DESC_ERR_DESC_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Descriptor read time-out");
+		break;
+	case DESC_ERR_DESC_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Descriptor read TLP poisoned");
+		break;
+	case DESC_ERR_CB_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for code block");
+		break;
+	case DESC_ERR_CB_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Code block read time-out");
+		break;
+	case DESC_ERR_CB_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Code block read TLP poisoned");
+		break;
+	default:
+		rte_bbdev_log(ERR, "Descriptor error unknown error code %u",
+				error_code);
+		break;
+	}
+	return 1;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param k
+ *   K value (length of input in bits).
+ * @param e
+ *   E value (length of output in bits).
+ * @param ncb
+ *   Ncb value (size of the soft buffer).
+ * @param out_length
+ *   Length of output buffer
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_te_fill(struct rte_bbdev_enc_op *op,
+		struct fpga_dma_enc_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t k, uint16_t e, uint16_t ncb,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+
+{
+	/* reset */
+	desc->done = 0;
+	desc->crc_en = check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_CRC_24B_ATTACH);
+	desc->bypass_rm = !check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_RATE_MATCH);
+	desc->k = k;
+	desc->e = e;
+	desc->ncb = ncb;
+	desc->rv = op->turbo_enc.rv_index;
+	desc->offset = desc_offset;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param in_length
+ *   Length of an input.
+ * @param k
+ *   K value (length of an output in bits).
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_td_fill(struct rte_bbdev_dec_op *op,
+		struct fpga_dma_dec_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t in_length, uint16_t k,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+{
+	/* reset */
+	desc->done = 0;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+	desc->in_len = in_length;
+	desc->k = k;
+	desc->crc_type = !check_bit(op->turbo_dec.op_flags,
+			RTE_BBDEV_TURBO_CRC_TYPE_24B);
+	if ((op->turbo_dec.code_block_mode == 0)
+		&& !check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		desc->drop_crc = 1;
+	desc->max_iter = op->turbo_dec.iter_max * 2;
+	desc->offset = desc_offset;
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo encoder parameters */
+static int
+validate_enc_op(struct rte_bbdev_enc_op *op)
+{
+	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
+	uint16_t kw, kw_neg, kw_pos;
+
+	if (turbo_enc->input.length >
+			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return -1;
+	}
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_enc->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_enc->output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid output pointer");
+		return -1;
+	}
+	if (turbo_enc->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_enc->rv_index);
+		return -1;
+	}
+	if (turbo_enc->code_block_mode != 0 &&
+			turbo_enc->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_enc->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_enc->code_block_mode == 0) {
+		tb = &turbo_enc->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+				&& tb->r < tb->cab) {
+			rte_bbdev_log(ERR,
+					"ea (%u) is less than %u or it is not even",
+					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+				&& tb->c > tb->cab) {
+			rte_bbdev_log(ERR,
+					"eb (%u) is less than %u or it is not even",
+					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
+			rte_bbdev_log(ERR,
+					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
+					tb->ncb_neg, tb->k_neg, kw_neg);
+			return -1;
+		}
+
+		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
+			rte_bbdev_log(ERR,
+					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
+					tb->ncb_pos, tb->k_pos, kw_pos);
+			return -1;
+		}
+		if (tb->r > (tb->c - 1)) {
+			rte_bbdev_log(ERR,
+					"r (%u) is greater than c - 1 (%u)",
+					tb->r, tb->c - 1);
+			return -1;
+		}
+	} else {
+		cb = &turbo_enc->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+
+		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+			rte_bbdev_log(ERR,
+					"e (%u) is less than %u or it is not even",
+					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
+		if (cb->ncb < cb->k || cb->ncb > kw) {
+			rte_bbdev_log(ERR,
+					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
+					cb->ncb, cb->k, kw);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline char *
+mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
+{
+	if (unlikely(len > rte_pktmbuf_tailroom(m)))
+		return NULL;
+
+	char *tail = (char *)m->buf_addr + m->data_off + m->data_len;
+	m->data_len = (uint16_t)(m->data_len + len);
+	m_head->pkt_len  = (m_head->pkt_len + len);
+	return tail;
+}
+
+static inline int
+enqueue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	total_left = op->turbo_enc.input.length;
+	k = op->turbo_enc.cb_params.k;
+	e = op->turbo_enc.cb_params.e;
+	ncb = op->turbo_enc.cb_params.ncb;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		in_length = ((k - 24) >> 3);
+	else
+		in_length = k >> 3;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_RATE_MATCH))
+		out_length = (e + 7) >> 3;
+	else
+		out_length = (k >> 3) * 3 + 2;
+
+	mbuf_append(output, output, out_length);
+
+	/* Offset into the ring */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	/* Setup DMA Descriptor */
+	desc = q->ring_addr + ring_offset;
+
+	ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output, k, e,
+			ncb, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_enc.output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+			"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+static inline int
+enqueue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c, crc24_bits = 0;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t mbuf_total_left, in_length, out_length, in_offset, out_offset;
+	uint32_t seg_total_left;
+	uint16_t current_enqueued_cbs = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output_head = output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	mbuf_total_left = op->turbo_enc.input.length;
+
+	c = op->turbo_enc.tb_params.c;
+	r = op->turbo_enc.tb_params.r;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		crc24_bits = 24;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+
+		e = (r < op->turbo_enc.tb_params.cab) ?
+				op->turbo_enc.tb_params.ea :
+				op->turbo_enc.tb_params.eb;
+		k = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.k_neg :
+				op->turbo_enc.tb_params.k_pos;
+		ncb = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.ncb_neg :
+				op->turbo_enc.tb_params.ncb_pos;
+
+		in_length = ((k - crc24_bits) >> 3);
+
+		if (check_bit(op->turbo_enc.op_flags,
+			RTE_BBDEV_TURBO_RATE_MATCH))
+			out_length = (e + 7) >> 3;
+		else
+			out_length = (k >> 3) * 3 + 2;
+
+		mbuf_append(output_head, output, out_length);
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output,
+				k, e, ncb, in_offset, out_offset, ring_offset,
+				cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		rte_bbdev_log_debug("DMA request desc %p", desc);
+
+		/* Update lengths */
+		op->turbo_enc.output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo decoder parameters */
+static int
+validate_dec_op(struct rte_bbdev_dec_op *op)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_dec->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_dec->hard_output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid hard_output pointer");
+		return -1;
+	}
+	if (turbo_dec->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_dec->rv_index);
+		return -1;
+	}
+	if (turbo_dec->iter_min < 1) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is less than 1",
+				turbo_dec->iter_min);
+		return -1;
+	}
+	if (turbo_dec->iter_max <= 2) {
+		rte_bbdev_log(ERR,
+				"iter_max (%u) is less than or equal to 2",
+				turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->iter_min > turbo_dec->iter_max) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is greater than iter_max (%u)",
+				turbo_dec->iter_min, turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->code_block_mode != 0 &&
+			turbo_dec->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_dec->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_dec->code_block_mode == 0) {
+
+		if ((turbo_dec->op_flags &
+			RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+			!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+			rte_bbdev_log(ERR,
+				"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP should accompany RTE_BBDEV_TURBO_CRC_TYPE_24B");
+			return -1;
+		}
+
+		tb = &turbo_dec->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c > tb->c_neg) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+	} else {
+
+		if (turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) {
+			rte_bbdev_log(ERR,
+					"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP is invalid in CB-mode");
+			return -1;
+		}
+
+		cb = &turbo_dec->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline int
+enqueue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, kw, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output = op->turbo_dec.hard_output.data;
+	total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	k = op->turbo_dec.cb_params.k;
+	kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+	in_length = kw;
+	out_length = k >> 3;
+
+	mbuf_append(output, output, out_length);
+
+	/* Setup DMA Descriptor */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	desc = q->ring_addr + ring_offset;
+	ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+			in_length, k, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+#endif
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_dec.hard_output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+
+static inline int
+enqueue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c;
+	uint16_t k, kw, in_length, out_length, ring_offset;
+	uint32_t mbuf_total_left, seg_total_left, in_offset, out_offset;
+	uint16_t current_enqueued_cbs = 0;
+	uint16_t crc24_overlap = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output_head = output = op->turbo_dec.hard_output.data;
+	mbuf_total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	if (!check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		crc24_overlap = 24;
+
+	c = op->turbo_dec.tb_params.c;
+	r = op->turbo_dec.tb_params.r;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+		k = (r < op->turbo_dec.tb_params.c_neg) ?
+				op->turbo_dec.tb_params.k_neg :
+				op->turbo_dec.tb_params.k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+
+		in_length = kw;
+		out_length = (k - crc24_overlap) >> 3;
+
+		mbuf_append(output_head, output, out_length);
+
+		if (seg_total_left < in_length) {
+			rte_bbdev_log(ERR,
+					"Partial CB found in a TB. FPGA Driver doesn't support scatter-gather operations!");
+			return -1;
+		}
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+				in_length, k, in_offset, out_offset,
+				ring_offset, cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		/* Update lengths */
+		ret = rte_pktmbuf_trim(op->turbo_dec.hard_output.data,
+				(crc24_overlap >> 3));
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		if (ret < 0) {
+			rte_bbdev_log(ERR,
+					"The length to remove is greater than the length of the last segment");
+			return -EINVAL;
+		}
+#endif
+		op->turbo_dec.hard_output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+static uint16_t
+fpga_enqueue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_enc.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_enc(&ops[i]->turbo_enc);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_enc_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_enc_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing enc ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->enc_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static uint16_t
+fpga_enqueue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_dec.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_dec(&ops[i]->turbo_dec);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_dec_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_dec_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing dec ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->dec_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static inline int
+dequeue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+
+	/* Set current desc */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/*check if done */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+	rte_bbdev_log_debug("DMA response desc %p", desc);
+
+	*op = desc->enc_req.op_addr;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status = desc_error << RTE_BBDEV_DATA_ERROR;
+
+	return 1;
+}
+
+static inline int
+dequeue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx;
+	int desc_error = 0;
+	int status = 0;
+
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->enc_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->enc_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |=  desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->enc_req.op_addr;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static inline int
+dequeue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+
+#endif
+
+	*op = desc->dec_req.op_addr;
+	/* FPGA reports in half-iterations, from 0 to 31. get ceiling */
+	(*op)->turbo_dec.iter_count = (desc->dec_req.iter + 2) >> 1;
+	/* crc_pass = 0 when decoder fails */
+	(*op)->status = !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status |= desc_error << RTE_BBDEV_DATA_ERROR;
+	return 1;
+}
+
+static inline int
+dequeue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx, iter_count = 0;
+	int status = 0;
+	int  desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->dec_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->dec_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* get max iter_count for all CBs in op */
+		iter_count = RTE_MAX(iter_count, (uint8_t) desc->dec_req.iter);
+		/* crc_pass = 0 when decoder fails, one fails all */
+		status |= !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |= desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->dec_req.op_addr;
+
+	/* FPGA reports in half-iterations, get ceiling */
+	(*op)->turbo_dec.iter_count = (iter_count + 2) >> 1;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static uint16_t
+fpga_dequeue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_enc_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->enc_req.op_addr;
+		if (op->turbo_enc.code_block_mode == 0)
+			ret = dequeue_enc_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_enc_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing enc ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+static uint16_t
+fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_dec_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->dec_req.op_addr;
+		if (op->turbo_dec.code_block_mode == 0)
+			ret = dequeue_dec_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_dec_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing dec ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+/* Initialization Function */
+static void
+fpga_lte_fec_init(struct rte_bbdev *dev)
+{
+	struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+
+	dev->dev_ops = &fpga_ops;
+	dev->enqueue_enc_ops = fpga_enqueue_enc;
+	dev->enqueue_dec_ops = fpga_enqueue_dec;
+	dev->dequeue_enc_ops = fpga_dequeue_enc;
+	dev->dequeue_dec_ops = fpga_dequeue_dec;
+
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device =
+			!strcmp(dev->device->driver->name,
+					RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME));
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base =
+			pci_dev->mem_resource[0].addr;
+
+	rte_bbdev_log_debug(
+			"Init device %s [%s] @ virtaddr %p phyaddr %#"PRIx64,
+			dev->device->driver->name, dev->data->name,
+			(void *)pci_dev->mem_resource[0].addr,
+			pci_dev->mem_resource[0].phys_addr);
+}
+
+static int
+fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev = NULL;
+	char dev_name[RTE_BBDEV_NAME_MAX_LEN];
+
+	if (pci_dev == NULL) {
+		rte_bbdev_log(ERR, "NULL PCI device");
+		return -EINVAL;
+	}
+
+	rte_pci_device_name(&pci_dev->addr, dev_name, sizeof(dev_name));
+
+	/* Allocate memory to be used privately by drivers */
+	bbdev = rte_bbdev_allocate(pci_dev->device.name);
+	if (bbdev == NULL)
+		return -ENODEV;
+
+	/* allocate device private memory */
+	bbdev->data->dev_private = rte_zmalloc_socket(dev_name,
+			sizeof(struct fpga_lte_fec_device), RTE_CACHE_LINE_SIZE,
+			pci_dev->device.numa_node);
+
+	if (bbdev->data->dev_private == NULL) {
+		rte_bbdev_log(CRIT,
+				"Allocate of %zu bytes for device \"%s\" failed",
+				sizeof(struct fpga_lte_fec_device), dev_name);
+				rte_bbdev_release(bbdev);
+			return -ENOMEM;
+	}
+
+	/* Fill HW specific part of device structure */
+	bbdev->device = &pci_dev->device;
+	bbdev->intr_handle = &pci_dev->intr_handle;
+	bbdev->data->socket_id = pci_dev->device.numa_node;
+
+	/* Invoke FEC FPGA device initialization function */
+	fpga_lte_fec_init(bbdev);
+
+	rte_bbdev_log_debug("bbdev id = %u [%s]",
+			bbdev->data->dev_id, dev_name);
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+	uint32_t version_id = fpga_reg_read_32(d->mmio_base,
+			FPGA_LTE_FEC_VERSION_ID);
+	rte_bbdev_log(INFO, "FEC FPGA RTL v%u.%u",
+		((uint16_t)(version_id >> 16)), ((uint16_t)version_id));
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (!strcmp(bbdev->device->driver->name,
+			RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)))
+		print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+static int
+fpga_lte_fec_remove(struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev;
+	int ret;
+	uint8_t dev_id;
+
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* Find device */
+	bbdev = rte_bbdev_get_named_dev(pci_dev->device.name);
+	if (bbdev == NULL) {
+		rte_bbdev_log(CRIT,
+				"Couldn't find HW dev \"%s\" to uninitialise it",
+				pci_dev->device.name);
+		return -ENODEV;
+	}
+	dev_id = bbdev->data->dev_id;
+
+	/* free device private memory before close */
+	rte_free(bbdev->data->dev_private);
+
+	/* Close device */
+	ret = rte_bbdev_close(dev_id);
+	if (ret < 0)
+		rte_bbdev_log(ERR,
+				"Device %i failed to close during uninit: %i",
+				dev_id, ret);
+
+	/* release bbdev from library */
+	ret = rte_bbdev_release(bbdev);
+	if (ret)
+		rte_bbdev_log(ERR, "Device %i failed to uninit: %i", dev_id,
+				ret);
+
+	rte_bbdev_log_debug("Destroyed bbdev = %u", dev_id);
+
+	return 0;
+}
+
+static inline void
+set_default_fpga_conf(struct fpga_lte_fec_conf *def_conf)
+{
+	/* clear default configuration before initialization */
+	memset(def_conf, 0, sizeof(struct fpga_lte_fec_conf));
+	/* Set pf mode to true */
+	def_conf->pf_mode_en = true;
+
+	/* Set ratio between UL and DL to 1:1 (unit of weight is 3 CBs) */
+	def_conf->ul_bandwidth = 3;
+	def_conf->dl_bandwidth = 3;
+
+	/* Set Load Balance Factor to 64 */
+	def_conf->dl_load_balance = 64;
+	def_conf->ul_load_balance = 64;
+}
+
+/* Initial configuration of FPGA LTE FEC device */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf)
+{
+	uint32_t payload_32, address;
+	uint16_t payload_16;
+	uint8_t payload_8;
+	uint16_t q_id, vf_id, total_q_id, total_ul_q_id, total_dl_q_id;
+	struct rte_bbdev *bbdev = rte_bbdev_get_named_dev(dev_name);
+	struct fpga_lte_fec_conf def_conf;
+
+	if (bbdev == NULL) {
+		rte_bbdev_log(ERR,
+				"Invalid dev_name (%s), or device is not yet initialised",
+				dev_name);
+		return -ENODEV;
+	}
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+
+	if (conf == NULL) {
+		rte_bbdev_log(ERR,
+				"FPGA Configuration was not provided. Default configuration will be loaded.");
+		set_default_fpga_conf(&def_conf);
+		conf = &def_conf;
+	}
+
+	/*
+	 * Configure UL:DL ratio.
+	 * [7:0]: UL weight
+	 * [15:8]: DL weight
+	 */
+	payload_16 = (conf->dl_bandwidth << 8) | conf->ul_bandwidth;
+	address = FPGA_LTE_FEC_CONFIGURATION;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Clear all queues registers */
+	payload_32 = FPGA_INVALID_HW_QUEUE_ID;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+		fpga_reg_write_32(d->mmio_base, address, payload_32);
+	}
+
+	/*
+	 * If PF mode is enabled allocate all queues for PF only.
+	 *
+	 * For VF mode each VF can have different number of UL and DL queues.
+	 * Total number of queues to configure cannot exceed FPGA
+	 * capabilities - 64 queues - 32 queues for UL and 32 queues for DL.
+	 * Queues mapping is done according to configuration:
+	 *
+	 * UL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 0                |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_dl_queues_number[0] - 1 |   0   |
+	 * | conf->vf_dl_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_dl_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_dl_queues_number[7] - 1 |   7   |
+	 *
+	 * DL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 32               |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_ul_queues_number[0] - 1 |   0   |
+	 * | conf->vf_ul_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_ul_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_ul_queues_number[7] - 1 |   7   |
+	 *
+	 * Example of configuration:
+	 * conf->vf_ul_queues_number[0] = 4;  -> 4 UL queues for VF0
+	 * conf->vf_dl_queues_number[0] = 4;  -> 4 DL queues for VF0
+	 * conf->vf_ul_queues_number[1] = 2;  -> 2 UL queues for VF1
+	 * conf->vf_dl_queues_number[1] = 2;  -> 2 DL queues for VF1
+	 *
+	 * UL:
+	 * | Q_ID | VF_ID |
+	 * |   0  |   0   |
+	 * |   1  |   0   |
+	 * |   2  |   0   |
+	 * |   3  |   0   |
+	 * |   4  |   1   |
+	 * |   5  |   1   |
+	 *
+	 * DL:
+	 * | Q_ID | VF_ID |
+	 * |  32  |   0   |
+	 * |  33  |   0   |
+	 * |  34  |   0   |
+	 * |  35  |   0   |
+	 * |  36  |   1   |
+	 * |  37  |   1   |
+	 */
+	if (conf->pf_mode_en) {
+		payload_32 = 0x1;
+		for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+			address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+			fpga_reg_write_32(d->mmio_base, address, payload_32);
+		}
+	} else {
+		/* Calculate total number of UL and DL queues to configure */
+		total_ul_q_id = total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			total_ul_q_id += conf->vf_ul_queues_number[vf_id];
+			total_dl_q_id += conf->vf_dl_queues_number[vf_id];
+		}
+		total_q_id = total_dl_q_id + total_ul_q_id;
+		/*
+		 * Check if total number of queues to configure does not exceed
+		 * FPGA capabilities (64 queues - 32 UL and 32 DL queues)
+		 */
+		if ((total_ul_q_id > FPGA_NUM_UL_QUEUES) ||
+			(total_dl_q_id > FPGA_NUM_DL_QUEUES) ||
+			(total_q_id > FPGA_TOTAL_NUM_QUEUES)) {
+			rte_bbdev_log(ERR,
+					"FPGA Configuration failed. Too many queues to configure: UL_Q %u, DL_Q %u, FPGA_Q %u",
+					total_ul_q_id, total_dl_q_id,
+					FPGA_TOTAL_NUM_QUEUES);
+			return -EINVAL;
+		}
+		total_ul_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_ul_queues_number[vf_id];
+					++q_id, ++total_ul_q_id) {
+				address = (total_ul_q_id << 2) +
+						FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+		total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_dl_queues_number[vf_id];
+					++q_id, ++total_dl_q_id) {
+				address = ((total_dl_q_id + FPGA_NUM_UL_QUEUES)
+						<< 2) + FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+	}
+
+	/* Setting Load Balance Factor */
+	payload_16 = (conf->dl_load_balance << 8) | (conf->ul_load_balance);
+	address = FPGA_LTE_FEC_LOAD_BALANCE_FACTOR;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting length of ring descriptor entry */
+	payload_16 = FPGA_RING_DESC_ENTRY_LENGTH;
+	address = FPGA_LTE_FEC_RING_DESC_LEN;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting FLR timeout value */
+	payload_16 = conf->flr_time_out;
+	address = FPGA_LTE_FEC_FLR_TIME_OUT;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Queue PF/VF mapping table is ready */
+	payload_8 = 0x1;
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	fpga_reg_write_8(d->mmio_base, address, payload_8);
+
+	rte_bbdev_log_debug("PF FPGA LTE FEC configuration complete for %s",
+			dev_name);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+/* FPGA LTE FEC PCI PF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_pf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_PF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_pf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_pf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+/* FPGA LTE FEC PCI VF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_vf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_VF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_vf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_vf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_PF_DRIVER_NAME, fpga_lte_fec_pci_pf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_pf_map);
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_vf_map);
+
+RTE_INIT(fpga_lte_fec_init_log)
+{
+	fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec");
+	if (fpga_lte_fec_logtype >= 0)
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG);
+#else
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE);
+#endif
+}
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
new file mode 100644
index 0000000..2c6952e
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#ifndef _FPGA_LTE_FEC_H_
+#define _FPGA_LTE_FEC_H_
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/**
+ * @file fpga_lte_fec.h
+ *
+ * Interface for Intel(R) FGPA LTE FEC device configuration at the host level,
+ * directly accessible by the application.
+ * Configuration related to LTE Turbo coding functionality is done through
+ * librte_bbdev library.
+ *
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**< Number of Virtual Functions FGPA 4G FEC supports */
+#define FPGA_LTE_FEC_NUM_VFS 8
+
+/**
+ * Structure to pass FPGA 4G FEC configuration.
+ */
+struct fpga_lte_fec_conf {
+	/**< 1 if PF is used for dataplane, 0 for VFs */
+	bool pf_mode_en;
+	/**< Number of UL queues per VF */
+	uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< Number of DL queues per VF */
+	uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< UL bandwidth. Needed for schedule algorithm */
+	uint8_t ul_bandwidth;
+	/**< DL bandwidth. Needed for schedule algorithm */
+	uint8_t dl_bandwidth;
+	/**< UL Load Balance */
+	uint8_t ul_load_balance;
+	/**< DL Load Balance */
+	uint8_t dl_load_balance;
+	/**< FLR timeout value */
+	uint16_t flr_time_out;
+};
+
+/**
+ * Configure Intel(R) FPGA LTE FEC device
+ *
+ * @param dev_name
+ *   The name of the device. This is the short form of PCI BDF, e.g. 00:01.0.
+ *   It can also be retrieved for a bbdev device from the dev_name field in the
+ *   rte_bbdev_info structure returned by rte_bbdev_info_get().
+ * @param conf
+ *   Configuration to apply to FPGA 4G FEC.
+ *
+ * @return
+ *   Zero on success, negative value on failure.
+ */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FPGA_LTE_FEC_H_ */
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
new file mode 100644
index 0000000..1a99f8d
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
@@ -0,0 +1,3 @@
+DPDK_18.08 {
+    local: *;
+};
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 7c9b4b5..21d32a2 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -218,6 +218,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_NETVSC_PMD)     += -lrte_pmd_netvsc
 
 ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += -lrte_pmd_fpga_lte_fec
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 2/5] bbdev : Extension of BBDEV for 5G FEC
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
  2019-05-11  0:05 ` Nic Chautru
  2019-05-11  0:05 ` [dpdk-dev] [PATCH 1/5] baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC N300 FPGA card Nic Chautru
@ 2019-05-11  0:06 ` Nic Chautru
  2019-05-11  0:06   ` Nic Chautru
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 3/5] baseband/turbo_sw : Extension of turbo_sw " Nic Chautru
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 doc/guides/prog_guide/bbdev.rst                  | 509 ++++++++++++++++++--
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     |  24 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  36 +-
 lib/librte_bbdev/rte_bbdev.c                     |  22 +-
 lib/librte_bbdev/rte_bbdev.h                     | 137 +++++-
 lib/librte_bbdev/rte_bbdev_op.h                  | 577 ++++++++++++++++++-----
 6 files changed, 1091 insertions(+), 214 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 658ffd4..d862260 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -78,7 +78,7 @@ From the application point of view, each instance of a bbdev device consists of
 one or more queues identified by queue IDs. While different devices may have
 different capabilities (e.g. support different operation types), all queues on
 a device support identical configuration possibilities. A queue is configured
-for only one type of operation and is configured at initialization time.
+for only one type of operation and is configured at initializations time.
 When an operation is enqueued to a specific queue ID, the result is dequeued
 from the same queue ID.
 
@@ -91,8 +91,7 @@ and queue configuration is applied with
 ``rte_bbdev_queue_configure(dev_id,queue_id,conf)``. Note that, although all
 queues on a device support same capabilities, they can be configured differently
 and will then behave differently.
-Devices supporting interrupts can enable them by using
-``rte_bbdev_intr_enable(dev_id)``.
+Devices supporting interrupts can enable them by using ``rte_bbdev_intr_enable(dev_id)``.
 
 The configuration of each bbdev device includes the following operations:
 
@@ -150,8 +149,6 @@ device. Once closed, it cannot be restarted.
     int rte_bbdev_start(uint16_t dev_id)
     int rte_bbdev_stop(uint16_t dev_id)
     int rte_bbdev_close(uint16_t dev_id)
-    int rte_bbdev_queue_start(uint16_t dev_id, uint16_t queue_id)
-    int rte_bbdev_queue_stop(uint16_t dev_id, uint16_t queue_id)
 
 
 By default, all queues are started when the device is started, but they can be
@@ -166,9 +163,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +217,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +231,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +263,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +333,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +403,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +452,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +522,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +549,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +624,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +655,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +676,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +707,373 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependant on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (transport block mode only)          |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (code block mode only)         |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependant on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index fe59b16..761cb95 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -605,9 +605,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -619,9 +619,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1386,15 +1386,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1728,15 +1728,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5204a77..c714d03 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -33,9 +33,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -101,7 +101,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -154,9 +154,9 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -168,8 +168,8 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -248,7 +248,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -268,7 +268,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -286,7 +286,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -304,7 +304,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -429,9 +429,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -456,9 +456,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -745,9 +745,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1027,7 +1027,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index a3ab5d9..7e4acfc 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev * __rte_experimental
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev * __rte_experimental
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev * __rte_experimental
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev * __rte_experimental
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool * __rte_experimental
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index d131692..63e382d 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -43,7 +43,7 @@
 #define RTE_BBDEV_MAX_DEVS 128  /**< Max number of devices */
 #endif
 
-/** Flags indicate current state of BBDEV device */
+/** Flags indiciate current state of BBDEV device */
 enum rte_bbdev_state {
 	RTE_BBDEV_UNUSED,
 	RTE_BBDEV_INITIALIZED
@@ -161,7 +161,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -313,7 +313,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -433,6 +433,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -506,6 +514,67 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -566,6 +635,68 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index 6be53f5..d339873 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,62 +26,66 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,110 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +216,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +228,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +236,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +251,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+};
+
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +352,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	* per bit of the original CB.
+	*/
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+	};
+};
+
+/** Turbo encode code block parameters */
+struct rte_bbdev_op_enc_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** Turbo encode transport block parameters */
+struct rte_bbdev_op_enc_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +545,38 @@ struct rte_bbdev_op_enc_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +593,127 @@ struct rte_bbdev_op_enc_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched CB or TB output buffer */
 	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
+	};
+};
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched TB or CB output buffer */
+	struct rte_bbdev_op_data output;
+
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 0:Basegraph 0, 1: Basegraph 1. */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +721,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -513,7 +844,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -548,7 +880,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 2/5] bbdev : Extension of BBDEV for 5G FEC
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 2/5] bbdev : Extension of BBDEV for 5G FEC Nic Chautru
@ 2019-05-11  0:06   ` Nic Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 doc/guides/prog_guide/bbdev.rst                  | 509 ++++++++++++++++++--
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     |  24 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  36 +-
 lib/librte_bbdev/rte_bbdev.c                     |  22 +-
 lib/librte_bbdev/rte_bbdev.h                     | 137 +++++-
 lib/librte_bbdev/rte_bbdev_op.h                  | 577 ++++++++++++++++++-----
 6 files changed, 1091 insertions(+), 214 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 658ffd4..d862260 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -78,7 +78,7 @@ From the application point of view, each instance of a bbdev device consists of
 one or more queues identified by queue IDs. While different devices may have
 different capabilities (e.g. support different operation types), all queues on
 a device support identical configuration possibilities. A queue is configured
-for only one type of operation and is configured at initialization time.
+for only one type of operation and is configured at initializations time.
 When an operation is enqueued to a specific queue ID, the result is dequeued
 from the same queue ID.
 
@@ -91,8 +91,7 @@ and queue configuration is applied with
 ``rte_bbdev_queue_configure(dev_id,queue_id,conf)``. Note that, although all
 queues on a device support same capabilities, they can be configured differently
 and will then behave differently.
-Devices supporting interrupts can enable them by using
-``rte_bbdev_intr_enable(dev_id)``.
+Devices supporting interrupts can enable them by using ``rte_bbdev_intr_enable(dev_id)``.
 
 The configuration of each bbdev device includes the following operations:
 
@@ -150,8 +149,6 @@ device. Once closed, it cannot be restarted.
     int rte_bbdev_start(uint16_t dev_id)
     int rte_bbdev_stop(uint16_t dev_id)
     int rte_bbdev_close(uint16_t dev_id)
-    int rte_bbdev_queue_start(uint16_t dev_id, uint16_t queue_id)
-    int rte_bbdev_queue_stop(uint16_t dev_id, uint16_t queue_id)
 
 
 By default, all queues are started when the device is started, but they can be
@@ -166,9 +163,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +217,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +231,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +263,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +333,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +403,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +452,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +522,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +549,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +624,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +655,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +676,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +707,373 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependant on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (transport block mode only)          |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (code block mode only)         |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependant on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index fe59b16..761cb95 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -605,9 +605,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -619,9 +619,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1386,15 +1386,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1728,15 +1728,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5204a77..c714d03 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -33,9 +33,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -101,7 +101,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -154,9 +154,9 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -168,8 +168,8 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -248,7 +248,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -268,7 +268,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -286,7 +286,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -304,7 +304,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -429,9 +429,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -456,9 +456,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -745,9 +745,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1027,7 +1027,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index a3ab5d9..7e4acfc 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev * __rte_experimental
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev * __rte_experimental
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev * __rte_experimental
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev * __rte_experimental
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool * __rte_experimental
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index d131692..63e382d 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -43,7 +43,7 @@
 #define RTE_BBDEV_MAX_DEVS 128  /**< Max number of devices */
 #endif
 
-/** Flags indicate current state of BBDEV device */
+/** Flags indiciate current state of BBDEV device */
 enum rte_bbdev_state {
 	RTE_BBDEV_UNUSED,
 	RTE_BBDEV_INITIALIZED
@@ -161,7 +161,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -313,7 +313,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -433,6 +433,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -506,6 +514,67 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -566,6 +635,68 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index 6be53f5..d339873 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,62 +26,66 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,110 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +216,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +228,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +236,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +251,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+};
+
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +352,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	* per bit of the original CB.
+	*/
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+	};
+};
+
+/** Turbo encode code block parameters */
+struct rte_bbdev_op_enc_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** Turbo encode transport block parameters */
+struct rte_bbdev_op_enc_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +545,38 @@ struct rte_bbdev_op_enc_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +593,127 @@ struct rte_bbdev_op_enc_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched CB or TB output buffer */
 	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
+	};
+};
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched TB or CB output buffer */
+	struct rte_bbdev_op_data output;
+
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 0:Basegraph 0, 1: Basegraph 1. */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +721,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -513,7 +844,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -548,7 +880,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 3/5] baseband/turbo_sw : Extension of turbo_sw for 5G FEC
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
                   ` (2 preceding siblings ...)
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 2/5] bbdev : Extension of BBDEV for 5G FEC Nic Chautru
@ 2019-05-11  0:06 ` Nic Chautru
  2019-05-11  0:06   ` Nic Chautru
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 4/5] test-bbdev : Update of bbdec test-app for FPGA and 5G testing Nic Chautru
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 config/common_base                               |   3 +-
 doc/guides/bbdevs/turbo_sw.rst                   |  57 +-
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 679 ++++++++++++++++++++++-
 mk/rte.app.mk                                    |   8 +-
 7 files changed, 731 insertions(+), 37 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/config/common_base b/config/common_base
index ae52028..78e41f2 100644
--- a/config/common_base
+++ b/config/common_base
@@ -523,7 +523,8 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 CONFIG_RTE_LIBRTE_BBDEV=y
 CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
+CONFIG_RTE_BBDEV_OFFLOAD_COST=n
+CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 29f7ec9..e67ecc4 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -1,26 +1,26 @@
 ..  SPDX-License-Identifier: BSD-3-Clause
     Copyright(c) 2017 Intel Corporation
 
-SW Turbo Poll Mode Driver
+SW FEC Poll Mode Driver
 =========================
 
-The SW Turbo PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
-Intel optimized libraries for LTE Layer 1 workloads acceleration. This PMD
-supports the functions: Turbo FEC, Rate Matching and CRC functions.
+The SW FEC PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
+Intel optimized libraries for LTE and 5GNR Layer 1 workloads acceleration. This PMD
+supports the functions: FEC, Rate Matching and CRC functions.
 
 Features
 --------
 
-SW Turbo PMD has support for the following capabilities:
+SW FEC PMD has support for the following capabilities:
 
-For the encode operation:
+For the LTE encode operation:
 
 * ``RTE_BBDEV_TURBO_CRC_24A_ATTACH``
 * ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 * ``RTE_BBDEV_TURBO_RATE_MATCH``
 * ``RTE_BBDEV_TURBO_RV_INDEX_BYPASS``
 
-For the decode operation:
+For the LTE decode operation:
 
 * ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE``
 * ``RTE_BBDEV_TURBO_CRC_TYPE_24B``
@@ -29,11 +29,25 @@ For the decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -65,14 +79,14 @@ The following table maps DPDK versions with past FlexRAN SDK releases:
    18.02                  1.3.0
    18.05                  1.4.0
    18.08                  1.6.0
-   19.02                  18.09
+   18.08-Patch            19.04
    =====================  ============================
 
 FlexRAN SDK Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
 The following are pre-requisites for building FlexRAN SDK Libraries:
- (a) An AVX2 supporting machine
+ (a) An AVX512 supporting machine
  (b) CentOS Linux release 7.2.1511 (Core) operating system
  (c) Intel ICC 18.0.1 20171018 compiler installed
 
@@ -84,25 +98,25 @@ The following instructions should be followed in this exact order:
 
         source <path-to-icc-compiler-install-folder>/linux/bin/compilervars.sh intel64 -platform linux
 
-#. Extract the ``605167-flexran-18-09-tar.gz`` package:
+#. Extract the ``...-flexran-19-04-tar.gz`` package:
 
     .. code-block:: console
 
-        mkdir FlexRAN-18.09
-        tar xvzf 605167-flexran-18-09-tar.gz -C FlexRAN-18.09/
+        mkdir FlexRAN-19.04
+        tar xvzf ...-flexran-19-04-tar.gz -C FlexRAN-19.04/
 
 #. Run the SDK extractor script and accept the license:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/
-        ./SDK-18.09.sh
+        cd <path-to-workspace>/FlexRAN-19.04/
+        ./SDK-19.04.sh
 
 #. Generate makefiles based on system configuration:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
+        cd <path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
         ./create-makefiles-linux.sh
 
 #. A build folder is generated in this form ``build-<ISA>-<CC>``, enter that
@@ -110,7 +124,7 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
 
@@ -129,12 +143,11 @@ Example:
 
 .. code-block:: console
 
-    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/build-avx2-icc/install
-    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
-
+    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/build-avx2-icc/install
+    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
 
-* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` in DPDK common configuration
-  file ``config/common_base``.
+* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` and ``CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=y``
+  in DPDK common configuration file ``config/common_base``.
 
 To use the PMD in an application, user must:
 
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index d364677..1a47dfb 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -26,12 +26,25 @@ CFLAGS += -I$(FLEXRAN_SDK)/lib_common
 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+endif
 
 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
-LDLIBS += -lstdc++ -lirc -limf -lipps
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
+LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 
 # library version
 LIBABIVER := 1
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index c714d03..af5e731 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,9 +14,23 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
+
 #include <divide.h>
 
 #define DRIVER_NAME baseband_turbo_sw
@@ -154,7 +168,8 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
 						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
@@ -168,10 +183,46 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			}
+		},
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
 			}
 		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.num_buffers_src =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
@@ -268,7 +319,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -276,7 +327,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -410,6 +461,7 @@ struct turbo_sw_queue {
 	.queue_release = q_release
 };
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -437,7 +489,9 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the decoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -464,15 +518,20 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -496,11 +555,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -529,11 +591,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -560,13 +625,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -726,6 +794,143 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -819,6 +1024,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -835,6 +1127,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
 		uint16_t ncb)
@@ -856,7 +1165,11 @@ struct turbo_sw_queue {
 		uint16_t crc24_overlap, uint16_t in_length,
 		struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -874,11 +1187,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -894,11 +1209,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -975,6 +1291,196 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		/* get output data starting address */
+		harq_out = NULL;
+		if (m_harq_out != NULL)
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq output mbuf");
+			return;
+		}
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1033,6 +1539,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1054,6 +1561,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1077,6 +1681,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1096,6 +1717,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1111,6 +1750,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1223,6 +1880,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 21d32a2..060e0ec 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -225,8 +225,14 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 3/5] baseband/turbo_sw : Extension of turbo_sw for 5G FEC
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 3/5] baseband/turbo_sw : Extension of turbo_sw " Nic Chautru
@ 2019-05-11  0:06   ` Nic Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 config/common_base                               |   3 +-
 doc/guides/bbdevs/turbo_sw.rst                   |  57 +-
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 679 ++++++++++++++++++++++-
 mk/rte.app.mk                                    |   8 +-
 7 files changed, 731 insertions(+), 37 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/config/common_base b/config/common_base
index ae52028..78e41f2 100644
--- a/config/common_base
+++ b/config/common_base
@@ -523,7 +523,8 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 CONFIG_RTE_LIBRTE_BBDEV=y
 CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
+CONFIG_RTE_BBDEV_OFFLOAD_COST=n
+CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 29f7ec9..e67ecc4 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -1,26 +1,26 @@
 ..  SPDX-License-Identifier: BSD-3-Clause
     Copyright(c) 2017 Intel Corporation
 
-SW Turbo Poll Mode Driver
+SW FEC Poll Mode Driver
 =========================
 
-The SW Turbo PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
-Intel optimized libraries for LTE Layer 1 workloads acceleration. This PMD
-supports the functions: Turbo FEC, Rate Matching and CRC functions.
+The SW FEC PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
+Intel optimized libraries for LTE and 5GNR Layer 1 workloads acceleration. This PMD
+supports the functions: FEC, Rate Matching and CRC functions.
 
 Features
 --------
 
-SW Turbo PMD has support for the following capabilities:
+SW FEC PMD has support for the following capabilities:
 
-For the encode operation:
+For the LTE encode operation:
 
 * ``RTE_BBDEV_TURBO_CRC_24A_ATTACH``
 * ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 * ``RTE_BBDEV_TURBO_RATE_MATCH``
 * ``RTE_BBDEV_TURBO_RV_INDEX_BYPASS``
 
-For the decode operation:
+For the LTE decode operation:
 
 * ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE``
 * ``RTE_BBDEV_TURBO_CRC_TYPE_24B``
@@ -29,11 +29,25 @@ For the decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -65,14 +79,14 @@ The following table maps DPDK versions with past FlexRAN SDK releases:
    18.02                  1.3.0
    18.05                  1.4.0
    18.08                  1.6.0
-   19.02                  18.09
+   18.08-Patch            19.04
    =====================  ============================
 
 FlexRAN SDK Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
 The following are pre-requisites for building FlexRAN SDK Libraries:
- (a) An AVX2 supporting machine
+ (a) An AVX512 supporting machine
  (b) CentOS Linux release 7.2.1511 (Core) operating system
  (c) Intel ICC 18.0.1 20171018 compiler installed
 
@@ -84,25 +98,25 @@ The following instructions should be followed in this exact order:
 
         source <path-to-icc-compiler-install-folder>/linux/bin/compilervars.sh intel64 -platform linux
 
-#. Extract the ``605167-flexran-18-09-tar.gz`` package:
+#. Extract the ``...-flexran-19-04-tar.gz`` package:
 
     .. code-block:: console
 
-        mkdir FlexRAN-18.09
-        tar xvzf 605167-flexran-18-09-tar.gz -C FlexRAN-18.09/
+        mkdir FlexRAN-19.04
+        tar xvzf ...-flexran-19-04-tar.gz -C FlexRAN-19.04/
 
 #. Run the SDK extractor script and accept the license:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/
-        ./SDK-18.09.sh
+        cd <path-to-workspace>/FlexRAN-19.04/
+        ./SDK-19.04.sh
 
 #. Generate makefiles based on system configuration:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
+        cd <path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
         ./create-makefiles-linux.sh
 
 #. A build folder is generated in this form ``build-<ISA>-<CC>``, enter that
@@ -110,7 +124,7 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
 
@@ -129,12 +143,11 @@ Example:
 
 .. code-block:: console
 
-    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/build-avx2-icc/install
-    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
-
+    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/build-avx2-icc/install
+    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
 
-* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` in DPDK common configuration
-  file ``config/common_base``.
+* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` and ``CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=y``
+  in DPDK common configuration file ``config/common_base``.
 
 To use the PMD in an application, user must:
 
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index d364677..1a47dfb 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -26,12 +26,25 @@ CFLAGS += -I$(FLEXRAN_SDK)/lib_common
 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+endif
 
 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
-LDLIBS += -lstdc++ -lirc -limf -lipps
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
+LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 
 # library version
 LIBABIVER := 1
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index c714d03..af5e731 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,9 +14,23 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
+
 #include <divide.h>
 
 #define DRIVER_NAME baseband_turbo_sw
@@ -154,7 +168,8 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
 						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
@@ -168,10 +183,46 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			}
+		},
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
 			}
 		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.num_buffers_src =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
@@ -268,7 +319,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -276,7 +327,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -410,6 +461,7 @@ struct turbo_sw_queue {
 	.queue_release = q_release
 };
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -437,7 +489,9 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the decoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -464,15 +518,20 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -496,11 +555,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -529,11 +591,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -560,13 +625,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -726,6 +794,143 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -819,6 +1024,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -835,6 +1127,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
 		uint16_t ncb)
@@ -856,7 +1165,11 @@ struct turbo_sw_queue {
 		uint16_t crc24_overlap, uint16_t in_length,
 		struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -874,11 +1187,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -894,11 +1209,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -975,6 +1291,196 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		/* get output data starting address */
+		harq_out = NULL;
+		if (m_harq_out != NULL)
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq output mbuf");
+			return;
+		}
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1033,6 +1539,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1054,6 +1561,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1077,6 +1681,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1096,6 +1717,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1111,6 +1750,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1223,6 +1880,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 21d32a2..060e0ec 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -225,8 +225,14 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 4/5] test-bbdev : Update of bbdec test-app for FPGA and 5G testing
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
                   ` (3 preceding siblings ...)
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 3/5] baseband/turbo_sw : Extension of turbo_sw " Nic Chautru
@ 2019-05-11  0:06 ` Nic Chautru
  2019-05-11  0:06   ` Nic Chautru
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 5/5] usertools: update to usertool to allow binding of baseband device Nic Chautru
                   ` (2 subsequent siblings)
  7 siblings, 1 reply; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 +++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  517 ++++-
 app/test-bbdev/test_bbdev_vector.h                 |   14 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 ++++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 ++++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 +++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 +++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 +++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 +++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 ++++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 +++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 50 files changed, 21936 insertions(+), 165 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 100644
index 0000000..e1df6ea
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_HARQ_1_1.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 100644
index 0000000..9901517
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
\ No newline at end of file
diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..653907d 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -6,4 +6,4 @@ sources = files('main.c',
 		'test_bbdev_perf.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
-deps += ['bbdev', 'bus_vdev']
+deps = ['bbdev', 'bus_vdev']
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
old mode 100755
new mode 100644
index 25340ec..a94ba9a
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -23,7 +23,7 @@ def kill(process):
 if "RTE_TARGET" in os.environ:
     dpdk_target = os.environ["RTE_TARGET"]
 else:
-    dpdk_target = "x86_64-native-linux-gcc"
+    dpdk_target = "x86_64-native-linuxapp-gcc"
 
 parser = argparse.ArgumentParser(
                     description='BBdev Unit Test Application',
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..cb5d06f 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,57 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set pf mode, true if PF is used for dataplane,
+		 *  false for VFs
+		 */
+
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +783,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +822,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +868,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +887,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +942,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +976,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +997,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1106,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1305,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1386,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1423,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1456,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1489,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1526,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1553,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1568,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1619,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
+
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
 		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
 
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
 		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1706,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1730,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1775,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1798,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1883,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1898,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1987,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2098,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2285,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2298,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2451,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2474,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2494,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2542,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1860,9 +2584,11 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2666,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2804,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2907,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2916,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2995,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3029,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3060,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3162,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3195,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3223,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3341,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3369,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3395,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3501,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3517,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..d478d76 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -2,7 +2,7 @@
  * Copyright(c) 2017 Intel Corporation
  */
 
-#ifdef RTE_EXEC_ENV_FREEBSD
+#ifdef RTE_EXEC_ENV_BSDAPP
 	#define _WITH_GETLINE
 #endif
 #include <stdio.h>
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..c8d38e3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,354 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..19a1537
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,685 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..d1f8f45
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,903 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
new file mode 100644
index 0000000..2588655
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
@@ -0,0 +1,939 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_HARQ
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x07151003, 0x09FBFA0E, 0xFB0BF9EE, 0xFC1306F8, 0x0BF6FCFB, 0x0407F709, 0x0CF30FF1, 0x10F7070F,
+0xFEFB0EF8, 0x0F0B12F5, 0xF3F506F2, 0x0B05F0F0, 0x00FA050B, 0xF40C15F6, 0xF7FAF5F5, 0xF7EC140A,
+0x05F20C0D, 0xF6060D10, 0xF90FF8EF, 0xEF08F20D, 0xF8F9F80D, 0x06F4F5ED, 0xFD12F3FE, 0x0610F30D,
+0x0312EEF8, 0x0DFB03F8, 0x01031408, 0xFD0E02F3, 0xF1EE0AFF, 0x0AF609F8, 0x1503FAFC, 0x0DFF04FD,
+0xED0F0F0F, 0x0CF7FE0C, 0x1006F1EE, 0x14EEF00A, 0xEE0AF2F2, 0x0BED04F2, 0x0612F5F2, 0x0FF314F4,
+0x00F00D04, 0x08140509, 0x05EC0E18, 0xF40B09F8, 0xE90F01EF, 0x0DFDFB02, 0x07EF10F3, 0x03F211ED,
+0xEF16FD00, 0x06F4040A, 0x0B0BF910, 0x0B0206F8, 0x0D0109ED, 0xECF2F006, 0xFFF50A07, 0xFB06F5F7,
+0x0D0EF210, 0x07010611, 0x06F2F9F8, 0x0E06EF00, 0x070CF1F8, 0x0C0FF405, 0x10EA0CF6, 0xFDEF0B14,
+0x17FCF80C, 0x08F506F4, 0x09000AFF, 0xFA05F50C, 0x040DF9F6, 0x0A0B12FD, 0x12F41201, 0xF20707F3,
+0xFDF402F8, 0xFDFB0FF0, 0xEE070D05, 0xE9F0F006, 0xFCF8F1F4, 0xF9FA0F0D, 0xE9050B09, 0xEEF2140D,
+0x020AF5F8, 0xFBED0CF6, 0xF110F4EF, 0x0C07130A, 0xEF12FD0A, 0xF6050708, 0x10F1FA00, 0x0B0CF40D,
+0x04F5FBFF, 0x00EEF2FF, 0xEFF9F701, 0xFA140DF8, 0xF404ECFC, 0x0A04EDF9, 0x0213080C, 0xF1F60916,
+0xF0F40000, 0x1303F614, 0xF009FFF2, 0xF8F5F2FA, 0x0B0C0414, 0xFB0E0EFA, 0x12010B11, 0xF50EFA05,
+0xF4FBFA09, 0x130605EF, 0x0B030B0E, 0x0717E7F3, 0xF405FDF5, 0xEFF5EAFE, 0x07F9F3FB, 0xF9FD0812,
+0x0DF70A16, 0x05F210F4, 0x06F708F3, 0x040C0EF9, 0x090D0AF2, 0x02FFF9FB, 0xF7F5FD12, 0xFF0BF5FB,
+0xF1F60A0C, 0x01EF13FD, 0x070BED0D, 0xF10A0BF7, 0x01010BF4, 0xF703FBF6, 0x06FAFA05, 0x050CEFFD,
+0x1107EE00, 0xF5EEFBF0, 0xF3EF0615, 0xF203FC12, 0x0FEC000B, 0xF70C0C06, 0x04F6EE0E, 0x0EF1070C,
+0xFE0D0A10, 0xF6EC0CFA, 0xF5060D07, 0xF708E8F0, 0xF5EEFDF7, 0xEE09F6FD, 0x020AEEFC, 0x090BE811,
+0xF70CFCF7, 0xEFF809F1, 0xF00AF1F5, 0xF00C0CFB, 0xFC0AF4FF, 0xF8FB0817, 0xEEEFFA04, 0xFB04EC08,
+0x02F411FE, 0xFCFDF2F4, 0x06EB0307, 0xF905F108, 0xF4ED09F7, 0xF7FFF010, 0x0CF601E8, 0xEEF714F0,
+0xF502EFFA, 0x0A000AF1, 0xF5F30501, 0xF1F008F2, 0xFD06EC11, 0xE9FA02FF, 0x0A15F6F4, 0xF307080C,
+0x10F7F20B, 0xF9F90402, 0x09FEF315, 0x0DFA060B, 0xF6FC08F7, 0xF707FB06, 0xF00A050E, 0xF40608FD,
+0xF6F8F1F5, 0xFAFBFDF7, 0x0AFA0A11, 0x03080C09, 0x11F1F8FF, 0xFF000CE9, 0xF7120C0A, 0x05F4FD03,
+0xF5030203, 0x0C0914F8, 0xFDF8080B, 0x12FBFD0A, 0xF308FF09, 0xF9FA0B14, 0x0EF71117, 0xF50AF2EF,
+0x0D160610, 0xF2FBFE0F, 0xF907F5FC, 0xFE110707, 0x0D0BF9F7, 0xFC050808, 0x0B08F5FC, 0xF206F1F9,
+0x1DF5FAFF, 0x0BF0060C, 0x020C110E, 0xFB040007, 0x02F4F4F8, 0x0D100EF0, 0x110201F3, 0x06F5EA00,
+0xF4E80DFE, 0x0A0E0A01, 0x07FB0DF7, 0x06E7F712, 0xFDFE06F9, 0xF4F00CF0, 0x0809F5F9, 0xF30CFA09,
+0x16F6EFF2, 0xFEF6EBFA, 0x0D0E090D, 0xF70DEF08, 0xF015F0F3, 0x15011206, 0xF305ECF2, 0x180301FC,
+0xFBF2F1F8, 0x05F9070F, 0xFC0C0813, 0xF3F9F2FD, 0x11F30EEF, 0x00FCEDFE, 0x0D05F810, 0x10F7FDF9,
+0xF9EA0AE9, 0x0BFA08F3, 0xF90505F8, 0x10FA0DF8, 0x14FB14FE, 0xF0F6EDF3, 0x0D03F8FC, 0x0AF00E0E,
+0x0C000203, 0x08F81612, 0xFAF1FFF9, 0x100CFDF3, 0xF609F1FA, 0xF5FB14FC, 0x0CFD0808, 0xF000FE0D,
+0x04F7070A, 0x12F50F00, 0xF90FEE08, 0x110CEFFA, 0x090C0B0A, 0x0D0B0DF4, 0x0EFBF80C, 0xFC030604,
+0x09F804FA, 0xF2F709F5, 0x08FF0F13, 0xF2FAFA02, 0xF101F512, 0x0E0B07F4, 0xF60FF9F7, 0xFBF4F107,
+0x05F6FD07, 0x0EEC080C, 0xFBFBFFEE, 0xF713FCF8, 0x0D08F6FB, 0x1612060D, 0x120DF4FE, 0xF50AECF5,
+0x02F00BF5, 0x0A05FF10, 0x0C020A06, 0xFAF4EB0E, 0x03F7F8F3, 0x13F4F9F5, 0xF70BF00D, 0xF302F614,
+0xF00A04F6, 0x0BFA100F, 0x0BF70B0A, 0x020713F4, 0x06F7F5E7, 0xF905F101, 0x04090812, 0xFFF9090C,
+0xF8F4F3F5, 0xF1FE07EF, 0x03FC0708, 0x03FFFCFF, 0xEEF90812, 0xFDF7FC0A, 0x150A0008, 0x09FFF3F9,
+0x06F2F2F1, 0xF0120BEF, 0xF90CF3F7, 0xF804ECFB, 0xF7E806F5, 0xFF0109FD, 0xEB08E70D, 0xF2FAF40C,
+0x06F70DED, 0xF1120216, 0xFF060DFB, 0x0EE70D01, 0xF5FFF6FF, 0x07F0ED0D, 0xF10A0C07, 0xF4F0EF0C,
+0x09F607F7, 0xF80BFF00, 0x030E07F4, 0xF80813F4, 0xEFF8F80F, 0x0AF2FC0B, 0xF303F4F0, 0xF1F9F5FD,
+0xFDF90402, 0x04FDF203, 0xF51B0EEF, 0x03F2F0FC, 0x07FC11F1, 0xF5F60F11, 0xF00D0907, 0xF317F20B,
+0x10031C00, 0x04F40009, 0xF011090D, 0x1006000B, 0x16FF0FF8, 0x0DF61110, 0x0CF70D04, 0x02F8F7FF,
+0x06FE0B09, 0x0D08F8F8, 0x080DFB06, 0xEF0F0E0C, 0xFF0CF908, 0x0305FDF4, 0xF4EE0E10, 0x08EA05EE,
+0x0B0A06FD, 0xF9FBFFFD, 0x0EF20605, 0x0EF2F6F7, 0x01FE0EF9, 0xF50107F7, 0x04F80616, 0xFEEEF4F3,
+0x140D08FB, 0x0F0C03F4, 0xFBF8FC01, 0x0D02EBF9, 0xED06F905, 0x1FF8F0F4, 0x0E0CF3FE, 0x0DF31402,
+0xFD0E07F2, 0x06F4F60C, 0x02150B06, 0xFCF2E901, 0x07F5F7F4, 0x02F017E6, 0x00F90305, 0x1008FD0D,
+0xF5F10B08, 0x09FB04F6, 0xFCF702F4, 0xF10F15F0, 0x071213FC, 0xF5EB0F08, 0xFDF6F005, 0x12EEFC18,
+0xF0FC0606, 0xFC0D0DF9, 0x0709ECFD, 0x0A0608F7, 0xFEEE14F0, 0xEDF60AFE, 0xED04090C, 0x12F50BF3,
+0x01F6010D, 0x0BEAF019, 0xF0080EF5, 0xFB08F2ED, 0x07120BFB, 0x040612F1, 0xFF0A10F0, 0xF6F4F30D,
+0x0D0700F9, 0xF6EC0BED, 0x030D010E, 0xF300F813, 0xEFF70FF7, 0xF2020D0B, 0xFC0B0AF0, 0xFA02F4F2,
+0x0E0BF005, 0xEE04F6F9, 0x1302F9F3, 0x08150603, 0xFB0D0407, 0xFFFFF7F8, 0x050FF8EF, 0xF4F6F3F9,
+0xEFF707FD, 0x04FBF5F0, 0x0DFCED00, 0xF10BEEF9, 0x07F80A12, 0xFBECFEF7, 0x06F3F704, 0x06EFF9FD,
+0x0016FF04, 0x03E41207, 0xEFF6EE14, 0x0802F413, 0xFE010A05, 0xF20403F8, 0x1AFBF816, 0x12EC100D,
+0x0EF70707, 0x04E6100E, 0xEF090D01, 0xF5EE1CF4, 0xF4F50609, 0xEFFFF50C, 0xF2F0FC05, 0x0102160B,
+0xF41015F9, 0x12F1F70C, 0x0FFFF10B, 0x0EF2F40B, 0xF8FD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF71108,
+0x05F30A06, 0xF7090DF0, 0x031AF9FB, 0xF8EC1A08, 0xF4EEF509, 0xF20202F6, 0x0E0B050F, 0xFBFBF30D,
+0x09ED0C0A, 0xF0F6FAF7, 0xF7FB04EB, 0x08ECF8FA, 0x0E10ECFC, 0xED040314, 0xE9EF0CF4, 0xF6F904FD,
+0xF7000001, 0xEFF01007, 0xFF0C1302, 0x05F4F2FC, 0xF908FB0B, 0xECF80AFE, 0xFDF7F302, 0xEA12EFF0,
+0x0F0F0D07, 0xF6FC0103, 0xF40607F5, 0xF2EF0FF9, 0xF6070005, 0xF40503FA, 0xEE0B06F8, 0x0100050A,
+0xF913F7FD, 0xF5EF0B01, 0xFDEEFBFF, 0xEEEDEA03, 0xF8F7F80F, 0x070D0F0C, 0xF50502F0, 0x0BFBF001,
+0x0A0CF008, 0xF6ED070B, 0x1A020DFE, 0xFDF2F818, 0x09010BF9, 0xF6ED0308, 0x040EFA02, 0xF9F2FB10,
+0xEF100B07, 0xF5FAF50C, 0x0F0CE9F9, 0xFB0E1304, 0xF103070D, 0x0CF3020D, 0xF80FF705, 0xFB1205ED,
+0xF5F1EB00, 0x0D070C1B, 0x0DF704F4, 0xF107FE09, 0xEF03F8F6, 0xFA020509, 0xFDF40A14, 0x16081215,
+0x09F5F7F6, 0x0EF8F6F0, 0x0AFB0EEE, 0xF3FC02F9, 0x0812EE0C, 0xFCF90710, 0xF6EA00F5, 0x0A04F0FB,
+0x09F7EE0B, 0x13F3F4F5, 0x11F718EF, 0x0CFC0BFC, 0xF70AEAFE, 0xFCF201FB, 0xF4000F01, 0xFBEE11EC,
+0xF70AF4FA, 0x0D020BED, 0x08FE090D, 0xF907F6FC, 0xFAF2F309, 0x0D10FD0C, 0x0E06FAEE, 0xFCFBFE06,
+0x15F8F4FC, 0x020D160B, 0xFFF4FB0C, 0x04FDE8FC, 0x090C120B, 0x0B1010F2, 0xF9EE0DF3, 0x0C03080D,
+0xF109FCFD, 0x0CF8EB11, 0x0604EE08, 0x07F8F4F6, 0xF807F8F8, 0xFCF51400, 0x050EFD0F, 0x0C0CF216,
+0xF9FFF20D, 0x0802F50D, 0xF50213F5, 0x0C0BF804, 0xF609F8EF, 0xF90AF509, 0xF914FEFA, 0xF10BEA0A,
+0xF8F3050A, 0x10F5F6FF, 0x0A120BFD, 0xF5F5ECF9, 0xF90DFC0C, 0xF20808F1, 0x01EEF00D, 0xF5EC0FF2,
+0xF4F30EEA, 0xEFFAF702, 0xFC17F6F7, 0x0C07F6FE, 0xF1ECF9FF, 0x09FEF4FF, 0xFA020B11, 0xFFEDFC0B,
+0x07F4ECFA, 0x02F6F6F4, 0x09F712F1, 0x0806EA0E, 0xF7F7F81A, 0x0B08EF07, 0x100CFCF7, 0xEFFB08F2,
+0xFAF0FD0C, 0xF3F31111, 0x16F5000F, 0x0DF10608, 0xFA07F3F3, 0x13F108FE, 0xEDEB120E, 0xFFF4F005,
+0x07F304F9, 0xF408FCFC, 0xFCFE0500, 0xF5F6ECF3, 0xF70609F3, 0x09020C01, 0x1001F80F, 0x0C0DFCF4,
+0xFB0F10F2, 0xF7F50B0B, 0x08F2F4F8, 0xF70BF6F8, 0x18F60808, 0xF107F9FC, 0x13F3F40C, 0x00EC0AFB,
+0x0BF30711, 0x06FFF70E, 0x17FC0AF4, 0x04E412F7, 0x0FF7FEF4, 0xFCF80209, 0x13FDED0D, 0x02F00801,
+0xF5070E05, 0xF111F6F1, 0x00F4E4FA, 0xF90E0E00, 0x07F4F50F, 0x0E0C0FF8, 0x14F70B0A, 0x09F6F4F7,
+0xECFD07F4, 0xF0070A04, 0x0112FAF3, 0xFF11EFF5, 0xF8F90905, 0x0409F507, 0xEAF7FBE9, 0xF1F5F0FF,
+0xF6F8F50F, 0x0BEA040A, 0xF701EFF1, 0x0D04F703, 0xEB07FE09, 0x1309F8E7, 0xF80BF3F8, 0x0EF6F50A,
+0x0912F6F1, 0x05FA0314, 0x0719F6EF, 0x1204FAE5, 0x0C0BF9FD, 0x0AF411EF, 0xF4F8EEF3, 0x02F0F10C,
+0x0F030107, 0x0AFEEF01, 0xFE0806F1, 0xF6F3FF15, 0x0B07E9F5, 0x05F9FB08, 0x03F8F3F5, 0x0FF7FD0E,
+0xF50DF7F8, 0xF6F7FEFF, 0x12F4F306, 0xFE05FB0B, 0xF2F2F2F6, 0xFAFB00EE, 0x0E110F06, 0xFA000CFD,
+0x0E02110A, 0xFA07E902, 0xF9FCF6F0, 0x0E08FCF5, 0x0514EFFB, 0xFDEEF4F8, 0xF9F70004, 0x0B07F9EC,
+0xE5140FF1, 0xF8090E06, 0x09EBEF0B, 0xFB0D0D09, 0xECFD0AF8, 0x0A02F512, 0xF504F90E, 0x0DF3030B,
+0x1002F20C, 0xFBEAFB02, 0x0AFD0805, 0xF1F1F6F4, 0xF807EFF7, 0x010107FA, 0xEE0DF6F9, 0xF90A0CFA,
+0x10F6F50C, 0x0B0B16FC, 0xF608F305, 0xFD15F308, 0xF9121515, 0xFA0BFF0A, 0x04F7FF0D, 0x0CFB03FB,
+0xFD160B0A, 0xFDEFF5FB, 0x0C17090A, 0x08090B09, 0xEAF5F5F8, 0xFFFB00FC, 0x0800FFF6, 0xF111E612,
+0x00F2F6F5, 0xFAEFEDF4, 0x0F0FFCFB, 0xF01009F8, 0xF6F4EFF7, 0xF3F0FB05, 0xFE02FAFD, 0x12EFF5F4,
+0xF3090907, 0x0B07FC11, 0x0CED110F, 0xF00709F5, 0x03FEF2F6, 0x04F702FA, 0xFB0C05F9, 0x09FAFC12,
+0x08F20E06, 0xFEE80BF5, 0x0AEA10EC, 0x08FAF1F8, 0x0A1012F8, 0x0306F6FD, 0xFB050811, 0xFFF80E05,
+0xF6F51212, 0x0705000B, 0x07F809F7, 0x07091503, 0x080B04F7, 0xF20DFDEF, 0x0809EEF2, 0x0F0D0C05,
+0x02FFF90E, 0x050A0EF4, 0xF4EEFF00, 0x08F5EDF5, 0xF1FFF500, 0x0DF4F80D, 0x03F614F6, 0x17F6FC12,
+0x08050A04, 0xF5E5F210, 0x0B0004FA, 0xFCEF101E, 0x0BFFFB05, 0xFEF202FD, 0x0A05F703, 0x090DF8FD,
+0xFF0904FE, 0xF90816F8, 0x0315FE06, 0x02F9E0F5, 0x1A07001D, 0x120EFE0A, 0x0F0D1305, 0x13FEFA14,
+0xF2EE0D03, 0x070D0202, 0xEFFA10ED, 0xF1040B11, 0x04FDF103, 0x01F2FAF2, 0x010CF60D, 0xF6E9EF04,
+0x050C10F8, 0x09F6F600, 0xEFF5F909, 0x05F40D0E, 0x08FA0A1B, 0xF9F40803, 0xF7F9040B, 0xFB10FBF9,
+0xF60810F5, 0xF0060BEE, 0xE60FEEFE, 0x07140DFA, 0x070F0D11, 0x020402F5, 0xEDF905F4, 0xF6F0F9EA,
+0xFC1404FF, 0xF10B13F9, 0xFF0FF80D, 0xF403EE0C, 0x0C0E0706, 0x05170E07, 0xF1F7F40F, 0xEFED0EF8,
+0xF8EF0D12, 0x0CFFF6F8, 0x0E090906, 0xF4F40612, 0x090C0301, 0xEF0A12F6, 0x0AF506F9, 0x0D0BFB11,
+0x0A0EF50C, 0x140BF6F9, 0x0DECFEE8, 0xF6F50004, 0x0C00080C, 0xF5EC11F2, 0x03F9EC0E, 0x0411FA09,
+0x11F70B03, 0xFDEA0301, 0x0BF805F6, 0x05EF090A, 0x11FC04FD, 0xF4F3FD09, 0x0AF50614, 0x0CF40B07,
+0x0D010BF5, 0x14071602, 0x070AF80A, 0x11F3F113, 0x0CFA0B0E, 0x0DF8EDEF, 0xEEF9F308, 0x10F6F1F7,
+0xF5F7F6F5, 0x10050304, 0x07F50AF4, 0xF4F9FEF6, 0x0B02FD0B, 0xF210FCED, 0x04ED0BE9, 0x18FAFA0E,
+0xF5F308F2, 0xE90808F9, 0xFA0CEAFF, 0x06F103FC, 0x0CF705F2, 0x08130D0F, 0x060A08F7, 0xF5FFEEF3,
+0x080C0FF6, 0x0CF6EE06, 0x0F1E06EB, 0x080D0CFA, 0x16F7F5F5, 0x100AF0EE, 0xF4EF020B, 0x04F1F313,
+0xFD07FDF5, 0x110FFBF9, 0x0C081A0C, 0xF7FAF4F8, 0x01F6EB07, 0x100BF7F8, 0xF302F50F, 0x0809EBF9,
+0xF0FDF708, 0x00090DF7, 0xF30100EF, 0xF8F7FDF5, 0xEE000AFB, 0x1C0BF8FA, 0x1004F409, 0xF3ECEF0E,
+0xF51209F1, 0xEAFEF402, 0x0EFC1310, 0x01F8F7FB, 0x0B06F314, 0x0710F90B, 0x03F1F9ED, 0xFA13F2F1,
+0x0907FA02, 0x02FA0601, 0xFD13F708, 0x06FDFA0F, 0x0F04060C, 0xFC03EBF7, 0xEB051312, 0x03FAFFFB,
+0x0BF70708, 0x0312F60C, 0xEC0203EF, 0x0B0AE308, 0xF9FAEEEF, 0xECF30901, 0x050F060B, 0x0003F102,
+0x10FE0AF2, 0x0205F6F5, 0x0112F609, 0xFA03E90B, 0x0B11FF01, 0x0213F107, 0x01070809, 0xEFED0209,
+0xFCEEF50D, 0xF2EDF3FF, 0x070F180D, 0x0E0A14F9, 0xFBF3F3FA, 0xF603F20A, 0xFEF2040A, 0xF7F50D08,
+0xECFE06F1, 0xF100FA0F, 0x0B02FCEB, 0xFF0A0DFC, 0xED00FAF2, 0x0AF307EF, 0x10F0F9F7, 0x060F0DEF,
+0xF4090C10, 0xF10A0A05, 0xF1FBF2F9, 0x0EF9F70A, 0xF502130C, 0x0CF20F0B, 0xFF0F0FFA, 0xFFFFEE0F,
+0x08F5090B, 0x0C090E07, 0x00FBF602, 0xF6F7F404, 0x0DF005F1, 0xF9F7F50C, 0x03F6F5F9, 0x0A1202F8,
+0x0AECEF05, 0x00F5F708, 0x0D0704F6, 0xF4041510, 0xFC050F05, 0xFFEB0BF1, 0xFD0CEDFD, 0xFB05070D,
+0xFD08EDF7, 0xECFCF505, 0xF9F7F8F3, 0x0DFE17F7, 0xF1040310, 0xF403FAFD, 0xF110F6FB, 0x12EF090B,
+0xFDEFF610, 0x0AE7F7F5, 0xF7FBF1FD, 0xFFF5F0F8, 0x06F1F0F0, 0xF8F7010C, 0x0B101AF7, 0x14F60109,
+0xFFFB0FEB, 0x09FE020C, 0xF70BEA10, 0xFFFB0DF4, 0x000608F5, 0xFFF70FFD, 0x040FFA01, 0xF1FA0DFE,
+0x09F3040C, 0x05EEEDF7, 0x0BFAF8F0, 0xEF070A14, 0xFE07F1F4, 0xF5060B15, 0x0EF8070D, 0xEB06F811,
+0xF9F2F60C, 0xEAEEFD0A, 0xF4F1F0E8, 0xF4F01009, 0x1306120C, 0xF9F3F8FD, 0xF9030C0C, 0x1514130C,
+0xF80D06F6, 0xF304F1F9, 0xF7F5F4F7, 0x0006F10B, 0x11F204F7, 0xFC0D0A0C, 0xFE02F6F7, 0x0B06F30F,
+0x13F6FCF5, 0x0C0BFC06, 0xF61011F4, 0x040EF005, 0x1609FC13, 0xF60E060F, 0xF50DED17, 0x12F11106,
+0x0D0C01F6, 0x01FC00F4, 0xF8FCFEE8, 0x03EF03FC, 0x08000C11, 0xFDF3F407, 0xF6091406, 0x0CFC0B09,
+0x040DFD0B, 0xF90FF10B, 0xFBE4FAF9, 0xF7FC0802, 0xF2080D06, 0x06060DF0, 0xF803F20B, 0xF5EEF3FA,
+0xF4FA0EF3, 0xEF04F1EC, 0xF6ED0DF1, 0xF6FB14F6, 0xF50FFAFF, 0x0AE6F409, 0x0DF8FBF7, 0xE7F2F210,
+0xF1F80B0F, 0x0204FD09, 0x0FF707F2, 0xF4F00AF7, 0x0B07F7FC, 0x01F7F9F1, 0x0F0207F5, 0xF80A0E04,
+0x1106010F, 0xF71304F9, 0xF20EF006, 0x0FFE0915, 0x0F02F607, 0x0608FA02, 0xFF0DF2F5, 0x0AEC050E,
+0x06FA1118, 0xFCEFF8F7, 0xF8080D14, 0x010FEF0A, 0xF9FAF6EE, 0x0BF1FE12, 0xF0F30206, 0xFEF40FF1,
+0x0D1105EE, 0x04F6F0FC, 0x0D161006, 0xFC0C12F2, 0xF610FC03, 0xEAFE110D, 0xEBF6FC13, 0x08F3F00C,
+0x0DF501F9, 0xEAF80808, 0x1605F60F, 0xF5F90AFF, 0xF2F4F709, 0xF104EDFA, 0xF5F2F80A, 0x0CF806FB,
+0xF8F2FAF8, 0xF8F3F70E, 0xFE04FB02, 0xF80DF70D, 0xEF0EF4EC, 0xF6F1EEF4, 0x04EBF2EC, 0xF6F50FEF,
+0xEFFA03FB, 0xFFFEF50B, 0x0B0FFCFA, 0x12F715FA, 0xF312ED09, 0xFA04EDF8, 0x0D0DF510, 0x080E07EE,
+0xF90BEE03, 0x0916E91A, 0xFDFC0800, 0x05F70F0F, 0xFE1108FA, 0xFDF6FAF0, 0xF10FF20B, 0x171017E9,
+0xFEEFEEFE, 0x070AFCF8, 0xEAF4FCF3, 0x060A08EB, 0xEEF2FF04, 0x09F6FBF6, 0x07020207, 0x15F5F20B,
+0x18EB010B, 0xFB11F9FD, 0xFF030B08, 0xF3F80C0D, 0xF5F4F7FC, 0xFAE3F604, 0x0AEB1312, 0xEEF70C0A,
+0xF5EE06F1, 0xF614F500, 0x160EF6F2, 0x1A03F010, 0xF4FF0FEB, 0xF0110A17, 0x12FCED08, 0xEC03F5FA,
+0xF8F8020E, 0x0D0DF9F9, 0xF0F503FD, 0x05FCF8F0, 0xF20200FC, 0xF20017EF, 0xFA051100, 0x0D00F8FC,
+0xEF060A12, 0xF0FCF6F6, 0xFC0EFAEF, 0x03090F05, 0xF5040DF4, 0xF608F4F3, 0xF309EF03, 0xF1F2FBFE,
+0x0501050C, 0xF909040C, 0x0EFFFA06, 0xFA04F7F4, 0xF4F9FCED, 0xE9F7EFF8, 0xF8F1F6FC, 0xFE04010A,
+0xF4100BF4, 0xF11005FB, 0xF1FA00F4, 0x05F3F9EF, 0xF6ECFC0C, 0xF90B100A, 0x01FAEBF8, 0xEA0C0D0C,
+0x010E0D13, 0xF3F7F70F, 0x000F0AFC, 0xF9FB0DF5, 0xF1ED08F8, 0x10F902F4, 0x07F8F80B, 0xE9EE10F4,
+0x0F06F2F2, 0x07F50B10, 0x0DFD13F1, 0xF002F508, 0xF818F505, 0x0C0608F7, 0xF0E609F3, 0xEF0CFEF6,
+0x00010CFF, 0x0CF40E01, 0x0EEBF2EC, 0x02FDEDFB, 0x09F3F9FB, 0x13080005, 0x070FF509, 0xF9EC05F3,
+0x020AF0EB, 0xF1FAF3F9, 0xFDF80FF2, 0xF80BEF02, 0x13F003F7, 0x050418F4, 0x020F0BF5, 0x10F41309
+
+harq_input0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF41A1B0E, 0x16F213D5, 0x0A1AF508, 0xEB14E7EB,
+0x18E0F2EA, 0x13E6EFE4, 0x15E9E719, 0xEA12E9E7, 0x1527F215, 0x150C1EEB, 0xFFDDE61B, 0x1D212005,
+0xEDEE23EB, 0x1FDC0513, 0xE4FBE1F6, 0xFBFA03EB, 0xEC24181A, 0xDF1F16DC, 0xE2ED11F1, 0xF1F023E2,
+0x2416E00A, 0x15ECDF18, 0xEA0C21EF, 0xF0E4DCE8, 0xEB0E1701, 0x11EA0F1E, 0xE21808E4, 0x10EAF417,
+0xF71C1B10, 0x0DF8E1E5, 0x15120FF3, 0xE91CE6EC, 0xE3EAF610, 0x0D12FFF8, 0x0A081CE6, 0x0FE6E5F9,
+0xEBE5E3EB, 0xE1F41406, 0xF50BEBEA, 0xE41A0B14, 0xDCF40AE3, 0x0F1213DD, 0x0B1F2414, 0x1E1DF60C,
+0xDE0FEF06, 0x1D00E80E, 0x07020CEE, 0xF72C191C, 0x151FE815, 0xEEEE18E3, 0x1DEA1816, 0x19160E1C,
+0x12E8EC13, 0x23F9061B, 0xE7000DEA, 0x0C19F3EC, 0xE2EEEC22, 0x14F1EEE3, 0x00EA1BDE, 0x15EADE1E,
+0xDEF9ED20, 0x0FE90A20, 0xEFECFADB, 0x0AECF70C, 0xE4DD160D, 0x0921E31C, 0x1409E20B, 0xF211E414,
+0xE1F11A1B, 0x0ADA1716, 0x100CE6EF, 0x161513FE, 0xEEE416E7, 0x1D0724EE, 0xF12E13F6, 0x1117DF12,
+0x06E9E3F5, 0x141BE504, 0x0B12DEEA, 0xF2E0EEDF, 0x0DE9F7E5, 0xE1F0EC05, 0xF4F0091E, 0x1D1E26EA,
+0xF30CEC16, 0xED21F423, 0x170D04E5, 0x10ED140E, 0xFAEBECE3, 0x1414F729, 0xFCD6E8FD, 0xEF141A19,
+0x16EF0E0B, 0xF414EB14, 0xF3111711, 0x1AEDF125, 0xE9252B18, 0x150306F7, 0x101814F5, 0x12ED1509,
+0xE80CE6FB, 0x0B0F1210, 0x20F0ECF0, 0xEDF207F0, 0x160AE1F0, 0xDF1E04F6, 0xE9E5F4F1, 0x110717F7,
+0xF2F0EEE3, 0x16081818, 0x080E22EF, 0x0CF7F2E2, 0xE81BE6F2, 0xF1F31C1D, 0xF1F2E4E8, 0xF6F5131B,
+0xE8E9DDD5, 0xEEE20EF6, 0xEDE2F20B, 0xDF1613F8, 0xEB23FA00, 0x19E5F2E5, 0xFAF017ED, 0x1311EA1A,
+0xE9FCEA0E, 0x15E61F0D, 0x14EC1813, 0x0F14F718, 0xEEECF3F6, 0xF1F8071B, 0x10ED041A, 0xE01122EB,
+0xDE17ED0E, 0x17F6FEE3, 0x220F17F9, 0x0CE920EB, 0x0A1AE5EF, 0xED1C02EA, 0xEEF0EAE8, 0x0B1C1F18,
+0xEA190BFD, 0x1AE3E418, 0x09F6EFDC, 0xEA100821, 0xF5DFEAEA, 0x0CF6F30C, 0xF616E424, 0xF9EE160F,
+0x17DEE7E7, 0x16F513ED, 0x0BFAE0EE, 0xE8111010, 0x1C1AF2DA, 0xDD1418ED, 0xE11CF6E8, 0xEB090D0E,
+0x15FEEBEE, 0x1AEF20E7, 0xEC1FEA15, 0xF3F511EB, 0xF700F3FE, 0xECF828E5, 0xF319EDE0, 0x22181A1B,
+0xEC17FC0F, 0x15181A10, 0xEC19EBEE, 0xF1EEECFD, 0x17F3FA0F, 0x1416170E, 0x06E7180B, 0xE3E6DC1A,
+0x06FF1A07, 0xEFEAE80C, 0x0FF60BFA, 0xE6E2E815, 0x1DE91EF2, 0x0AF0F00A, 0xE3F4040E, 0xE4FC14FD,
+0xEE0D22E8, 0xE20A2416, 0xE3E1EBE3, 0x1A16F713, 0xF2F2E411, 0x13E5EFF1, 0xDB0A15EE, 0xE328F10A,
+0x1FF00414, 0x0EE813F9, 0xE5F4E3EE, 0xF4ED1314, 0xF12DEC1F, 0xFBEE0FEA, 0x0CEE1AEB, 0xEE1912DE,
+0xF1E709F2, 0xF414150D, 0xFB18E8EC, 0x19EE0EF0, 0x0DEB130F, 0x25130DE3, 0x11FA1817, 0xEBF119E6,
+0xF4F2E2ED, 0x21D9FF12, 0xEAE1FE12, 0xEEF7ED17, 0xD6091CFD, 0x081EE524, 0x19F2F10A, 0xE210FC20,
+0xDB18E817, 0xDFED0CFA, 0xE414E913, 0x111AE709, 0xE1171AF5, 0xE518F90D, 0xFC10F0EF, 0xED15F0E3,
+0x0EEFEF0A, 0xE00A19F3, 0xF3EFE610, 0xEA1B1017, 0xEEEDE517, 0xE0ECF5E0, 0x072619EB, 0xF2F8E5E6,
+0xF011F6F6, 0xEAFC1914, 0xEDFB1413, 0x16EAE602, 0x0D062012, 0xE0EE11E6, 0x0DF71809, 0xF81515E9,
+0xEF1720F4, 0xEA08E1F7, 0x1A0DEF1A, 0x0B0607E3, 0xE90E15FE, 0xE62A09F4, 0xDF180CF6, 0xF61E12F9,
+0xE314190F, 0x14071AE3, 0xE71AFB12, 0x1BDB150D, 0x131EE5FB, 0x0F15F2E5, 0x120D19EB, 0x0C1CE816,
+0xF5EBF2F3, 0x07EDF3F4, 0xF51B280B, 0x0CE6DDEA, 0xDFEEE716, 0xF4E5EAEF, 0xFAF30CF3, 0xE1DB10F5,
+0x00E113EF, 0x1CF3F820, 0x1719E910, 0x090C1DE7, 0x0F11ECF6, 0xEFF6F117, 0x20DD1B11, 0x1A20D9F2,
+0xFB1B14F0, 0xEFD9040B, 0xE1F514E6, 0x201B1315, 0x1817FB17, 0x190103EB, 0x0C0E14DA, 0x0E2029EE,
+0xE7F2EF13, 0xEF0D1901, 0x12E31C13, 0xE3EBEC11, 0xEB10DFF0, 0x1A0B22F3, 0xF4F2D90E, 0xDF18121E,
+0xE7EAE806, 0x1419E8E3, 0x1416EC2D, 0xE6E01FF2, 0xEB1FE415, 0xE710E119, 0xEA0714E4, 0xEA07DA17,
+0x1CF3E9E8, 0xEAF4F7F0, 0x150C16EE, 0x1CE71210, 0xE11421DF, 0x18FBEBF0, 0xFBF6E70B, 0xEAEFE416,
+0xF519DC1B, 0xE3E7F3E5, 0xF00AE9E4, 0xF0160827, 0x1ADF1A14, 0x210DEBE4, 0x1FF3F417, 0xE7F0E718,
+0x0C05F2E4, 0x14EB1DEB, 0x1212F70A, 0xE0F7F1DC, 0xD41CF119, 0xF8FFF5E1, 0x16DF1A1B, 0xF71D18F0,
+0xED1A1EE3, 0x04D625E3, 0xDCE51CED, 0xE713F6E9, 0xF6111603, 0xE31912EE, 0xEF0E1DF1, 0xF51F01E2,
+0xE4131AE5, 0x080EEC18, 0xF8E2E6EE, 0x0CF31C1A, 0x14F31A1B, 0x13E9F7EA, 0xE0F11AF4, 0x10DFEF0A,
+0x0C0C1CEB, 0x171DCD18, 0x0C1AF2F2, 0xDA111109, 0xECFF0717, 0xE5EAF80C, 0x02F312EE, 0x16F41CEC,
+0x1600F30D, 0x24110E09, 0x1118211F, 0xF1ECF613, 0xEB071C1B, 0x0A0C2317, 0xF10EEEEE, 0x2321F0F8,
+0xDFE4EBE5, 0x20F61CF7, 0xDA01EADE, 0xE3E401F9, 0xF1191608, 0x10EBEF19, 0xE8E7F0ED, 0xF21815F1,
+0xE0ECEA15, 0xF2EFE8E7, 0x10EB13EC, 0xEE140917, 0x1814E415, 0x1B18EFF3, 0x1BDC12E4, 0x15F816E7,
+0x13DD0C10, 0xE6EFEBF4, 0xF11CFDF4, 0xF929E7E8, 0xD8211707, 0xE126FEF6, 0xE7F80118, 0x22EF0C05,
+0x17F121EB, 0xECED1411, 0x1D141128, 0xEC201718, 0x170CE309, 0x1E15FBE3, 0xE2E80512, 0xD50D1E0E,
+0xEFF918FA, 0xE51AE50C, 0xE61AEC1B, 0x1DF1F31C, 0x0AE40BEB, 0x17F51FF8, 0x0EE9181E, 0xE1E5ECE3,
+0x18E91904, 0xFD171D1B, 0x140A1617, 0xEBE5EF19, 0xF0E9E31D, 0xF91F0E1A, 0x17F21611, 0x0A1EF6E4,
+0x12F00F19, 0xEE11ECDE, 0xE8DFF114, 0x0E19EC1A, 0xDDF8F209, 0xDF13F0F5, 0xEB11F4F2, 0xE319E51D,
+0x131015ED, 0xF5141810, 0xF7EFEF1B, 0xEFE8EC11, 0x0A0BE5E5, 0xF1E5F2EF, 0x15F1150E, 0xF621DBDF,
+0x08F9F3F2, 0xF1FC0CFF, 0x130FF7F2, 0xFFF30AF7, 0xF6060CF6, 0x0DFA1EEB, 0x0AEEF7F5, 0xF113EF0B,
+0x0FF907F5, 0xFAF8080C, 0x0BF8F607, 0x09F9020F, 0x09F7FD08, 0xF7F501EF, 0x0BFA00FB, 0xEC0E0409,
+0xFE0212F1, 0xF8FBFC10, 0x100B0614, 0x13F1F1ED, 0xFA010702, 0xFD0F1308, 0x03F7040C, 0xFAFB0512,
+0x120CF708, 0x0A0802EF, 0xF301FAEF, 0x03020F0B, 0x05F5FEF2, 0x030B1209, 0x13071101, 0xED090709,
+0xEDFFEE0D, 0x0AF90F0D, 0x030AF3FA, 0xF508F20A, 0x000FFEF1, 0x0AFC02EB, 0xF3EF00F2, 0x0FEFF0F7,
+0x0A050910, 0xF90AFBF9, 0xF20B020C, 0xFF0F0FFA, 0x0907F50B, 0xF704FB02, 0xF70CF0F1, 0x12F8F6F9,
+0xF508EC05, 0x041007F6, 0xEBF10505, 0x050D0CFD, 0xFC0508F7, 0xFEF7F7F3, 0x03FD0410, 0xEF0B10FB,
+0xE7F5EF10, 0xF5F8FBFD, 0xF70CF1F0, 0xF60910F7, 0xFE0CFBEB, 0xFBF40B10, 0xF7FD06F5, 0xFAFE0F01,
+0xEEF7F30C, 0x0714FAF0, 0x061507F4, 0x0611F80D, 0xEE0AF20C, 0xF009F1E8, 0xF3FD060C, 0x140C030C,
+0x04F90DF6, 0x060BF5F7, 0x0D0CF2F7, 0x060F02F7, 0x0B06F6F5, 0x0E0510F4, 0x0E0F0913, 0xF1060D17,
+0xFCF40CF6, 0xEFFCFCE8, 0xF3070011, 0xFC090906, 0x0F0B0D0B, 0xFC02E4F9, 0x06F00806, 0xEEFA030B,
+0x04ECFAF3, 0xFBF6EDF1, 0xE6090FFF, 0xF210F8F7, 0x0409F80F, 0xF0F7F7F2, 0xF7F107FC, 0x0A0402F5,
+0x13F9060F, 0xFE150E06, 0x08020207, 0xEC0E0DF5, 0xEFF7FA18, 0x0F0A0814, 0xF112FAEE, 0xF4F1F306,
+0xF6FC11EE, 0x0CF21606, 0xFE0D1003, 0xF30CF613, 0xF808F5F9, 0xF9FF050F, 0x04FAF409, 0xF8FBF20A,
+0xF30EF2F8, 0x0D0D0402, 0xF1F40EEC, 0xF5EFEBEC, 0xFE0BFAFB, 0xF7FA0FFA, 0x04F81209, 0x0EEE0D10,
+0x161A0B03, 0xF70FFC00, 0xF6F011FA, 0x10E90F0B, 0x0AF8EFFE, 0x0AEBF4F3, 0xF6F6F204, 0xF50B0207,
+0x11FDEB0B, 0xF80D0308, 0xE304F4FC, 0xF70AEB12, 0x1400EEF1, 0x03100EF2, 0x1117FFEB, 0x03FAFC08,
+0x0DF9F80E, 0xFCF0F5FD, 0x00EF02FC, 0x00FC0500, 0xFCF60612, 0x09050EEF, 0x08F304F4, 0xF2FE0903,
+0x090C010C, 0x04F4FF06, 0xF7F8F9ED, 0x040AF1FC, 0x10FB10F4, 0xF3EFFAF4, 0x0B0AEC0C, 0x0C0CFAF8,
+0xF70F0E13, 0xFBF50FFC, 0xF9F4EDF8, 0xEEF4F80B, 0xF51006F2, 0x0208FDF1, 0x06F71805, 0x0CF6E6F3,
+0xF40101FF, 0xFDFBEBEC, 0x0805F3FB, 0xECF30F09, 0xFAF90AEB, 0x0B02F8F2, 0x04F4F0F7, 0xF4090FF5,
+0x09FA0710, 0xFC06FBF9, 0x04F70BFC, 0x10070C0F, 0x0F12FE0E, 0x0BF0F306, 0xF4150005, 0xF714F7F5,
+0xF60D050C, 0xEFF2F9F8, 0x06F5F8F8, 0x06F3FDF3, 0x0D0303EE, 0xFD020114, 0x0A09F10A, 0x0D0415FA,
+0x0CFEED0F, 0x14F010F1, 0x0B04EEF2, 0x0F1406F5, 0x0805000D, 0xF409050E, 0x0DFBE901, 0x03110710,
+0x0604EFFD, 0x0B060BF9, 0xECF00D09, 0xFBF5FF0A, 0x07060DF2, 0x0EEF06F9, 0x0CF407F1, 0xFD0B100C,
+0x080617F8, 0xFAF5090A, 0x0A1204F9, 0xF2071212, 0xFD0FFD02, 0xE9F0EE0D, 0xF90FFCF1, 0xEE14E90B,
+0xFB0C02F5, 0x0C13F1F4, 0xF607EFFD, 0x0BF410FA, 0x00F204FB, 0xFA0DEFF7, 0x0AEDF4EC, 0xF1090208,
+0x13F6F000, 0xF8F2F0FF, 0xFB0E0B04, 0xF5FA120B, 0x1305F4FA, 0x07E70B0B, 0xEFEAF4FD, 0xF90807F3,
+0x05100D0A, 0x040E0608, 0x02F9090A, 0xFFF5F7FD, 0x0113F10A, 0xF10B07ED, 0xF7FB010B, 0x05EF06FA,
+0xF5FB11EE, 0xF2FCF306, 0xF70C0F00, 0x0E0704EE, 0xF60CFE0A, 0xF7E8F50D, 0xEEF6F5FD, 0x09E802EE,
+0xEF09F7FC, 0xF00CF0F1, 0xF808FCF4, 0xFBECEEFA, 0xFCF20211, 0xF9F10603, 0xF7F0F409, 0xEE140C01,
+0x0A0AF5EF, 0xF108F505, 0xE902FDEC, 0xF3080AF6, 0xF90410F2, 0x0D0609F3, 0xF7FBF608, 0xF408F005,
+0xFAFDF6F1, 0x030C0A0A, 0xFF0C11F8, 0x05FDF70C, 0x0C14F502, 0x12FDFD08, 0xF90BF3FF, 0xF5F20E11,
+0xF2FE0D06, 0xFE07F9F5, 0xFC080DF9, 0xF2F10BF5, 0x0B061DFA, 0xFB000211, 0x0D0E02F4, 0x06EA1101,
+0x0A0AF40D, 0x06F7070D, 0xF40CFD06, 0xF3FA08F5, 0xFEEB16EF, 0xF7EF0D09, 0x1512F0F0, 0x1801F3EC,
+0x0507FBF1, 0xF3F2FC08, 0x00ED110E, 0x10FD0DF8, 0x0B08F90A, 0x100DF905, 0xF0ED1414, 0x0A0E0DF8,
+0x08160C02, 0x10FDFAFF, 0xF022F7E0, 0xEF0A170A, 0x19180E02, 0x1CEAECDF, 0x18161818, 0xED0A17EA,
+0xEA13170F, 0xDEF01618, 0x1417E3EE, 0xEFEAF1E8, 0x16F512F6, 0xF3F5F9FD, 0x25121FEE, 0xEEDF29E8,
+0x15F7041E, 0xF9E8231A, 0x1EF112F3, 0xE1ECE9DE, 0x0C16E50A, 0xF51C1D11, 0xF9E60AE5, 0x0A150420,
+0xEE09F2E2, 0x09E9060F, 0xF1F2F01D, 0x0BEB20FC, 0xE21107DF, 0xFEE3EEE6, 0x001AF102, 0xE4E0DDDF,
+0xEC07121A, 0x1121E917, 0x10E1F1EE, 0xE4E7F11F, 0xEEE81611, 0xEB1AF71C, 0x0500E3F0, 0xE1FBE6E5,
+0xFEEBF50C, 0x09E9E617, 0xE219111D, 0xE6E8EC0C, 0x09082226, 0x1C0DE109, 0x0F101F0E, 0x02EF190E,
+0x11DD0A1B, 0xE5241B07, 0x06FDF3E5, 0x1113E914, 0xF30D171A, 0x1CE70F17, 0xE70A1017, 0x01E70714,
+0x18ED1911, 0x0AE9F4F7, 0x25E4E4FB, 0x192119E6, 0x05F1F60D, 0xF3E4F71D, 0x052811EF, 0x1AF4F710,
+0x20FAF613, 0xE926F607, 0xE3130E13, 0x15FAECF1, 0xF313DC11, 0x101411E6, 0xD918F724, 0x1A0FDF10,
+0x14D903F8, 0xF2EFE61E, 0x10171316, 0xEEDAF519, 0xF1221713, 0xE3000705, 0xDA15E322, 0xEBE8E711,
+0xD9F20FE7, 0x130A1DE1, 0xFFE8FD12, 0xE4E50CE4, 0x12F4E118, 0xE4E622E1, 0xF4001215, 0x14F018F8,
+0x0A18FC0B, 0x0EF1E5E8, 0xEDFAF614, 0x1A1928F5, 0x180D1306, 0xE91FED17, 0xE4EDE309, 0xFC20EAF3,
+0x21F7E81E, 0x18E31AF4, 0x1EEBFA12, 0x1C18141B, 0xE8151015, 0xEA280BE1, 0xE20EE9E0, 0xEBE61A13,
+0xECEA1119, 0x11F8E50B, 0xE7040AEA, 0xDD16D017, 0xDF14F5F9, 0x11E70820, 0xE218EF01, 0xE2E3F7EB,
+0xE3072414, 0xE120F90D, 0xED12E80C, 0xFA16E619, 0xF11DECE6, 0xE5E3EEF7, 0x1516E2E1, 0x19E8E6FA,
+0xEC0E19DA, 0xEDF21D1D, 0xEE011D22, 0xF1EE0AF3, 0xF0F1E419, 0xE72020DC, 0x1502E811, 0xF313F3EA,
+0x1814EDE1, 0xE0EE1C10, 0xF10EE7F2, 0x2428E81D, 0x19EA1EF5, 0xE7F41919, 0xE81312E1, 0x1DE8F102,
+0x25ED11E9, 0x16141E2A, 0xED11E7DF, 0xEF1FF62A, 0x1514EEE7, 0xE7F61316, 0x1B0CEFE9, 0xEFF219F0,
+0x072B20DB, 0x11E008F9, 0x1D13111B, 0x0B1BF515, 0x17E1EA0E, 0x1AED10E2, 0xFA17EAE9, 0x10ED11F4,
+0x09F2E1E7, 0x1AF0E920, 0xF7F7EDE5, 0xD8D7EBF9, 0x14EFF718, 0xE5E41412, 0xE908EFF3, 0xE9170FE4,
+0xE1EEEC1D, 0x19F3EBE6, 0x1AE3EAFB, 0xF1F8010E, 0x0CF317DD, 0x1FE11619, 0x13E4E6E3, 0xE01321F5,
+0xE921F9F5, 0x19192118, 0x1B14F8E8, 0xFAE8E618, 0xE504130C, 0xDFDAEA15, 0x181DED06, 0x12F316E9,
+0xE416E51D, 0xE5E914F6, 0xE9ED2517, 0x021720E0, 0x12EB110C, 0x0B14231C, 0xF00E1DF0, 0x080928DF,
+0xE1DCEA16, 0xED1BF9D4, 0x1D190CE9, 0x18E41F13, 0xDB12EA03, 0xEDF20BEB, 0x11EEE00F, 0xE3E7DFF8,
+0x1516E4E5, 0x16EAE6E7, 0x11FDE1F6, 0x2AE2ECE8, 0x0B081BF1, 0x1AF311E6, 0x0A1213F2, 0x16F0EDE8,
+0x20E61A0C, 0xE4F1F50A, 0x09F416DA, 0x240005E6, 0xE1F6EDEA, 0xF4F421E2, 0xF5F0E9EF, 0xF1191E0F,
+0xE6E01A23, 0x11F9ECE6, 0xE1E71BF3, 0x0DF8EF00, 0xE81AE614, 0xE71A18F1, 0x04EFE311, 0x0F0BEAFA,
+0xFAF319E7, 0xDFED0E0D, 0x0613F4E8, 0xEB17D9ED, 0x052421EB, 0xF4E7F9E5, 0xEFEFEC1B, 0x0C0B1E0E,
+0xFFEBEB14, 0x17181718, 0x09F7D7EB, 0xDDE017EA, 0xEAEDFBF2, 0xE91A12F0, 0xE3EEF6F0, 0x1AF1F6E8,
+0x17FAE614, 0xEE0D1713, 0x000512E5, 0x0DF5ED0E, 0xEF190F13, 0x1CE7151C, 0x06E31D23, 0xEC11E91B,
+0x00F8ED21, 0x02160C0D, 0xDFF4140C, 0x15240AEC, 0xF21603F2, 0x0EE9EE15, 0x1BF0EDE8, 0x25EC0F22,
+0xE8EB1F17, 0xFA111A09, 0xF11D10FB, 0x10ED15EB, 0xE71F020E, 0xF6E1F7FE, 0x1E02230A, 0x0FF31E15,
+0x1412EF19, 0xE11AD919, 0xF4EF0FE8, 0xF2EBF8E5, 0x0FF10F22, 0x070DDBFA, 0xFB0A1218, 0xEEF7F511,
+0xEC17E819, 0x0213D8DC, 0xFB0D131D, 0xF3F5E111, 0xED19F40F, 0xE3E701EB, 0x111F1518, 0xE718E0E7,
+0x15F6EB19, 0xEC1C1C18, 0xDD1F1C10, 0x18EB0C0F, 0x1EEB13E4, 0xEDF621F8, 0xEA241312, 0x0DDF15E9,
+0xF0081E17, 0x050F0D12, 0xEEEA1802, 0x13092111, 0x26290D0A, 0x13E709F5, 0x17E11405, 0x16EBE5E4,
+0x180AEC10, 0xEFF01315, 0xE5F910F4, 0x1EEE0D1A, 0xDA06E80F, 0x0E08E5E4, 0x101D1312, 0xEBE1181C,
+0x0EDB0E16, 0x15141015, 0x19E625E7, 0x0FEBE60E, 0x2CF7F3F1, 0xE3EF1326, 0x23F1F4E8, 0x00E2EFE9,
+0x0C16E7EB, 0xE8FEDCF9, 0x2DE9E10F, 0xEDDB18EE, 0xE2ECE918, 0xF7EE191D, 0x0EE91DE7, 0xF7E701EC,
+0x0B0D17EB, 0x0FF9F4E0, 0xE6E11B15, 0x0702EC19, 0xF8DD1210, 0x15D9E30F, 0xE61DF7DF, 0xF0D61E09,
+0xF6E51B1B, 0xEAE10DE9, 0x14DE0E06, 0xE203F50D, 0xEBE7EFEA, 0x1922FF21, 0xEDDDF4EB, 0xE818F20A,
+0xECE8DEFC, 0xEB1E1CEE, 0x111DDBF0, 0x0E1620E9, 0xDF17F41C, 0x15E3E8E2, 0x1515F518, 0x0CE3EA1A,
+0x0E201915, 0xE9EB04F0, 0xE3F70F11, 0x0F0A14E6, 0x01F111E6, 0xEA231A11, 0xF61CF21B, 0xFC0FF1DE,
+0xE3EBFBEE, 0x1C26F0F1, 0xE3E1F20D, 0x1B12F3EC, 0x19DF06EE, 0xFCEEF7E7, 0xE7090CE5, 0x24F91A29,
+0x0D1BF31A, 0xEE15E5E7, 0x0620F50F, 0xE31605F5, 0x10E71C0E, 0xE91C17F1, 0xDD14F0E3, 0xE5F00C07,
+0xDCFAF5EE, 0xEC15E5ED, 0xEAEF1C24, 0x1E16F117, 0xECE0EF11, 0x0DF6ECE6, 0x06121012, 0x14E8ECF6,
+0x14F52610, 0x0EEEEC1B, 0xDB161BEC, 0x162FE1E7, 0x07FD0C06, 0x1014E9ED, 0xF1EC111E, 0x1914F71A,
+0xF3E7F705, 0xF51CF3EB, 0x130FE010, 0xE5F0F2DF, 0xE1E3DD11, 0xDF18021A, 0x14F4EDF2, 0xDBEC1604,
+0xF6ECEB26, 0xF0171C12, 0xF3E713EC, 0xF81C1E19, 0xE7F92012, 0x1307EBE4, 0x11F323E1, 0x2111FAEB,
+0xFFEB1417, 0x02E7EF1C, 0x1FF6E8F3, 0xF221E5F4, 0x0EE61906, 0xF323161D, 0xE01EEF08, 0x11E0D7E4,
+0xD60E210D, 0xF21323F0, 0xDBEEE9E6, 0x0F10EDEE, 0xEBECF4F7, 0xECEAF3FB, 0xE9DBDBE9, 0xE9220EE8,
+0xF7E4E911, 0x1C2018F0, 0xEBDDEAE2, 0x151116E9, 0x19D6E7E5, 0x131DEA06, 0xF1F3F10E, 0x1C13E9F1,
+0x1AF7F5E0, 0x050FE0F3, 0x13EDE6F5, 0x22EC2501, 0xF1E7230A, 0xE41F0216, 0xF4EFE8EC, 0xE818121F,
+0x01EDEB0D, 0x23E918F1, 0xE515F117, 0xE3EA27DC, 0x18F3F8FD, 0x06F2E00C, 0xDC19F005, 0x19F3F621,
+0xEBEDE11E, 0x1614EDE7, 0xF0F5E723, 0xEEF6F2E3, 0xE70F0911, 0xF4F213F7, 0xE7E7EBF0, 0xF409FAE5,
+0xE406DA0E, 0x08E7EBF7, 0xEA19E0EE, 0xD918FFE0, 0xF2EA1222, 0xE616F313, 0x1201DF15, 0xDF1D16F1,
+0x0A1516EC, 0xE5E9131D, 0x2017F6E6, 0xE5FADE08, 0x13110012, 0xFDDC12E9, 0x1DF012F5, 0xF20F16EE,
+0xE3EA04E8, 0xF7EAF81D, 0x0E1F1C0E, 0x1B2B110D, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+8
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..12c05d0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v14298.data b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
new file mode 100644
index 0000000..30df8e2
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
@@ -0,0 +1,377 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F817F,
+0x81817F81, 0x81817F81, 0x81818181, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F818181, 0x8181817F, 0x81818181, 0x817F817F, 0x817F817F, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181,
+0x7F7F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x81817F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181,
+0x81817F81, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F818181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x7F7F8181,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x8181817F, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81817F7F,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x817F817F, 0x7F818181,
+0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F817F7F, 0x81817F81,
+0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F,
+0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x817F7F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F817F,
+0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81817F7F, 0x817F817F,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x817F817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F81817F,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F81817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F81,
+0x817F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x817F8181, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x81817F81, 0x817F8181,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F818181, 0x81817F81, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x817F8181, 0x81818181, 0x817F8181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x7F817F7F,
+0x817F8181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x7F818181,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F817F,
+0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x81817F7F,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x817F817F,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F8181, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F818181, 0x81817F81,
+0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x8181817F, 0x817F7F7F,
+0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x817F8181, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F81817F,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F817F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x81818181,
+0x81818181, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F,
+0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x81818181, 0x8181817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F81817F, 0x81817F81,
+0x81818181, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x7F7F8181,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181,
+0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81817F81,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x7F7F8181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x81818181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x817F8181, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x81817F7F,
+0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F817F81,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F81,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x81818181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181,
+0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F817F
+
+output0 =
+0x2264202F, 0xEFA4FF42, 0xE9F58B8C, 0x1D39E1D8, 0xC820C061, 0x20DC98A4, 0x8DE60AFC, 0x6C33FA8A,
+0x1C53D6C5, 0x945F773F, 0xDBB04F8A, 0x3A27959E, 0x68BB477D, 0x2162D334, 0x380000DF, 0x69C28486,
+0xBA5358EF, 0xCF3C7E12, 0x498CFB25, 0x2C1D2FD8, 0x3BC26009, 0x3FBCD885, 0x170DB38F, 0xCC6D1865,
+0x5F253C8F, 0x2E763549, 0x5CF7C656, 0x5B035AAC, 0x97EFE2E2, 0x3E09E2D2, 0x616B4622, 0x090DF188,
+0x6D446324, 0x4879AFE5, 0x4170D40D, 0x961951CA, 0x127A6286, 0x97DF4F8E, 0x1E8B9203, 0xAF2CC98E,
+0x92070932, 0x39947F15, 0x1D3C8709, 0x78F28246, 0xBA0CEDEB, 0xD3AAED67, 0x3800BA16, 0x5591D86F,
+0x91406310, 0x25CD67E2, 0x2DD370E6, 0x92EC5FD3, 0x601F6480, 0x85832BF7, 0x21FBC769, 0x47A424D1,
+0x753A3FDC, 0x4406729D, 0xD73AE302, 0x5B0363EB, 0x6695488A, 0x10143CE6, 0x18544FA3, 0xA09CAD85,
+0xCA84C06F, 0x76069E77, 0x249EFC02, 0x0D2EF9A4, 0x306C49E6, 0x8744F821, 0xA3DBD0B3, 0x51C30167,
+0x24BAC604, 0xB7127120, 0xD8293BEA, 0x99D894B1, 0x82DA3AC5, 0x0A3DE8AC, 0x0A2BFF03, 0x8810CF64,
+0xF965FC9F, 0x38D9B780, 0x67A87163, 0x2125F55C, 0x520FD62F, 0x81C21F91, 0x36DBBAE9, 0x9FD06F93,
+0xC496630A, 0x9E68401F, 0xD8960A86, 0x040ED70A, 0x6B685588, 0x89FB354E, 0x6FA818BC, 0xE736533D,
+0x9991716D, 0x7D3E2C82, 0x1D56747A, 0x79ACA946, 0x223D14C6, 0x98D15ED1, 0x8E1DEFED, 0x90E0C34F,
+0x693154A7, 0x9802DE69, 0xE9EDFCE8, 0xA308DBD5, 0xF8D24D94, 0x5F7C1F87, 0xD1CCBAA7, 0x3597525A,
+0xA5A9F065, 0x28C234D5, 0xB3FF9848, 0x012A0B0D, 0x5BB7102F, 0x4CE69A80, 0xFEF92D54, 0x0932125D,
+0x8D58749A, 0x6F00E934, 0x713104DC, 0x74E16375, 0x6805E1C0, 0x8AC5EFB4, 0xFF381CA0, 0x642D3436,
+0xD38472
+
+basegraph=
+1
+
+z_c=
+192
+
+n_cb=
+12672
+
+q_m=
+2
+
+n_filler=
+104
+
+e=
+10048
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..3143fa0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..2ea2b8d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..63bc8da
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..aaa3c98
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..03422fb
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
new file mode 100644
index 0000000..bd7c017
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x20202020, 0x20202020, 0xe0e0e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0,
+0x20e0e0e0, 0xe020e020, 0xe0e0e0e0, 0x20202020, 0x20e0e020, 0x2020e0e0, 0x202020e0, 0xe0e02020,
+0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe020e020, 0xe0e0e020, 0x2020e0e0, 0xe0e0e020, 0xe0202020,
+0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e020, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0xe020e020, 0xe0202020, 0x20e0e0e0, 0x20e0e020, 0x20e02020, 0x20e02020, 0xe0202020,
+0xe0e020e0, 0xe020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x20e02020, 0xe020e020, 0x202020e0,
+0x2020e020, 0xe020e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x20202020, 0x20e0e0e0, 0x2020e0e0,
+0x20e0e0e0, 0x20e0e020, 0x20e0e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20e020e0, 0x20e0e0e0,
+0xe0e020e0, 0x2020e0e0, 0x202020e0, 0x2020e020, 0xe0e0e020, 0xe020e0e0, 0x20e02020, 0x202020e0,
+0x20202020, 0xe0202020, 0x20e020e0, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0,
+0x20e020e0, 0xe0e02020, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20e0e020,
+0xe020e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x2020e020, 0x20e020e0, 0xe0e02020, 0xe020e020,
+0xe0e0e0e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x202020e0, 0xe020e0e0, 0xe020e0e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0x2020e020, 0x20e0e020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e020e0,
+0x20e02020, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20202020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20202020, 0xe0e02020, 0x2020e0e0, 0x20e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe020e0e0, 0x20e02020, 0xe0e02020, 0x2020e0e0, 0xe02020e0, 0x20e020e0,
+0x20e02020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020,
+0xe02020e0, 0x20202020, 0x20e020e0, 0xe0e0e0e0, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0x20e02020,
+0xe020e0e0, 0x202020e0, 0x20e020e0, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20e0e0e0,
+0xe020e020, 0xe0e02020, 0xe0e020e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0x2020e020, 0x2020e020, 0x20202020, 0xe0202020, 0x20e0e020, 0xe02020e0, 0x20e0e0e0,
+0x20e020e0, 0x20e02020, 0xe0e0e0e0, 0x20202020, 0x20202020, 0x20e0e020, 0x2020e020, 0xe020e0e0,
+0xe020e020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0x2020e0e0, 0x20e0e020, 0x20e0e020, 0xe0e020e0,
+0x202020e0, 0xe0e0e020, 0x2020e020, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x202020e0,
+0xe0e0e0e0, 0x2020e0e0, 0xe0202020, 0xe020e0e0, 0x20e0e020, 0x2020e020, 0x20e0e020, 0xe02020e0,
+0x20e020e0, 0x20202020, 0x202020e0, 0xe02020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe0202020, 0x2020e0e0, 0xe0e0e020, 0x2020e020, 0x202020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0,
+0xe020e0e0, 0x20e020e0, 0x202020e0, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0xe0202020, 0x2020e0e0,
+0xe0202020, 0x2020e020, 0x20e0e0e0, 0xe02020e0, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0e0e0e0,
+0xe0e02020, 0x20202020, 0xe0e020e0, 0x20e020e0, 0xe020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0e020e0,
+0x20e0e0e0, 0x20e02020, 0xe0e0e020, 0xe0e0e020, 0x20e0e020, 0xe0e0e020, 0x2020e020, 0xe0e020e0,
+0x2020e020, 0x2020e0e0, 0xe020e0e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0xe0e0e0e0,
+0x20e0e020, 0xe0e0e020, 0xe020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20202020, 0x202020e0, 0xe020e020,
+0x20202020, 0xe0202020, 0xe020e0e0, 0x20e02020, 0xe020e0e0, 0xe0e020e0, 0xe020e020, 0xe020e020,
+0xe0202020, 0x20e020e0, 0x20e020e0, 0x20202020, 0x20e02020, 0xe02020e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0x20e02020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e020,
+0x20e020e0, 0xe0e0e0e0, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e02020, 0xe0202020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe02020e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0xe0202020, 0xe020e020, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e02020, 0x20e0e020, 0xe0e02020, 0x20e02020, 0xe02020e0, 0x2020e0e0,
+0xe0e0e020, 0x20e020e0, 0x20e0e0e0, 0x2020e020, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0, 0x202020e0,
+0x20202020, 0x20e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e0e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e020, 0xe0e020e0, 0xe0e0e020, 0xe0e020e0, 0x20202020, 0x2020e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e020, 0x2020e020, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe02020e0, 0x20e02020, 0xe020e0e0, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0,
+0xe0e0e020, 0xe0e02020, 0xe02020e0, 0xe0e02020, 0xe0202020, 0xe0202020, 0x20202020, 0xe020e0e0,
+0x202020e0, 0x2020e0e0, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0xe0e02020, 0xe02020e0, 0x20e0e020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e02020, 0x20e0e020, 0x202020e0,
+0x202020e0, 0x20e020e0, 0x20e0e0e0, 0xe0202020, 0x2020e020, 0xe0e0e020, 0x20e020e0, 0x20e020e0,
+0x20e020e0, 0xe0e0e0e0, 0xe020e0e0, 0x20e020e0, 0xe02020e0, 0x2020e0e0, 0x2020e020, 0xe0e0e020,
+0xe0e020e0, 0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e0e0, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0x2020e020, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020,
+0xe020e0e0, 0x2020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x202020e0, 0x20e02020, 0x20e0e0e0,
+0x20202020, 0x20e020e0, 0xe02020e0, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x2020e020, 0x2020e0e0,
+0xe0202020, 0xe020e0e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e0e0e0,
+0x20e02020, 0xe0202020, 0x202020e0, 0x20e0e020, 0x20e0e020, 0x20e0e020, 0x20e02020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe0202020, 0xe02020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e0e0, 0x202020e0, 0x20e0e020,
+0x20e0e0e0, 0xe020e020, 0xe0202020, 0x20e02020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0202020,
+0x2020e0e0, 0xe0202020, 0x20e0e0e0, 0x20e02020, 0xe020e020, 0x20e02020, 0xe0e020e0, 0x20e0e020,
+0xe02020e0, 0xe02020e0, 0x2020e0e0, 0xe0202020, 0x20202020, 0x20e020e0, 0x20e02020, 0x20e0e0e0,
+0x2020e0e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20202020, 0xe020e020,
+0xe0202020, 0x20e0e0e0, 0xe0e020e0, 0xe020e020, 0xe0e0e0e0, 0xe02020e0, 0xe0202020, 0x2020e020,
+0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20e020e0, 0xe0e02020, 0xe0e0e020, 0xe020e0e0,
+0xe020e020, 0xe0e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e020, 0x20e0e0e0, 0x20e02020, 0xe0202020,
+0xe020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x20e0e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe02020e0, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0,
+0x20e0e020, 0x20e02020, 0x20e02020, 0xe0e0e0e0, 0xe0e02020, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0x202020e0, 0xe020e020, 0x2020e0e0, 0x20e020e0, 0xe020e020, 0xe020e0e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20e0e0e0, 0x20e020e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0xe02020e0, 0x20202020, 0x2020e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0xe0e020e0, 0xe0e0e020,
+0xe020e0e0, 0x20e02020, 0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x20e0e020, 0x20e0e0e0, 0xe0e020e0,
+0xe0e0e020, 0x202020e0, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20e0e0e0, 0xe020e020, 0x202020e0,
+0x20e0e0e0, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe0e02020,
+0x20e0e0e0, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe020e020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x202020e0, 0x20202020, 0xe0e02020, 0x2020e020, 0xe0e0e020, 0x20e02020, 0x20e02020,
+0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0xe020e0e0, 0x20e0e0e0, 0x20e020e0, 0x20202020,
+0x20e0e0e0, 0x20202020, 0xe0e020e0, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0xe02020e0, 0x2020e0e0,
+0x202020e0, 0xe020e020, 0x20e020e0, 0x20e0e0e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0x20e020e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e020, 0x2020e0e0, 0xe0202020, 0xe0e020e0,
+0x20202020, 0xe02020e0, 0xe020e020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0xe0e0e020, 0x20e020e0, 0x20e0e020, 0x20e02020, 0x20e020e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0x202020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e0e0,
+0x2020e0e0, 0x20202020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe020e0e0, 0xe0e02020,
+0x2020e020, 0xe0e02020, 0x20e0e0e0, 0x20e020e0, 0xe0e02020, 0xe0e020e0, 0xe020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020, 0x2020e020,
+0xe020e0e0, 0xe0e0e020, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0x20e02020, 0xe02020e0, 0xe0e02020,
+0xe0e0e020, 0x20202020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x20202020, 0x2020e020, 0xe02020e0,
+0xe0e0e0e0, 0x2020e0e0, 0x202020e0, 0xe0e02020, 0x20e020e0, 0xe02020e0, 0xe0e020e0, 0xe0e02020,
+0x20e0e020, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0x20e0e020, 0xe020e0e0, 0xe0e0e0e0, 0x20e020e0,
+0xe020e020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x20e0e0e0,
+0x2020e0e0, 0x20e02020, 0xe020e020, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e0e0, 0xe020e0e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0xe020e0e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0xe0e0e020,
+0x20e020e0, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0xe020e020, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0xe0e02020, 0x20e02020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0xe0e02020,
+0xe020e020, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0,
+0xe020e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0xe0e02020, 0x2020e020, 0xe0202020, 0xe0e0e020,
+0x2020e0e0, 0x20202020, 0x2020e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0, 0x20e0e020, 0xe0e020e0,
+0x20e02020, 0xe0e020e0, 0xe0e0e020, 0xe0e0e020, 0xe0e02020, 0xe020e020, 0x20e0e0e0, 0xe0e02020,
+0xe0202020, 0xe0e0e020, 0x20e02020, 0x20e0e020, 0x20e0e020, 0xe0202020, 0xe0e02020, 0x20e02020,
+0x20e0e0e0, 0xe0e020e0, 0x20e0e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0x2020e0e0, 0xe0202020,
+0xe0202020, 0x20e020e0, 0x202020e0, 0xe02020e0, 0x2020e020, 0x20202020, 0x202020e0, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e0e020, 0xe0202020, 0xe020e020, 0x20e0e020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e02020, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0xe0e0e0e0, 0xe020e020,
+0x20202020, 0x20202020, 0xe0e020e0, 0x202020e0, 0xe02020e0, 0x20e020e0, 0x20e020e0, 0xe020e0e0,
+0x2020e020, 0xe0202020, 0x20e02020, 0xe0e020e0, 0xe0e0e0e0, 0xe02020e0, 0x2020e020, 0x2020e0e0,
+0xe0e0e020, 0xe0e02020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e0e020, 0xe02020e0, 0xe0e0e020, 0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20202020,
+0x20202020, 0x20e0e0e0, 0xe0e020e0, 0xe0e020e0, 0xe0e0e0e0, 0x202020e0, 0xe0202020, 0xe02020e0,
+0x202020e0, 0xe0e02020, 0xe0e0e020, 0x2020e020, 0x20e0e020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0x20e02020, 0x20e02020, 0xe0202020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0x202020e0, 0xe02020e0, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0202020, 0xe02020e0, 0x20e02020, 0xe0e0e020, 0xe0e020e0,
+0x20202020, 0xe0202020, 0xe02020e0, 0xe0202020, 0xe02020e0, 0x20202020, 0xe0202020, 0xe0202020,
+0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e020, 0x20e020e0,
+0x20202020, 0xe0e0e020, 0x20e0e0e0, 0x2020e020, 0x20e020e0, 0x20202020, 0x2020e0e0, 0x2020e020,
+0x20e02020, 0x20202020, 0xe0e02020, 0x202020e0, 0x20202020, 0xe0202020, 0xe020e020, 0xe0e020e0,
+0xe0e02020, 0xe0202020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0x20202020, 0xe020e0e0, 0x20e02020,
+0x202020e0, 0x20e020e0, 0xe020e020, 0x2020e020, 0x20e0e020, 0xe0e0e0e0, 0xe020e0e0, 0x2020e0e0,
+0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x2020e020,
+0xe02020e0, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0202020, 0xe0e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0x20e0e0e0, 0x20e02020, 0xe0202020, 0x20e0e020, 0x20e020e0,
+0x20e020e0, 0xe020e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e020, 0x2020e0e0, 0x20e02020, 0x20e0e0e0,
+0x2020e020, 0xe0e020e0, 0xe0e02020, 0x202020e0, 0xe0e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0,
+0x2020e020, 0xe02020e0, 0xe020e020, 0x20e0e020, 0xe020e020, 0xe0e020e0, 0xe0e020e0, 0x20202020,
+0xe0e0e0e0, 0xe0202020, 0x2020e0e0, 0x2020e0e0, 0x20e0e020, 0xe0202020, 0xe0202020, 0xe020e0e0,
+0xe0e0e0e0, 0xe0e02020, 0x20e02020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0xe02020e0, 0xe020e0e0,
+0x202020e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x20202020, 0x20202020,
+0xe0e0e0e0, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0xe0e020e0, 0xe0e0e020,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x20e02020, 0xe020e020, 0x20e02020, 0x20e0e020, 0x20202020,
+0xe02020e0, 0x202020e0, 0xe0e020e0, 0x2020e020, 0x20202020, 0x20202020, 0x20202020, 0xe020e020,
+0xe0202020, 0x202020e0, 0xe0202020, 0x20e0e020, 0x20e020e0, 0x20e020e0, 0x20e0e020, 0xe0202020,
+0x20e0e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e0e020,
+0xe02020e0, 0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020,
+0x2020e020, 0x20e020e0, 0x2020e020, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e02020, 0x20e0e0e0,
+0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e02020, 0x202020e0, 0xe0202020, 0xe0e0e020,
+0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x20e020e0, 0x2020e0e0, 0xe0e020e0, 0xe020e0e0,
+0x20202020, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe020e0e0, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0x2020e0e0, 0x20e02020, 0xe0202020, 0x20e020e0, 0xe0e0e0e0, 0xe020e020, 0x202020e0,
+0xe0e0e0e0, 0x202020e0, 0x20e0e020, 0x2020e020, 0xe0e020e0, 0x20202020, 0x20202020, 0x2020e0e0,
+0xe020e0e0, 0xe0e020e0, 0xe0e02020, 0xe02020e0, 0x20e0e020, 0x20e02020, 0x20e0e020, 0x2020e020,
+0x2020e020, 0xe02020e0, 0xe02020e0, 0xe020e020, 0x2020e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0,
+0xe020e020, 0x20e02020, 0x2020e0e0, 0x20e0e020, 0x2020e0e0, 0xe0e0e020, 0xe020e0e0, 0xe0e02020,
+0xe020e0e0, 0xe0e020e0, 0x20202020, 0xe02020e0, 0x20e02020, 0xe0202020, 0xe0e020e0, 0x202020e0,
+0x2020e020, 0x2020e020, 0xe020e020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020,
+0x202020e0, 0x2020e020, 0x202020e0, 0xe0e02020, 0xe020e020, 0xe0e0e0e0, 0xe0e02020, 0x20202020,
+0xe020e0e0, 0xe020e020, 0x20e0e020, 0x20e0e020, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe0e020e0,
+0x2020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e0e020, 0x20202020,
+0x20e020e0, 0xe020e020, 0x20202020, 0x2020e0e0, 0x20e0e020, 0x20e020e0, 0xe02020e0, 0xe020e020,
+0x20202020, 0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0x202020e0, 0xe02020e0,
+0x20e020e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e020, 0xe020e020, 0x20e0e0e0,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe0202020, 0x2020e020, 0xe0e020e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e020e0, 0x2020e020,
+0xe020e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x202020e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0xe02020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x202020e0,
+0x202020e0, 0x20e0e0e0, 0x20e0e020, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e0e0,
+0x20e020e0, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0x20e0e0e0, 0xe0e02020,
+0x20e0e0e0, 0xe020e020, 0x20202020, 0x20e0e0e0, 0xe0e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0x20202020, 0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0202020, 0xe0e02020,
+0x20e0e0e0, 0x20e020e0, 0x2020e020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020, 0xe0e02020, 0x20202020,
+0x2020e020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0x20202020, 0x202020e0, 0x2020e0e0, 0xe0e0e0e0,
+0x20e02020, 0x202020e0, 0xe0e0e020, 0x20202020, 0x202020e0, 0xe020e020, 0xe0e020e0, 0x20202020,
+0xe020e0e0, 0x202020e0, 0x202020e0, 0x2020e0e0, 0xe0202020, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0x20e02020, 0xe0e02020, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0x2020e020,
+0xe0e0e0e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0, 0x20e020e0, 0xe0e0e0e0,
+0x20e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e02020, 0xe020e0e0, 0xe020e020, 0xe02020e0,
+0x20202020, 0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x2020e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0, 0x20e0e0e0, 0x20e0e0e0, 0xe02020e0,
+0x20e02020, 0x202020e0, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe0e0e020, 0xe0e0e020, 0x2020e020,
+0x2020e020, 0xe0e0e020, 0xe02020e0, 0x20e020e0, 0x20e0e0e0, 0x20e0e0e0, 0x202020e0, 0xe020e020,
+0xe0e0e020, 0xe0202020, 0xe0e0e0e0, 0x20e0e020, 0xe0e020e0, 0x20e0e020, 0xe0e0e0e0, 0xe02020e0,
+0xe0e0e0e0, 0x20202020, 0x20202020, 0xe020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e020,
+0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0202020,
+0xe020e020, 0xe0e0e0e0, 0x20e02020, 0xe020e0e0, 0xe0e0e020, 0xe0e02020, 0xe0e020e0, 0x202020e0,
+0x20e02020, 0x20e0e0e0, 0xe0e0e020, 0x2020e020, 0x20e020e0, 0x2020e0e0, 0x2020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e020, 0xe0e02020, 0x202020e0, 0x20e0e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0,
+0x20e0e020, 0x20e0e020, 0x2020e020, 0x20e0e0e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0e020e0, 0xe0e0e0e0, 0x20e02020, 0xe0202020, 0x202020e0,
+0xe020e020, 0x20202020, 0xe0e02020, 0xe0e02020, 0xe0e0e020, 0x20e0e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe02020e0, 0x2020e0e0, 0xe0e02020, 0xe02020e0, 0xe0202020, 0x2020e020, 0x20202020, 0x20e0e0e0,
+0x20e020e0, 0xe0202020, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0x20e020e0, 0xe0202020, 0xe0202020,
+0x20e020e0, 0x20e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe02020e0, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0xe02020e0, 0xe0e020e0, 0x20202020,
+0x20e02020, 0xe0e02020, 0x20e0e020, 0xe020e0e0, 0xe020e0e0, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0xe0202020, 0x202020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0e0e020, 0x2020e0e0,
+0xe0e0e0e0, 0x20e02020, 0x20202020, 0x2020e0e0, 0xe0e0e0e0, 0x20202020, 0xe02020e0, 0xe0202020,
+0xe020e020, 0x20e02020, 0xe0e020e0, 0x2020e0e0, 0x2020e020, 0xe020e020, 0x20e0e020, 0x20e020e0,
+0x20e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe0e02020, 0xe020e0e0, 0xe0e020e0, 0x20e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x2020e020, 0xe0202020,
+0xe02020e0, 0xe02020e0, 0xe0e020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe020e020, 0x2020e0e0,
+0xe02020e0, 0xe0202020, 0x20202020, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0xe020e020, 0xe0202020,
+0xe020e0e0, 0x20e0e0e0, 0x2020e0e0, 0xe020e0e0, 0xe020e0e0, 0xe02020e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20202020, 0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe020e020, 0x20202020,
+0x20e0e0e0, 0x20e0e0e0, 0xe0e020e0, 0x2020e020, 0x202020e0, 0x202020e0, 0x20e02020, 0xe0e0e020,
+0xe020e0e0, 0x202020e0, 0x2020e020, 0xe020e020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x20e02020,
+0xe020e020, 0xe020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0x20e0e0e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e020, 0x20e020e0,
+0xe0202020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x2020e0e0,
+0x202020e0, 0x2020e0e0, 0xe020e0e0, 0xe020e020, 0xe0e02020, 0x20e02020, 0xe0e02020, 0x2020e0e0,
+0xe0e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe0e0e020, 0x202020e0, 0x2020e020, 0x202020e0,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x2020e020, 0x20e020e0, 0x20202020, 0xe02020e0, 0xe0e0e020,
+0xe0e020e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0x2020e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e0e0,
+0xe02020e0, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0xe020e020, 0xe020e0e0, 0x202020e0, 0x20202020,
+0x2020e0e0, 0x20e0e020, 0xe020e0e0, 0x20e02020, 0x20202020, 0xe0e0e020, 0x20e020e0, 0x20e0e020,
+0x2020e0e0, 0x20e02020, 0x202020e0, 0x20e02020, 0xe020e0e0, 0x20e020e0, 0x20202020, 0x20e02020,
+0x2020e0e0, 0xe020e020, 0x20e0e020, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x202020e0
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..f6de8db
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
new file mode 100644
index 0000000..610a65a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x51720B3D, 0x1F794878, 0x5D4667E6, 0x34A2B105, 0x2FD62AA9, 0x33D1BD82, 0x11FA5252, 0xBC88743B,
+0x5997007B, 0xA975AC44, 0x887D382A, 0x28E0237D, 0x5DF5E8E5, 0x552D44D3, 0x53C9055C, 0x550B345F,
+0x3AAD2C12, 0x078213D3, 0x2B8EBA05, 0x119E2789, 0x89506275, 0x8E561FBB, 0x8AF1DBD4, 0xC13F343D,
+0xDBE99F6E, 0x68DE687D, 0xF9A1B4D3, 0x2D5756FE, 0x325830E8, 0x50A2D6C1, 0x5ED45CBE, 0xF83E0FF1,
+0x3DCD8BA4, 0xE46C05D0, 0xCD82ECBA, 0x0854C206, 0xE726C488, 0xF048846D, 0x00AB1A91, 0xD68FFE3D,
+0x7F4D05FE, 0x1202B71D, 0x0CB72578, 0x399162C9, 0x013E3EC2, 0x9EB5AD1F, 0xD8E554A3, 0xB8FE5430,
+0xAB148FFE, 0x48C16E32, 0x1807F4BB, 0xF8417646, 0x4777FD5F, 0xB77852F1, 0xB70352C6, 0x57F02C5D,
+0xCFA02D64, 0x08E26E56, 0xCFAF88D4, 0x36737403, 0x560BF71D, 0xAEDF2457, 0xC2055860, 0x40EDF15B,
+0x47B63C47, 0x8C7BD3F8, 0x09C87289, 0x0F91C176, 0x74D726D0, 0x0FF016BB, 0x9AB4E25E, 0x17DA3217,
+0x981FAC78, 0x079D55BC, 0x54B27933, 0x03410A2E, 0x00D7DAD3, 0xCA306C5D, 0x6BF2A223, 0x33DD37C6,
+0x6CD8834C, 0xB2F72F2B, 0x2697DE6D, 0xB0E17513, 0x64FF1B6D, 0x15389650, 0xAA1ABBCA, 0x5B41ABD5,
+0xAE5B149E, 0xEE07D0D9, 0x4E94190E, 0x9E9D0F73, 0x41EC7CD6, 0x17FA3EE3, 0x87AC9E55, 0xD8FB9E0A,
+0x1792BC34, 0x537FDCE3, 0x7B883768, 0xE8B311BF, 0x0B24824D, 0x8161769F, 0xE3A06DA5, 0x4D4EB31C,
+0xAB43F5A4, 0xEBD482D1, 0x7074E180, 0xC0F5558F, 0x7ADE2FF4, 0x04A890EB, 0xAF51D221, 0x65899099,
+0xC70FCEC0, 0x89621B73, 0x73E3742E, 0x36721F2F, 0x4CC865A3, 0xC68981D8, 0x8C8678A2, 0xA90557AE,
+0x4AE76EF4, 0xE4C576D6, 0xCD6D2A05, 0xF940C957, 0x31F0E7A4, 0xD6FB6301, 0x1255F423, 0x0E24DFAE,
+0xD420D059, 0xA4BBF099, 0xFEC00685, 0x126216AB, 0x6EE78BCE, 0x0ED826E1, 0xEA3F64C4, 0x07E451F4,
+0xC8A1A696, 0x5440C56A, 0xED2F82A4, 0x5A2D1434, 0x5C60A97B, 0x22542ED8, 0x35619E0E, 0x8B1F6A44,
+0x29B55494, 0x0B6AAF9C, 0x7FC459AD, 0x63E03703, 0x9477B477, 0x49CCAD5E, 0x94732F00, 0x6D19F35C,
+0xD7B4C5A5, 0x3A3FC863, 0x989F4259, 0x78241B4A, 0x36859C33, 0xBD34C4FE, 0x47729C70, 0x9160927D,
+0x5C634916, 0xFF93A815, 0x793DFC07, 0x132DA316, 0x061F271E, 0xA8BA6812, 0x34DDD632, 0xF74EE348,
+0x428703E6, 0x3803C484, 0xA8841F0A, 0xF2C11566, 0xA3A974A3, 0x1ECF7B77, 0x876966BB, 0x0AE8261E,
+0x4F9FC567, 0x87145B64, 0xF872040D, 0xCC001154, 0xDDCAD818, 0xA16975D3, 0x874B6927, 0x9006AE4E,
+0x139F8335, 0x52D892F4, 0x02DB9814, 0x8AEE0CE9, 0x228A384F, 0xB1B608EB, 0x849C96B5, 0xA624B02F,
+0x63F30AF2, 0xF22C47DD, 0x8DC6F495, 0x520763B3, 0x99E6FF46, 0xEE33CF1F, 0x79F3E452, 0x18738520,
+0xEE2E19B0, 0xCB267129, 0x8F32E4CE, 0xA98D3B2C, 0x402B5E33, 0x673F469F, 0xC57BF021, 0x6B65970D,
+0xD02101EA, 0x5806EC81, 0x03FDE9E7, 0x8488D8E1, 0xF75CA4E6, 0x24859DE8, 0x07E7C226, 0x5B04AFF7,
+0xA55FAAC7, 0x9BFF9612, 0x5FDF3D45, 0x38CFB232, 0xDA1F50EE, 0x8BCB1A18, 0x5BDAC9E3, 0xCB07A2CD,
+0x6B277AD1, 0x5166C368, 0xE38F4AB0, 0xC8B60145, 0xCA8659FD, 0x48186C3A, 0xB9B938D9, 0x31C25631,
+0xF9524B14, 0xF96AABCC, 0x30DE5E1E, 0xADDE525B, 0x91364A03, 0x7BFE4B12, 0x518DB237, 0xE6E06AE9,
+0x08C03875, 0x63861F76, 0x8CA1D2C5, 0x8766CE46, 0x0C91E129, 0x6E1A90F2, 0x956E0BDB, 0x09E94D22,
+0x836A87C0, 0x614B1950, 0x39A2C911, 0xC9E4AAAE, 0x13A82D21, 0x5722A44D, 0x72585F11, 0xED5A0549,
+0xE9065DE1, 0x523EF8A3, 0xD0A6A33D, 0xFA0897F0, 0xE7A9304C, 0xA396A9BE, 0xF0E09485, 0x6C632662,
+0x07E9ACDF, 0xD9C21AF6, 0x7F26397E, 0xD3EBF6A8, 0xC04D15F8, 0x17134F92, 0x95C7AB49, 0x622B1080,
+0xE066BB13, 0xD849FF19, 0x2D20AEB6, 0xDAA89F18, 0xF03406B9, 0x4E7F0D6F, 0x41627FCF, 0xF74B94C7,
+0x842C88D5, 0x0B3BD215, 0x87C550B4, 0x7BB39B24, 0xBAD7890B, 0x7074E1F0, 0x7EC31BEB, 0xA8DEB258,
+0xE7F95D43, 0x4AEA8A72, 0x6A1DFB9A, 0xFFCC64BC, 0xC5DA05F7, 0xC50F59F4, 0x47718364, 0x3CB70917,
+0xD070635A, 0xA9F94561, 0xF9A9E43F, 0xE3145D32, 0xED862CFB, 0x90B95177, 0x63FDD2D1, 0x2B4BED50,
+0x9CB19075, 0x7C689E22, 0x5D514DE3, 0xA654D7F4, 0x4D80443D, 0x0049F184, 0xC5BC952A, 0x21027E89,
+0x36EBDC1B, 0x4E7B570D, 0x172D470D, 0xFE0578E0, 0x418557E6, 0x0FBD99B0, 0x44AE1CB6, 0x891E4C35,
+0x1E20B86F, 0xF0BA67DD, 0x491A37DA, 0x6DB08136, 0x145279F1, 0x619AD857, 0x216914D3, 0x4F70F3B1,
+0x1CFD20FF, 0xC19C381A, 0x205215BB, 0x9F09C616, 0x478C1F7B, 0x501D7EFA, 0x2422B2A3, 0x992BBAC2,
+0x19096B7F, 0x209D76F3, 0x5F7B22CC, 0xA7144CF6, 0x59D88E8D, 0xD60F3D9C, 0x37B3C398, 0xB930D494,
+0x1133E58B, 0xEE477D53, 0x06D72053, 0xF5044CF7, 0x78A7E8C1, 0x09F17983, 0xF2A8A0B1, 0x77F180FB,
+0x60E30775, 0xBAC1F2C1, 0xFFF1351A, 0xF30951B7, 0x291F6D06, 0xAD25387E, 0x265F049B, 0x785FD7D2,
+0x65491824, 0x11769597, 0xBFB649F5, 0xA026D7CE, 0xE91ABEB2, 0xF811133A, 0xAA83358E, 0x7C62D43B,
+0x425831D7, 0x1DBCCE9D, 0x8235C15F, 0x43AA0ABE, 0xC7B29493, 0xDFC016FB, 0xEDCAC598, 0x9A11AAA6,
+0xBBEC1337, 0x02834758, 0xC206205B, 0x082456D3, 0xDCC2B044, 0x03AC56C8, 0xE27BCB56, 0x018D8AFF,
+0x9B1F4CA9, 0x67CECE57, 0xB0313823, 0x05033890, 0xF9CBD85D, 0xB395AA6D, 0x1DD71CEE, 0x01903F60,
+0xDFDDA2B2, 0xDDB3047F, 0x37B6CA26, 0x3246AF0E, 0x34D4A195, 0xAC73D9A8, 0x42ADA3B7, 0xDD5C3C54,
+0x3A72DD01, 0x7151C6F1, 0xC89C9B9C, 0xB9DB48F0, 0x46BB567F, 0xA9B6C1A9, 0xAF7E85C4, 0x68042154,
+0x8EC768E3, 0x39548F0B, 0x3CE01720, 0xFC65D725, 0xC8BE167D, 0x18BC7B2D, 0x80674517, 0x70EF0D28,
+0xA1690EC4, 0x7A799319, 0xD3AA9E04, 0xB9E030AC, 0xE27419A2, 0x176F78BC, 0x3EEE2D51, 0xB2AFC5B2,
+0x077698D9, 0x822CFB42, 0xD25FEA37, 0xA8B5C937, 0x9F370837, 0xCB65BF77, 0xDB50947D, 0x61385C2A,
+0xD541BBD8, 0xAFB82860, 0xE371CCBC, 0x1012BCE6, 0x514A2569, 0x54E24293, 0x55C5B14D, 0xBFF8A596,
+0x55123AE2, 0xBCD878AE, 0xA5FF8791, 0xCC3679B6, 0x6E259F3F, 0x31D753E7, 0xB1478405, 0xDC2E5B10,
+0x6B392239, 0xBD77A5E0, 0xFA36261B, 0x80F27129, 0xFEB94108, 0x278C047F, 0xA26A9CC1, 0x4E74CF6F,
+0x25491E28, 0xD9A6CE85, 0x35006F8D, 0x589423E3, 0x1C05EEF5, 0x008ED038, 0x8ACE06D5, 0x0B55281B,
+0xB55154DD, 0x3B195345, 0x3C28F9C9, 0xE165EC9D, 0x464CBADF, 0xF8F03418, 0x52FCBC67, 0xCB5C6973,
+0xA14FA25D, 0x973C43FF, 0xF6100F0B, 0xD4155060, 0x6CBD9CBF, 0x9B94BED1, 0xBBAA2867, 0x84B17971,
+0x3D14474C, 0xBECDCFB8, 0x9CB8E718, 0x9BD16545, 0x5C4B7A27, 0xEB1C6F14, 0x06E67AE5, 0xB68D17C6,
+0xCF2BA7ED, 0xC61BB1F8, 0xDE1CD101, 0x547FB898, 0x9AB8536C, 0x6B76F050, 0x9D59DC7B, 0xB2ECB46F,
+0x1877197E, 0xEA4B79D3, 0xCBE45D0E, 0xB99469E2, 0x9C56EABE, 0x8AA0F403, 0xAB65CDF8, 0x1F484CC1,
+0x8355CBE1, 0x6338F2A8, 0x1EEE1322, 0xBD847B99, 0xB1A569B5, 0x93E5A15A, 0xEE93C79B, 0x8FE25028,
+0xCF67B061, 0xBD2A614B, 0x9D445C5B, 0x7196C073, 0x1C8A6DE4, 0x41C09CBA, 0x65CF737A, 0x6DA36B61,
+0xAD9325C2, 0xFAAD734D, 0x715ECA40, 0x117BE977, 0xEF7DF069, 0x34DF16E8, 0x41FCA499, 0x58A5DB4F,
+0xE0F0CB7E, 0x7660DB44, 0xF3DFD005, 0x95D89968, 0x381A4768, 0xC4BF229C, 0xB1286C4B, 0xB2E2CB2D,
+0xD5095702, 0x559473EF, 0x4930B978, 0x21C2453B, 0x28F0097C, 0x1BE9FDD5, 0x1DF7C3D3, 0xCB8C83DA,
+0xE9EEAAC5, 0xEB54B497, 0x8F27C608, 0xCAB6F4BC, 0x3083244C, 0xD91367E5, 0x6D0DD8AA, 0x376A49D6,
+0x945D17A5, 0x34383F0A, 0x226C7D81, 0x539A5462, 0xE5D65B82, 0x2BACD2F9, 0xE51ACF32, 0xD4533AA4,
+0xEE47A8B1, 0xD541AB7C, 0x62998347, 0x3352FE1B, 0xF6701330, 0x45ED05C7, 0xE24E04F0, 0x07D152E0,
+0xCC17012E, 0x7B0AE79D, 0xEA8E9A4E, 0x6B9CB1D4, 0x0A14FB89, 0x1428463A, 0xCD20FE48, 0xA2F06258,
+0xC4C9935E, 0x609CA8C3, 0x9505DC5A, 0x5D6A8960, 0x25C845B7, 0xF4472F91, 0xF4BA06DA, 0xC387D335,
+0x60CAFE37, 0x54521AB6, 0xE954A5DB, 0x807AEDDF, 0xBEA54C4E, 0xAB63189D, 0xC533E9E4, 0xD122036F,
+0xB660C152, 0x16C622DC, 0xA62E4EBC, 0xC1AFA1F0, 0x3F93D72C, 0x516D9036, 0x69F429F1, 0xFF61A62C,
+0x0E0DBA6C, 0x5F8E6270, 0x37EB8C94, 0x02686070, 0x4DEFF6F1, 0xB46F4CD8, 0x9C5F4989, 0x7AF3E147,
+0xB9ABAAE9, 0x530FE486, 0xDA64455B, 0xE1AC28EE, 0xF869E55F, 0x8CDF0629, 0x28CFAE5D, 0xE42511EB,
+0x82A22ACE, 0xD81EDF39, 0xDF29CE78, 0xBD9C0B32, 0x7D55CF04, 0xD24B07E3, 0xDD8C58D6, 0x683D73F7,
+0x67ED7F4E, 0xC44DF267, 0x3348567C, 0xDC58224C, 0x0FD21085, 0xA1AAD313, 0x05D0653A, 0x4668BA1E,
+0xE8E54661, 0x67528EC6, 0x8A96C5C0, 0xAE18B780, 0x12C4F729, 0xED6897B4, 0xEB9BE180, 0x4213D183,
+0x5C2F41F9, 0xF6CF9903, 0xE137CE1C, 0x22472A15, 0x2C49EDE5, 0x4FE2B949, 0x622A5C7C, 0xC60B261A,
+0x23FFB032, 0x7557BB31, 0x73B43B29, 0xBF8F592E, 0xF77D8A06, 0xFDFAD099, 0x682F02DC, 0xE4B88537,
+0x909C487E, 0x6ACF8698, 0xF25317F0, 0x9DDD150A, 0xB6A6B219, 0x2F88A7C2, 0x4F1EFAD7, 0x6844FCEC,
+0x7CB0E34A, 0xE73F1855, 0x3BA461E4, 0x8CD5C541, 0x8FBEDD90, 0x5F7428E3, 0xCAC85442, 0x3F35E219,
+0x70DB1A13, 0x77956148, 0x73DFCA5B, 0x8AD5DFC4, 0x68D5634D, 0xB102D653, 0x5F02FA10, 0x149B86A7,
+0x8BD11AF0, 0x4E5B51AE, 0x93BC007A, 0xD2044B19, 0xCDBCCD58, 0xF72F9D4E, 0x2C6523CC, 0x64EA5F68,
+0x6B4756A7, 0xDE2200AE, 0x75604B42, 0xC272519C, 0x78351E10, 0x45A909E0, 0x7D60FC9B, 0x4AD3D619,
+0xF6CB1E85, 0xC922F020, 0x6B8ED326, 0x016123DB, 0xA4B01ECA, 0xCAEA94DF, 0x758F1531, 0x7853E744,
+0x75E076F4, 0x89E63239, 0x18076EFD, 0x73F6B66B, 0xEC1E50E9, 0x6665B92D, 0x7FE3A0A0, 0x765D6E3D,
+0x269CC3E6, 0x151BF69E, 0x5D888F2C, 0x8606D58B, 0x34556C2D, 0x772BFD84, 0xD2CEC1F1, 0x19657FC7,
+0xFE618CB3, 0xB1D72F2D, 0xE564F765, 0x75C308E3, 0xF08F38FA, 0x30353774, 0xF513517C, 0x6C49903F,
+0x7E7BBB0D, 0x40C36AD6, 0x492B7B4C, 0x39757376, 0xBB9C60F2, 0xED812418, 0xB2291400, 0x4FB57E8C,
+0x1820B510, 0x4764C4DA, 0xEE7040A6, 0x6041E905, 0xF4330270, 0x868AE751, 0xE38DEAB9, 0xD3B20918,
+0x79C258E0, 0xAC874D8E, 0x9550A947, 0x539FF577, 0x5018EB82, 0x58BC22F0, 0x100BFE26, 0x52491E2B,
+0x513761BB, 0xEB21862F, 0x0195F1F5, 0xA0A522F2, 0x1BD21E11, 0x3A15B38B, 0x1530FE09, 0x3841E8CB,
+0x74B56759, 0xAC907E5E, 0xCC8695B2, 0x513FCAD4, 0x2E284F99, 0x09802A83, 0xFC67F995, 0x6A2BA176,
+0xCE37BAE8, 0x270D8DB8, 0x424D3D63, 0xD0E0F8B8, 0xF01ECFF3, 0x0A4F0B47, 0x6837A59D, 0x76D32DA6,
+0xB24A85D7, 0xAF950042, 0xFFCD9AB0, 0x6BD79F9A, 0x52DF8B2A, 0x62D81BFC, 0x2FF92AAE, 0x578EBB2E,
+0x669772BC, 0x2F755594, 0x71C48903, 0x5AEB6CE7, 0xD0D4695C, 0xD0082CF2, 0x499BC2D2, 0xF4177760,
+0xDE7EE37D, 0x9CC47CE2, 0x55270C58, 0x51DA31C6, 0x6FF550C4, 0x91970735, 0x8604C4F2, 0x21D8812F,
+0x116D329D, 0xCC43378E, 0xCD5C5414, 0xFA23B2CF, 0xC4EA168B, 0x0B95D110, 0x027C1BD9, 0x902522CB,
+0x9D35781A, 0x0FD9620A, 0x0D235356, 0xB0155399, 0xAD93D8DC, 0x863D90A5, 0x07F31447, 0x52C32D67,
+0x42BF7F12, 0x3EA615E2, 0x2EF7C68A, 0xB266CAF2, 0xBF10E1DD, 0x0289B129, 0xC765DE2B, 0x0425F56A,
+0xEF6725AF, 0x15482D61, 0x299BC121, 0x37E3F009, 0x4E1B40CD, 0x21CFD81A, 0x89F59D43, 0xEAE869A5,
+0xC5DA5D72, 0x3D2E05B5, 0x40B1E42F, 0x243CECAC, 0x3E8011E3, 0x05706D92, 0xADB36FB7, 0x368A76C1,
+0x861D14E1, 0x6A75CDF1, 0x9C170293, 0x5D3E7920, 0x2846D4EA, 0xF0A839E9, 0x456E8313, 0x9AFA5F5A,
+0x88E7C02A, 0xE6D7B0C0, 0x888A3119, 0xB7E0C142, 0x33A2672C, 0xF629CD26, 0x1AD95E2D, 0x847C2ACE,
+0x9A6178E6, 0xD1965890, 0xA0AB9C4E, 0xC6F84E66, 0x2EF71F5A, 0x466416A2, 0x64DA94FD, 0xDA420C3F,
+0x628D9DD2, 0xB0660BC9, 0x73D738F7, 0x23474708, 0xB1C01B97, 0x24C409BB, 0xCDA973F1, 0x921F315B,
+0x34E41AD2, 0x98E3D86E, 0x8E9EB06C, 0xFD01C0C5, 0xB53BF406, 0xFC55AA14, 0x465F25EA, 0xC9015011,
+0x2A7981DE, 0xEBA54881, 0xE1DD1AA1, 0xEB0D557A, 0x24E00D48, 0x1B062CEC, 0xBCBEFD4D, 0x4224EE50,
+0xAE018A67, 0x86F89F72, 0x16DF37F0, 0x14280530, 0x8A4FCBA2, 0x34B82D2F, 0x5C75AFD3, 0x9A883077,
+0xBDAD5896, 0xF2D49057, 0x93443C2C, 0x26FC7728, 0xBE68CD8A, 0xF2E58177, 0xFC662BFB, 0x12A8B923,
+0x97E2D7FB, 0x94B46697, 0x3E40F2A6, 0x2B1C779D, 0x429261C8, 0xDC35EACB, 0xB3599132, 0x82411F96,
+0xCF95101B, 0x0ED29D5A, 0x983CBB10, 0x53B856F8, 0x0BD21F78, 0x2D0F70AC, 0x8D9F7BE9, 0x6C289AF6,
+0x0951B4E8, 0x18420FDE, 0x3A0C1647, 0xD7581C3C, 0xB6A581AA, 0x86C36E86, 0xED0DADE7, 0x3DC0A3F8,
+0x9D2486C5, 0x43280493, 0x51A78F3B, 0xA6F3C39D, 0xE4AB1CC9, 0xC1C8E1B3, 0xF4A5CD45, 0x43762C67,
+0x67CA6AC0, 0xBB693E74, 0x95B7DC41, 0xE5C32875, 0xAD1DF5A3, 0x9AEEDB72, 0x4DC689C1, 0x8D1A43CB,
+0xFF3C24C7, 0x6E13B0FD, 0xB80796BC, 0xAA29E2C2, 0x8D41CBFA, 0x08F193A2, 0x166D91BB, 0x5DE3BA7B,
+0xF026AAFB, 0x2D4FF0EB, 0x00763051, 0xA5D87EC5, 0xF2D0952F, 0x264B84D3, 0x7D52BA15, 0xA4DBC32A,
+0x6D37D449, 0x867C429B, 0x24F649DE, 0xA1C05AF9, 0x036864D0, 0xE0C427AE, 0xB66B56F7, 0x4A92DF71,
+0x2BF6EFD0, 0x1527185B, 0x1DB501A0, 0x48E33DFB, 0x799FD1C2, 0x9BE71138, 0x186F8C4B, 0x40637F9C,
+0xCBD2B6D6, 0xB7D2866B, 0xB99F91B1, 0x656DC541, 0x3115BEBA, 0x7F7E186F, 0x33237B58, 0x8F27330E,
+0x629DF2BA, 0x0D65CABA, 0x6EB639E6, 0x75B4838D, 0xB71F0CC9, 0x0A73282E, 0xC5D6E9CC, 0x00E23512,
+0x643B61B8, 0x184DA6CD, 0x507562EC, 0x401A7564, 0x6502C287, 0x1498D3DC, 0xCDB69377, 0x6785C09E,
+0x99A5B15C, 0xEA52FBB5, 0x9CC1FE10, 0x213B92FE, 0x92869B62, 0x0002B391, 0xF6196A22, 0x14E8CCEE,
+0x06952624, 0x8755C50A, 0xCF9FB6D1, 0x8024245F, 0xB330224B, 0xB69B4E23, 0xE900C840, 0x17378F6B,
+0xB1C5C9AA, 0x365D98D7, 0x84372922, 0xA8859E29, 0x8CC062D0, 0x5D14948F, 0x79631FDF, 0x4603A8F6,
+0x3A944E65, 0xFB11FBB7, 0x977B4797, 0xD327ECA0, 0x2C66F4A6, 0xC1ED6C71, 0xCC54322A, 0x666A1D2F,
+0xF9957A72, 0x708FD038, 0xF4939492, 0x16C308AC, 0xBDFE8C4F, 0x03A56B55, 0x599EB4DC, 0x03B7F563,
+0x6CEF20E2, 0x1E830B0A, 0xBE9CC6E7, 0x2F73F67C, 0xFF26AA29, 0x38E01FFE, 0xFCDDB7C0, 0xAD82FD69,
+0xDE2B29BE, 0xEEE44C1A, 0x02E81890, 0x97A26194, 0xB6660513, 0x37953153, 0x8C99F39A, 0xB5257B11,
+0xB5FB5C93, 0x06B16E49, 0xC0C4311C, 0x21517366, 0x534A32F0, 0xF72873CF, 0x9C447EA4, 0x821A428B,
+0x92080B41, 0xF9207690, 0xEC3121A2, 0x88923ADF, 0xB22DD5EF, 0xACCDF948, 0x5FB73CF7, 0x68AD33AD,
+0x1C3F8C54, 0xC7360226, 0xE538F3C7, 0xF0C1418E, 0xC590BD5A, 0x14160C26, 0x2E266276, 0x7CE58F02,
+0xE5A255BD, 0xBEA2A6CA, 0xE85527FF, 0xAB62F48A, 0xF3D56430, 0x36B38A77, 0x4A8E2E37, 0x6B5E55EA,
+0x6F814FED, 0xC17C4E67, 0xC296DF1E, 0x59E9D04D, 0xBC78F5B3, 0xAB37D967, 0xF8428744, 0x6303DDF9,
+0xE1807D98, 0xA0BAE3E3, 0x26E84D01, 0x618E08FA, 0x0CF0FC7A, 0x911A771C, 0xDB458E3E, 0x5D920C83,
+0xFFC40809, 0x235DCFFE, 0x68E1C98A, 0x9020BC6B, 0xD1A00FEE, 0xAE76B089, 0xC8E6F169, 0xDFC541F8,
+0x65876337, 0xDD1D7ACF, 0x5441C29E, 0xA7B5CDC5, 0xDF068CC9, 0xD9AEF898, 0x8748E9F9, 0x8D46B66B,
+0x41CEADE7, 0xD228472C, 0xBAAC5EA3, 0x1459D639, 0x46D7005A, 0x3646D722, 0x5098793C, 0xC3BADAE9,
+0x23831605, 0x88D56902, 0x7D22FBF7, 0x6963BC9B, 0xFFAA0CC0, 0x20ACAEF8, 0x3EB1E8BA, 0x4367A693,
+0x2B15F4A8, 0xEBF05245, 0x1B19BC91, 0x63A52E8F, 0x64E44548, 0x31ADCA08, 0xB8CDD353, 0x55357C6B,
+0xB7549F77, 0xFDA90353, 0x19A52D09, 0x2E630C5A, 0xE251717A, 0xD496D0CD, 0x302392B5, 0xB720E90E,
+0xDECE39D2, 0x167EB923, 0x4AEC7C87, 0x166F0D11, 0x0A7716C0, 0x5EA8A35E, 0x61818795, 0x25619A2F,
+0x0C36E1EB, 0x5301166A, 0x7E6C0972, 0x4C2ACC5C, 0x19379672, 0xB6C89205, 0xB44525A9, 0x4334A835,
+0x522CCADD, 0x8100BFCF, 0xE7FBB2AA, 0xBD2078D4, 0x82BC039C, 0x0028F607, 0x596A819D, 0xC55F98D3,
+0x9741C7C5, 0x2CADFA60, 0x8C0C37DF, 0x14F486EE, 0x43831895, 0x348BED8C, 0x6D96F7DE, 0x561D71EB,
+0x99251352, 0xDBFF7F02, 0x0D2B5D71, 0x61A3F1F6, 0xF6BDDD54, 0x3C1EE6CF, 0x100F993F, 0x522C993E,
+0x81C8B272, 0xBC024046, 0xD3C7F659, 0x0AFC9809, 0x3951666D, 0xA76382D4, 0x213254FA, 0xA0F79581,
+0xA05BDEBE, 0xC424733F, 0x568AF0E2, 0xA79EEB13, 0x38A54B1F, 0x426C64D8, 0xEB63779A, 0xAD0C8182,
+0xFE3C9D54, 0xAD867829, 0x2E1558F7, 0x3B2F60CA, 0x854BDA1D, 0x81E879EB, 0xDB6B191F, 0xA4D81A7D,
+0xB08D004C, 0x257CB37B, 0xD2AE9EE1, 0xADE547CA, 0x1513E54B, 0xE515E8A8, 0xB63382EE, 0xBB5952B7,
+0x3888D3F4, 0x11B9F6A1, 0x736007FC, 0xCAC4DB49, 0xC65BCED3, 0x1534E63C, 0x72B34D87, 0xB46BDA5A,
+0x0B09131B, 0x3248E1A5, 0x982C52D5, 0x312F5B0A, 0x8B5221B7, 0x560EAE75, 0x86E74A54, 0xC45B6ED0,
+0x430FCA58, 0xB54CA555, 0x83E701B6, 0x5E3F1A11, 0xE42595FC, 0xC5D30EBD, 0xCDC3D6A9, 0x281D97DB,
+0x3D48E424, 0xC8F5E788, 0x0A38BD4E, 0x67619920, 0xBA91BD8A, 0x4C2685A8, 0xE12F2D99, 0x68860336,
+0x1EFAD0DE, 0x82E773D9, 0xA9B81507, 0x4F793718, 0x03C89FDE, 0xAAFA74B3, 0xA9923B7F, 0xC60D6383,
+0x25523B53, 0x94B8F271, 0x05F62AAB, 0xD22036AF, 0xFB84E8E3, 0xD26B7725, 0x52CAF750, 0xA6B90733,
+0x1679D26B, 0x46C51D02, 0x872DBA4A, 0x8A6BBACA, 0x44B2C653, 0x4BE93B46, 0x4E50CD1D, 0x360E7674,
+0xDE46E0A9, 0x29165A8F, 0x36769217, 0x25692D35, 0x09C78FBF, 0xAF2CD00A, 0x4E6104A9, 0x30A7CD1D,
+0x2E4CF64B, 0x3E343974, 0x376D1C2C, 0x7CEA27D5, 0xB49AD3F4, 0x8CA5464C, 0x929DB7DD, 0xED365DDC,
+0xCE4C30BB, 0xB309DB4A, 0xB8CF523D, 0xBC1A5DB5, 0x46941CCA, 0x0BB801F3, 0xE5E7BCA4, 0xD2775721,
+0xD12216E1, 0xD1C30356, 0x487CA764, 0xDAA6F07A, 0xB55D9865, 0x1FD2A768, 0x75FB14C6, 0xB95EFD60,
+0xF04B3712, 0x43C690B7, 0xB36E72FD, 0xF19B180A, 0x10885E98, 0x574DFE46, 0xE6E0857C, 0x7D957916,
+0xBA2C5422, 0x901BE8CD, 0x710ED3A6, 0x6B654715, 0x18D47B35, 0xED3DBEEA, 0xDA2EFEFC, 0x1435655C,
+0x48518EA4, 0x925868CF, 0xF7DF8142, 0xABBD187D, 0x664071FC, 0x8B0D1DAE, 0x93B0E1B0, 0x493CBA04,
+0x1DFE1D84, 0x6076959D, 0x0BBD1D1F, 0x174B8F15, 0x05EADB39, 0x85882865, 0xCA2E67B9, 0xDA6B7F16,
+0x6BDECD74, 0x30451F7D, 0xF2CDB314, 0x1B059577, 0xEBA0AAD3, 0xF34F55EC, 0x5642B9F2, 0x35B79FAA,
+0x1BF4C0F5, 0x07553B70, 0xA7D6E2CE, 0x46BFC421, 0xC79D957F, 0x4A1F4664, 0xA553888F, 0x96C1E3F4,
+0xE26DDFDC, 0x9701D42B, 0x7885B76C, 0x2AF0334E, 0xF1C99A18, 0xD4DF3CC6, 0x862368B7, 0x209E33E0,
+0xDE37A458, 0x85189E5A, 0x480B41FA, 0x65596FF4, 0x7F3ED63F, 0x24FF7C1A, 0xD4FA1AE3, 0x0476407B,
+0xF31B57D9, 0x48C12741, 0xCC81C4FA, 0x842E6F92, 0x96AD0091, 0x6DA5E294, 0xBBF7990A, 0xDCC365CC,
+0x588EC677, 0x01541D90, 0x9C1F0C9F, 0xAF545419, 0x15F252FB, 0xFC17416F, 0x2D0AEBA8, 0x20C9F171,
+0x72D7FD24, 0x5ABB1FBC, 0x8C78541F, 0x7DDCA0C5, 0xD6052EDC, 0x1A9B17D5, 0xAF1A0520, 0x41B75608,
+0xCDFD6875, 0x8B090E1E, 0xE051BD80, 0x3880A8CA, 0x7CE8C7F9, 0xBD174BF9, 0x330C93E7, 0x153E3663,
+0xD40FE5AC, 0x18D3524D, 0x2DE90E40, 0xD00FD5FD, 0x3E341A48, 0x4B692F17, 0xBA1846B9, 0x6F6BBF38,
+0xF65D9FC6, 0x79DD8BE8, 0x96697CB7, 0x57A46B02, 0xDA36F017, 0x5C61CA7F, 0x438EEE7C, 0x288BE1F6,
+0xD461CA09, 0xE21A8707, 0x23D613AC, 0xE202078F, 0x435C7ABE, 0x543F7C2E, 0x9C86F08A, 0x9FE5D7EF,
+0xDE3B6F2F, 0xAF314EC0, 0x480F41DB, 0xDB9CCF69, 0xAA84D589, 0xBB86095C, 0x4EB3989C, 0x43AFA06F,
+0x43CBC88D, 0xCFF61FFF, 0x3B19F6AF, 0x7F4DB62A, 0x6877C1BD, 0x00049088, 0x985E6893, 0x25AF7B17,
+0x3B8CC125, 0x110D8178, 0x4225B1D1, 0x6AB332EF, 0x03DAAF48, 0xA727EBD1, 0xC290B4FA, 0x25DEB8F5,
+0xD191E391, 0x16C68527, 0xCDA26352, 0xD015DE2D, 0x1741279C, 0x6FF0F803, 0xCAFA80EF, 0xD642D9F6,
+0xED1DC232, 0x3C59A8C8, 0x9D2225BA, 0x7C0BFC04, 0xDB644EFC, 0xE4B3F2A4, 0x69443508, 0x3D80A30D,
+0xD3B6B1D0, 0x31ACCF5F, 0x80CD2E1A, 0x57825477, 0xF1264F44, 0xEAE834D2, 0x1D92A406, 0xA83D1578,
+0x080992B7, 0x288382FB, 0x12A81D35, 0x4B1075BB, 0xD901809E, 0xAEF2FF44, 0xB5AB83E2, 0x3D2CFB1D,
+0xBC3B924F, 0xDBABC7D2, 0x3D21FE5E, 0xED96310C, 0xD7A58284, 0xAD97D931, 0xB3F22626, 0xE17B26C9,
+0x753C5590, 0x658D2059, 0x10542CC5, 0x1111B130, 0x4511BDC6, 0x4B0130D2, 0xB9A49E56, 0x7B3C0040,
+0x14A7F5B1, 0x284CD74B, 0x5986AA3A, 0x288A6778, 0xCF8C345B, 0x7EC2DB9C, 0x4143723F, 0x8EFFF053,
+0x37F636FB, 0xB3B2C326, 0xB0C691FB, 0xF8B17E9B, 0xC18E4AC3, 0x87E5AEAB, 0xE10C6BCE, 0xC2E5D43C,
+0x16483523, 0x5811BB6E, 0x2491077F, 0xAADD640A, 0xEB482771, 0xE2CF2352, 0x118F3B30, 0x65CAD3D3,
+0x321FE964, 0xE323B837, 0x4661C10A, 0x3E0B9B59, 0xC910DC9A, 0xF469111F, 0xB84BC256, 0x7D4F988A,
+0xBE471C62, 0xAE0B49E3, 0x5CF09417, 0xDA56D516, 0xD058BC34, 0x4ECF94FD, 0x262E56EE, 0x40A6F15D,
+0xF4B3011A, 0xB9A90E28, 0xD16F10D0, 0x78D27564, 0xD2999E23, 0xFE2FC577, 0x51D1CB6C, 0x9305B848,
+0x9C18BB0E, 0xFC325BD2, 0x22CC897F, 0x7BECBF34, 0x71FA7C5C, 0x896A83B9, 0x7B77EE42, 0x9DECA2FE,
+0x99A4DA7F, 0x0577D802, 0xF623F0E5, 0xC13A882A, 0x8A0EACF4, 0x771E5959, 0xBC717207, 0x4DA27722,
+0x3B57A0CB, 0x3CE0C56E, 0xDD13EECB, 0x0E8FB826, 0x49D6FCF5, 0x9C059DB5, 0x75D235AE, 0x5E8EF898,
+0x3D4D21EE, 0x9293C72F, 0x3AE81056, 0x7E881C2A, 0x734578F3, 0xBCA210E5, 0x9F69FEFB, 0x79E858EA,
+0x59338994, 0x77F5BF5A, 0x62CC7CF7, 0x324B66AE, 0xB61F0F28, 0x5960913D, 0x8408FD29, 0x32EA8286,
+0x5540E8CF, 0xCF9ED028, 0xEE5E4CD5, 0xE1F6DE47, 0x66492D8B, 0x33731885, 0x06D58B2F, 0xA22C4480,
+0x720A693C, 0x71DE4D01, 0x40D9C3B0, 0x79034CC1, 0x3C696507, 0xB68925CD, 0xD04ECFF9, 0xF39B20E7,
+0x0878361E, 0x148D1A6C, 0xBEB29DB3, 0xC8A7CAA5, 0x5DD28BF5, 0x3ED0FDB1, 0x9F2F17F0, 0xAEB77A1F,
+0x85A3376C, 0xE45C2545, 0xC3AD7E05, 0xC778D187, 0x28CB977B, 0x935896BC, 0x3062366E, 0xE19F8C28,
+0x613CC306, 0xDE682224, 0xD8681BE6, 0xD07EC9A8, 0x361D7118, 0xC1980698, 0xB9F1A444, 0x19AEF7CD,
+0xEDB3B800, 0xDDF00DF9, 0x434AD5EC, 0x1B9A9F94, 0x473F8951, 0x42A873D2, 0x8FFA7322, 0x2385EEC1,
+0x0B5E64AF, 0x93E6A894, 0x5FE84189, 0x50B49DD1, 0x0F4DA031, 0x195755BE, 0x32D75892, 0x0ACC8DC3,
+0x8004D52D, 0x71468A4C, 0x52212406, 0x4287C465, 0xDF11D168, 0xCC65162A, 0xF5ABF6D7, 0x1FCF4564,
+0x336B65B5, 0x6D8D79F3, 0xEE173A9D, 0xF8B7FEC7, 0x3499122B, 0x3A66F559, 0x638B0106, 0x9AC6A2A2,
+0x506AEFA7, 0x5BFA19AC, 0x0041D429, 0xCC84FBCD, 0x92AB1098, 0x35B14F91, 0x4CA47441, 0x8BEFB0FD,
+0xA676A214, 0xE0BCFF1B, 0xB66BBCFA, 0xF7F51AE3, 0x8923E853, 0x7C8E2648, 0x63DF4DFA, 0x5B126708,
+0x4CF77405, 0x62FC871B, 0xE72B0321, 0x0AAD3B56, 0x85F9D3B6, 0xCBC955E6, 0xAAB642A6, 0x84889402,
+0xCC4F93D8, 0xCCD64C70, 0x6A057B76, 0x3E2772FC, 0x2EA5818A, 0x12529546, 0x52475902, 0x5E880125,
+0x5DA0456C, 0xE7E0B221, 0x67B28F28, 0xFF2BE95D, 0x77E57E3D, 0x0D17692C, 0xD7C794E1, 0x3E84593A,
+0x25336650, 0xBC797326, 0xC15F09B6, 0xF478DE56, 0x4B8FB9DD, 0x7CBBDD49, 0xA6BB7109, 0xC6A8E4AD,
+0xDAF13B13, 0xA27DA108, 0x03F2BCE7, 0x4DC09AEC, 0x28CF76CA, 0xDBF1C1DE, 0x8BD483AE, 0x920C9F94,
+0xC8F8DAFD, 0x1AD6F0E1, 0x1A98DFFA, 0x958A88B6, 0xA4DFDF05, 0x2DCDC1C1, 0xAF1DB965, 0xC49BC2F8,
+0xFBE0068E, 0xDBF0EDB3, 0xE802C7A5, 0x13231111, 0xFE0DEB02, 0x07520A34, 0x48EAF3C2, 0x14BC90FF,
+0xE90FA247, 0x387A087A, 0x33C9B353, 0xF10C31EA, 0xCE1D9AFC, 0xB1CA2313, 0xA64D0F07, 0xB819C617,
+0xDDC74CE9, 0x1E71FD85, 0xF53E59A3, 0x03AD9E1C, 0xD7732E22, 0x7FC3C3B6, 0x01E8B625, 0xC66BC83E,
+0xD79B59C4, 0xE0C2A9BF, 0x6A867FB3, 0x6FAEE85A, 0x0272F51B, 0xFF5C02C8, 0xE5898EA5, 0xE6F1A24F,
+0x7A635176, 0x0CAE04B6, 0x62B2CB88, 0xACC872A2, 0x4CC37EC5, 0x541BD489, 0xA79318E6, 0x10E757F7,
+0x27B15205, 0xB1A7F8E6, 0xD97C6A7E, 0xDC1531F4, 0x32AD9F27, 0x503FECE3, 0x2FE7ADDA, 0xA87FCED5,
+0x3B2491F2, 0xDE3CBDA6, 0xD9B0DAE2, 0xF9E8C840, 0x59889C6E, 0x5C36F39C, 0x5A34AB42, 0xA9F0D73D,
+0x1DDA3D46, 0xEAD8A643, 0x4BB1EEB4, 0x26F9DDC3, 0x4080BDFB, 0x06CCB813, 0x7FEA0F7A, 0x733EB400,
+0xA0924D92, 0x81A2F4AC, 0x2186A2FB, 0x65E3FE75, 0x1C3CEF14, 0x2AD276BF, 0x755A9FBB, 0xA0C06172,
+0xE865A631, 0x51342ADE, 0x4BB57166, 0x9541788E, 0x43560A1E, 0xA6C99C47, 0x3DABB2DF, 0xEE0CDFCA,
+0x73FD7A8F, 0x9BB98F6E, 0x396300BF, 0x2B8F632E, 0x3B7C2C58, 0x6E0B3422, 0x7989D727, 0x0284E1CD,
+0x672E2062, 0xC29D80E7, 0xF4431487, 0x63C036A4, 0x92AED164, 0xD8B2D5A5, 0x5EDB7F85, 0x200F678F,
+0xE666306F, 0x19EB1C1F, 0x568C784B, 0x7EAB553C, 0xD3A81CA7, 0xADFB1A35, 0x81F6C982, 0x5D404242,
+0x1F37F1D8, 0xA0248CA5, 0xCB9429C7, 0x81D2FB09, 0xBF2CCE61, 0x34F94870, 0xCEA29187, 0x8CD6B738,
+0xC852A643, 0xE6FF9838, 0xF672E339, 0xBC9CF529, 0xBC1A7270, 0xF332DE45, 0x2274324F, 0x19D3ADFC,
+0x3A9D6F9F, 0xB6623720, 0x1C0D53C6, 0x9C9B005D, 0xC807DB70, 0xDBEB4D1A, 0x23DF5E6A, 0x31653D24,
+0xE9EE9A3A, 0x883C2682, 0x4FDFDBB8, 0x01931B79, 0xB96B2953, 0xD1BBB9EA, 0xF804DC6F, 0x9FF07047,
+0x0676AEE3, 0x34346AC5, 0x15061183, 0xBD07BC81, 0xB644448D, 0x4C27AE5D, 0xB72888F1, 0x25B28D85,
+0x1528B52C, 0xFEAEE891, 0xAE86255E, 0xA275F0FA, 0x9AA569C4, 0xD8D3C17A, 0x44EAA95F, 0xC8B949BB,
+0x1ECAB3B7, 0xC9BABFC2, 0x2241A16C, 0xAF37C8C0, 0xFC8B9DE0, 0x67AE2B30, 0x1EE955B5, 0x11540BA4,
+0xCEF49C81, 0x955D12F4, 0x5DA56ED9, 0x6D163091, 0x6DBB9A12, 0xA5F18DCF, 0x81C5969D, 0x4BFEFF8B,
+0x2409B4A4, 0xF9802712, 0x95688E12, 0x543A9B08, 0xE7D077F3, 0x543C6AF5, 0xFCF0F959, 0x21B73D30,
+0x117B771D, 0x84678E41, 0x6E8D7916, 0xAAFDA927, 0x404BEBAA, 0x4390DCBE, 0xFD8C4A5C, 0x77027A4B,
+0xCDF46AC2, 0x664ABC99, 0x60A2DE93, 0x75CB8849, 0x6EB635D5, 0x528DA55F, 0xE329AA8A, 0x52B6381B,
+0x5E83B9A3, 0x67808F27, 0xB005F8CD, 0x24234196, 0x802EAA19, 0x9156536E, 0x607876B6, 0x8C6FE71A,
+0x1E83B387, 0x3992472D, 0xAB035E7C, 0x94620352, 0x8E9F5ACB, 0x17D19729, 0x84D30444, 0xDAC9C8A0,
+0xADA6B067, 0xAFB41C42, 0x26AEC18F, 0xF01DE12D, 0x2B6BABE7, 0x72E63284, 0xC7F47DCA, 0x6BD64571,
+0x76BB68C7, 0xCBCDBC20, 0x90A8C3B0, 0x89E963FC, 0xECB61C6F, 0xB58DC18E, 0xBA68A67E, 0xC21640FB,
+0x8BC1D0E5, 0xCB47716B, 0x3C33F7CD, 0xAADD9DB6, 0x8C6A8A66, 0xCD30BF4D, 0x7FF76111, 0xAE29F53E,
+0xFC32445F, 0x450FDE2B, 0xD5F634F6, 0x2F5F6741, 0x32477719, 0x70A0F8B5, 0xE264D3C2, 0x025DBBFA,
+0x3FE0FEEE, 0xB4DD24C7, 0xB230275A, 0x911FE262, 0xD78ABA2A, 0x79C6A18F, 0x005735F6, 0x24DB115C,
+0x6F128739, 0xFBBC7CAE, 0x7C3E4B46, 0xB0D8EE87, 0x33F7C8FB, 0xF01EB196, 0x405B5B38, 0x906E56B4,
+0x2EAC774E, 0x9986FA3E, 0x5E6A832C, 0xDC4B4CB8, 0x10195B71, 0x06D70C7F, 0xA0562BB0, 0xBAF04C11,
+0xF63A8D4D, 0x13F5779B, 0xC5415095, 0x90D790C1, 0xC0F5DB55, 0x49F4237A, 0x44402AAB, 0x6F35EFA7,
+0xA96804E4, 0x617AA899, 0x0A01ABBD, 0x8F217DB6, 0xAF742EBF, 0x879DC6C6, 0xFE3F21E7, 0x170E9968,
+0x41C689BB, 0xBBECB2CC, 0xAC39446B, 0x6D890AF1, 0xEA31805C, 0x33C1DCAF, 0xFF67FDA7, 0x95E170F2,
+0xE37E5224, 0xFD6A0993, 0x4FBAE35A, 0xE928A7E1, 0xE3440663, 0x0A7F1911, 0x09B931B5, 0x7BFD8B80,
+0xFEBD421D, 0xFFA48EB6, 0x64096703, 0x24FD686D, 0x155131F6, 0x2770D1AE, 0xE473653C, 0x3678E19B,
+0x04F21250, 0x08B87FC1, 0xB1917773, 0x64080643, 0xDCF69FB8, 0xF088C3B9, 0x6F64A653, 0x9F348DEA,
+0xABF0F1C1, 0x1FD39B64, 0x3E47445B, 0x6E3B4769, 0x722B1E1B, 0x98EEAE63, 0xFF308A6B, 0x192DD487,
+0xDE74AF9F, 0x44803C3C, 0x9CA2B4BE, 0x73C33EB1, 0x120437D2, 0x7C51E8D3, 0x8AE47C86, 0x4421AE8E,
+0x1B843E51, 0xA2D4BD5A, 0xD4C2312C, 0x96643276, 0x19389387, 0x9196D220, 0xB8515745, 0x6C76A378,
+0xAAD74332, 0x4EC9F23D, 0x3B7B4CE3, 0xC57C623A, 0x76683805, 0x9E98002C, 0x757C422E, 0xBFBD2CB3,
+0xDBF1C71A, 0x306DDB37, 0xD0395249, 0x88A5A466, 0x8D256D8A, 0x192E05F0, 0x2E79E646, 0xE7FCE9DB,
+0xFE24A0C6, 0xB73CEB3B, 0xB9D73638, 0x182DC4BB, 0x5D90723C, 0x6DC608A4, 0x37EFD61D, 0xA34FF13F,
+0x8E2F6AA5, 0x72E20FBE, 0x3DED3B24, 0x17F3202E, 0xDE6FAF05, 0x1F62CF17, 0xE70EEDF1, 0x5127AF8D,
+0xCFC38BFA, 0x3F9CED78, 0x1252D1EC, 0x35E38087, 0xC1F8C137, 0xF7BEFA55, 0x2F6F4CA1, 0x55F78636,
+0xA1A8CEBB, 0x55756604, 0xAFB47899, 0x49E98916, 0x064B04BF, 0xB05FBB4E, 0xB090E573, 0x71D2DF7F,
+0xCDC5C859, 0xE06917F0, 0xA3BDD7A5, 0x408E0DB5, 0xF827C3A4, 0xDCE8765A, 0xE3503B8D, 0x7231CD7C,
+0x84A5D1AE, 0x57013680, 0xDFE4B620, 0x22CB1ED9, 0xA6D08DB3, 0xF73DE329, 0x9DC07300, 0xC05619CC,
+0x35CE8F19, 0x6BEFF184, 0x8D727E4D, 0xF049E4FD, 0x0B0065A4, 0x13D7F103, 0x33A57BB7, 0xC4B32C81,
+0x6CA81879, 0x5CA3BB0B, 0x616996A9, 0x5162FC8A, 0x78CFBD91, 0x35B5D061, 0x31A15388, 0x4979A49F,
+0x6961B983, 0x8E81C934, 0xFC91C8D6, 0xEACCA784, 0xBC6147A1, 0xD24C85AC, 0xBCE4997E, 0xC2DD865B,
+0x985BC21D, 0x9E214DB5, 0xCC7AD88C, 0xB29366BD, 0x12C0DFE6, 0xB711F2C0, 0x7F190EFD, 0x11FF5762,
+0x68171769, 0x1C317A09, 0x6ECAF23D, 0x39130782, 0xD35F2B8A, 0x66E23F0D, 0x37B19F2B, 0x80DAB769,
+0x3825D05F, 0x27479598, 0xB27009BD, 0xDDF527D1, 0x4DBA9737, 0xF9830DA6, 0x71C74142, 0x417A1B0B,
+0x04F012DF, 0x9BD2DEB7, 0x5C313EA3, 0xC3CEC933, 0x3C91B67C, 0xB195244C, 0xC20C3141, 0x4EA31975,
+0xBAEF2E5A, 0xC97272D3, 0xF63D2D33, 0x30D36620, 0x2E49DD8F, 0x785342A0, 0xDE91568E, 0x498E563F,
+0x709D4C2A, 0xDE2A7505, 0x3DC8E2E7, 0xFEE88D97, 0x572E4E5C, 0x5DB919DF, 0xE599F2CB, 0x64F82990,
+0xFA75943E, 0x8B45E86B, 0x77B86A4B, 0x737B9EB5, 0xAED21BCA, 0x47AE7139, 0x3E8D1BE2, 0x390429BB,
+0x70DF6616, 0x968EB93C, 0x581493AC, 0x2B49EF71, 0xCD86A439, 0xEC5546D8, 0x60F3A256, 0x431B36D2,
+0xA6CB5F34, 0xC8647E9D, 0x596360A5, 0x311DF2EE, 0x437A8EDC, 0x68147C13, 0x9AAB35E9, 0x1B9B5DB9,
+0x0F07812C, 0x1EBD9599, 0x2D309AFD, 0xD73C19EE, 0x26ECE3F6, 0x165920B6, 0x7AEE9A42, 0x996EC0C2,
+0xF5CA22E3, 0x790F8588, 0x4C43A978, 0xC0F7B318, 0x8F7A0D22, 0xFD29886B, 0xC4646C39, 0xD8B71318,
+0xB84D73F0, 0x2DE1AE68, 0x15D89CF8, 0x14F5C92E, 0x4AF8C647, 0x59FC2ED5, 0xE675A4B6, 0x9B6A3BC8,
+0x2DD3A622, 0xEE84A970, 0xC1ECE2A3, 0x9BD35712, 0x0BF92118, 0x9D95D05F, 0x70F22FBE, 0xF957EF0C,
+0xB9061C55, 0x683D5261, 0x4E6407A3, 0xA255592E, 0xA09B0F75, 0xB7EE6A65, 0x6B2F3276, 0xFA72F28A,
+0x4814FD8C, 0x66FD3FE0, 0xFA2018CC, 0x2EA5E8BE, 0x9EC25609, 0x291C5B0B, 0x0356E5F7, 0x17E3F404,
+0x32B59D15, 0x5E2D077E, 0x33368EF6, 0x205E7D68, 0x13A185C2, 0xD18A4A4F, 0xEEA519A8, 0x75336424,
+0xB45D6C2C, 0xF87FADF8, 0xBE7E97EF, 0x6648D675, 0xB75E4805, 0x8CD9EAFD, 0x4D4129DC, 0xDF0288BC,
+0x31505210, 0xF6A55759, 0x8E1841CD, 0xFFA76200, 0xE9EE7413, 0xAB556F7D, 0x9E546AFC, 0x53B879DE,
+0xCAAEB70C, 0x933ADD65, 0x193F9ED0, 0x6918952D, 0x6CF5738C, 0xAA355007, 0x7155BEB1, 0xA8B666AD,
+0x98619E48, 0xA2568CE1, 0xFEA05B64, 0x4D8607D4, 0xF7272A11, 0x1A591C15, 0x4A442780, 0xEEA07ADE,
+0x5AF3FA18, 0xF71A88E2, 0x0B1437F2, 0x2E785A77, 0x1C0817DE, 0x98E7815C, 0xEAD7A46D, 0x340138CE,
+0x21931342, 0xED73CE2A, 0xF762BE52, 0x79EAAB2A, 0xFC91D6F2, 0x7C810D6F, 0xBB43DDB5, 0x032CA7EC,
+0xC8B1B040, 0x349C45FE, 0xD67C1B41, 0xB424B8FF, 0xEA9DBDAA, 0x050086B1, 0xFE331D2F, 0x597AA146,
+0x04B98580, 0xEDBA7472, 0x2C42B80F, 0x945A6C23, 0xBCA5CD27, 0x6095D51B, 0x9CA34A73, 0x742F571A,
+0x37A76CB5, 0x819D8A93, 0x47D1EC23, 0x03796A44, 0x22A0208A, 0xE66592DB, 0x95E7F7B8, 0x254E1766,
+0x909F1C3E, 0x151827C0, 0x6ADB63B5, 0x3914AE4D, 0x1FDA8A3E, 0x26458722, 0x26E167F6, 0x6FE66025,
+0xFA9365F5, 0xCDBE40F1, 0x2B4FF777, 0x8E5912D1, 0xE7ABA49A, 0x36DCE397, 0xFE1A585A, 0xC7277F30,
+0x730DE97A, 0x0F306C9D, 0x0EFA5687, 0x64BD276D, 0xFC9E8146, 0x5EC220B8, 0xA222FECE, 0xC4758667,
+0xD63109E1, 0x4640CE29, 0xE6568AD9, 0xFC1FD135, 0x83B0DFF9, 0x8BB57E5F, 0xB70A47DB, 0xF1385706,
+0xA73D2B57, 0xE666AEA7, 0xF2462188, 0x93CB3685, 0xB42C64C4, 0x13AD2671, 0x827C1446, 0x140735C2,
+0xE7D2B7A4, 0xBDFCE9A5, 0xEDAE7A89, 0x8AB32A3C, 0x3320FB36, 0x627FA8BD, 0x5A9102BC, 0x73C6B88F,
+0x2624F821, 0x83773723, 0x5301BF7C, 0xA4AF42B6, 0xABCB98AF, 0xC9B1FECD, 0xC6A3F14F, 0x67F20D0E,
+0xE6A28B1D, 0x9810596F, 0x8E2B9A0D, 0xB3CF829D, 0x795CBB60, 0x7B5EE38F, 0x1E572EDE, 0xE0A8297B,
+0x433B04CA, 0x7D70FC8E, 0xB7441918, 0x3B5DFB81, 0x0023DC7D, 0x22598D97, 0xE016D12C, 0x4032E870,
+0xF4491931, 0xEBEC05C5, 0x88BB87F0, 0x13750B6D, 0xF60096C9, 0xE8CE7C25, 0xD3B3B11D, 0xFD38BDF0,
+0xA0883261, 0x04F1B29F, 0x4027E40A, 0x00E43173, 0x23E596E4, 0x41380852, 0x49A2DB0F, 0x1BB51F91,
+0xD21C63B5, 0x53911683, 0xCD51EFE6, 0x7E23617B, 0x7F5E71B3, 0x4823FBA8, 0xB7DDEFE4, 0xB4BA19A6,
+0x04C1F4B4, 0x79FBBA25, 0x645B8207, 0xFC0C22D1, 0x0C3FF0E4, 0x5BEB599D, 0x8EEF265F, 0x8500B6C7,
+0xCD2567DD, 0x70E8EA70, 0xE1844A00, 0xD771DADC, 0xECF45BA7, 0x8BB4B428, 0xA43182C7, 0xAE6E7F66,
+0x1FF3AC41, 0x43BDC300, 0x193D7DC6, 0x3AFB9EE1, 0x938A935D, 0x73C754FC, 0xD54450CF, 0x558241F9,
+0x9C72AC1B, 0x1F5A9F7A, 0x558F193C, 0x01F55BE8, 0xC63F081E, 0xE8E98E72, 0x067CEBFF, 0xA70BAC31,
+0x0889884F, 0xCA4DA415, 0x457DD785, 0xC02BFAEA, 0xC76A8EDD, 0x2F68A64F, 0x9FF3BD4B, 0x3410BB09,
+0x42CF4833, 0xCFB8BDF7, 0x42A5FD9F, 0x79202E86, 0xA4868093, 0x319A9EF5, 0xA3386778, 0x35305DB3,
+0xCAD0F323, 0x6CA4E196, 0x4213F6AC, 0x6733623A, 0x4ADAA04C, 0x156F4839, 0xB5A5CC4D, 0x97A78471,
+0xC747DA83, 0x84E7E309, 0xD48912D8, 0xC7F0CAE7, 0xFD9A9543, 0x91AA52F3, 0x55DED6D1, 0x61EBDB0D,
+0x7E3167A9, 0x3C1B0275, 0x517E66E9, 0x60C6F8C9, 0x02073079, 0x46D41B0D, 0xBE7B636B, 0x261CEC8E,
+0x4CA5E685, 0xD6BA3B9A, 0xBC2F96AB, 0x563DAFF5, 0x462E959E, 0x9A9F92C4, 0x8049C941, 0x71A521F8,
+0x6B783E8E, 0x190E33E5, 0x5EA9186F, 0x7A0469D8, 0xB830ECCA, 0x4CE828D4, 0xEB087E47, 0xB4D8730F,
+0x655C64E3, 0xCB42BB00, 0x4494F98D, 0x894BB24A, 0x549F7FD4, 0xECEA1E4F, 0x2ABC8EC8, 0x2B225085,
+0x5CEB9E65, 0xCAF983A0, 0x99D3A970, 0x534587D1, 0xCC3B7F60, 0x2A0727BB, 0x76CDF175, 0x044F8818,
+0x3886A523, 0x8DDF9E20, 0xF5B93A09, 0xAB7B1E75, 0xE4565AC5, 0xC993D13E, 0xFA787AEE, 0x6F4DF3B4,
+0x200138F5, 0x53BCCFE2, 0x8C09F780, 0xFF04F48A, 0xEDEE4250, 0xB3A6ECFA, 0x1C3131EE, 0x9EB97F1D,
+0x494E9CAA, 0xAA9DCE18, 0xE7E83CBD, 0xE8370251, 0x7C2BAEDE, 0x26E97727, 0x9B219EF5, 0xF82BCEF5,
+0x4F0CA1D2, 0x7A46AB06, 0xD8AF5285, 0xA00281D8, 0xBF56CC86, 0x22E67FD9, 0x8CAC8EEC, 0xB4FB720D,
+0xE9603573, 0x4E7BFA8D, 0x5E6DA0DB, 0x41B34A79, 0x82A4F034, 0x5F72F6ED, 0xF19C6BB2, 0x571AB961,
+0xC8234D5E, 0xA0859CD4, 0x618EBAAD, 0x7C8D7217, 0xFEF31407, 0x9AA25276, 0x651AE115, 0x679BD467,
+0x39C6027D, 0x8A18A29A, 0xBEB52FE6, 0xE36F3249, 0xDC53FFB7, 0x3E1D1B45, 0x9E1F7387, 0x97506A52,
+0xF8F661BA, 0xA6EB4481, 0x9A5C8F36, 0xD8C58918, 0x5BB9614E, 0x94FA893B, 0x71394B4B, 0x8198DA00,
+0xF73C7B24, 0x08A6ACC1, 0x6DEFDC13, 0xB333A1AB, 0x0CAFA4BA, 0x9F5B5B04, 0x1CB6FDF6, 0xF91705C6,
+0x2AFE58AC, 0x6230B2B3, 0xB1C9C92B, 0xB0D2EF43, 0x7AC8E4CB, 0x5F5F7D4F, 0x56B9A230, 0xD32231F8,
+0xACC6BA5C, 0xB599223B, 0x1F4D2A31, 0xDF6FE4C3, 0x1246E7E5, 0x5849BD36, 0x0B4DD9DE, 0xF2D36FC2,
+0x279343DA, 0xD1AAC6D8, 0xE306D4E3, 0xCC57F3BB, 0x9587B8B5, 0x61F6A33C, 0xE9B7FCBB, 0x20B893B8,
+0x302C9B42, 0x556BA4F2, 0xC29AF430, 0xDFC71EAF, 0x5A5B5440, 0x72153770, 0x0AF63DAA, 0xB5409A65,
+0x760E3326, 0xD3412571, 0xF6AF0AEC, 0x2EF37E92, 0x87796543, 0x6E066B3E, 0xF1A80FCD, 0x61E1ACA8,
+0xCA2D40BD, 0xD5A1EBDD, 0x469BD73A, 0x9233236F, 0xA7321C4F, 0x077AC2A9, 0x5327E3C0, 0xB6FD074D,
+0xD57B66A5, 0x5C9581A8, 0xE7A4DBF8, 0x8C26D721, 0xED4351D5, 0x5DE096D2, 0x086394D0, 0x99FB9F6D,
+0xD75B593A, 0xB312B61D, 0xC319EF43, 0xA105A2E7, 0xCFC7508C, 0xD7F8A4F2, 0xB7ADEB79, 0x1B2BE24B,
+0x279A8C95, 0x0291FD8D, 0x128D91C9, 0x30231099, 0xB417281C, 0x529DEE0C, 0x82E92AA9, 0xCCCD3DE1,
+0x92E36FFC, 0x59877146, 0x15D6EFC2, 0xA1C6E5B1, 0x568C49C4, 0xA29A7722, 0x2F8A7E1A, 0x91F2BF23,
+0xFB21FABC, 0x1011E9A2, 0x2A864710, 0x15905297, 0x70529EB1, 0x3F43900A, 0x04D4769C, 0xCA834F3E,
+0x31DB67BE, 0x381BC50D, 0x33AD9B47, 0xA1A0C447, 0x172734A0, 0x3A9C5E87, 0x31E051EF, 0xFC53F9BE,
+0x6E1EE227, 0x6631DB35, 0xD065B39C, 0x5E840FF6, 0xD5D22D32, 0xF2AF86F2, 0x7472EC73, 0x998C086A,
+0x93C2D00C, 0xC2DF5450, 0x73AC86D7, 0xFE58701D, 0x03C52E8E, 0x7660653E, 0xC5B99255, 0x0737F5AE,
+0x4E94E0A0, 0xE4AF3C1E, 0xA7D2EA67, 0xAC41A9C8, 0x5F1F6589, 0x1BCE73A1, 0x4D64E222, 0x3E49139B,
+0x67B45BE8, 0x21BF1C3F, 0xC475E746, 0x978AFD2D, 0x0533110A, 0x59D09B17, 0xEDF0DCE9, 0xEE333451,
+0x59899F64, 0x9FF69D84, 0x0E3FE08B, 0x04A7E859, 0xAF3666D7, 0x6F854FCA, 0x4E69068E, 0xEA427E47,
+0x07475EB9, 0x6F4996A1, 0xD1080F5B, 0x21160CD6, 0xF9F41BC7, 0x820DFE2C, 0x3545B1BA, 0xB21A9FC0,
+0xF0BAE0D3, 0x9F80597B, 0x85F850A6, 0x7A3CC84F, 0xE179A88B, 0x320C489C, 0xA5677258, 0x9C3E2389,
+0x107FAFAF, 0xB3A3B5BB, 0xD15BED11, 0x6FFEC597, 0x9B967375, 0xD94F3EE2, 0x67ACA769, 0xA031FE43,
+0x9CE5660A, 0xB159AE34, 0x1A3CA566, 0xE9066DED, 0xDB5693A7, 0x08F536C7, 0x7778082E, 0xCFBAB37C,
+0x9A271626, 0x2DE9D31E, 0xF57F9690, 0x2A44A5BF, 0xBDFE949A, 0x3988D72A, 0xB93CE6E0, 0x6A89A1F2,
+0xF83E9DE1, 0x7D113899, 0xC4E24446, 0xF681851C, 0x63F075C2, 0x025B753C, 0xB854F51B, 0x84B81BF6,
+0x1393B07A, 0x4922FC5E, 0xA3FE4F9B, 0x8E9BA90B, 0xBC73E346, 0x9791A958, 0x9DC73FF7, 0xC2D86BC7,
+0x006DC8CF, 0x9C99FAC4, 0x4E32CF60, 0x8D6B3674, 0x49475B7D, 0xDD740D00, 0x3E3AF88C, 0x08154560,
+0x923094E9, 0x48EDB683, 0x6D0F1A0B, 0x28A25A2E, 0x45510885, 0xCFDB3407, 0x05261294, 0x5D51D4E4,
+0x0F7ECEDB, 0x0307A967, 0x14E23B2E, 0x91CAC073, 0x8121028D, 0x4C4CD0F7, 0xA3EFEB55, 0x75578D45,
+0xA0356765, 0x716FBE8C, 0xE25B794D, 0xC5E78C32, 0xD7048076, 0xF1B40A7F, 0xCDAF6CEE, 0xCE074856,
+0x4D87C73E, 0x2D32CCD7, 0x1787959B, 0x177BD6E2, 0x1EBF54C5, 0x5D841B43, 0x16AA7EE4, 0x97CD8E25,
+0xF2A6842E, 0xB0844112, 0x5C5F922F, 0x7131AD8B, 0xCD7069D9, 0xA2EE43B8, 0x20925E66, 0x927525F8,
+0x82530D50, 0xE04D4EB1, 0xA5E33C82, 0xC3882999, 0x96667A94, 0x17CC81FF, 0x06986AEE, 0xE6495124,
+0x08A6F286, 0xC182341F, 0xC1626DC3, 0x266CCF37, 0x96BD8D08, 0xFD87F547, 0x83898EC7, 0x75E689C3,
+0x5BF37766, 0x3D83E73E, 0x7C9EC2A9, 0x26D2DB06, 0x5E9B502B, 0x829F8C9C, 0x63306DE7, 0xE018D672,
+0x893ACCB1, 0x731FF2FC, 0xAF1D175C, 0xEC3644E7, 0xC042E3EB, 0x88A8B12A, 0x9A47954D, 0x83BBE643,
+0x562E4A22, 0xBD41F4B5, 0x0299F8B8, 0xE3C786D4, 0x2161F5F9, 0xF740F6E2, 0x50039811, 0xDB1F4A11,
+0x5011A2A8, 0x9E43E3D4, 0x0F4D704A, 0x48D3A611, 0x8754752B, 0xC1267559, 0x3FEBEC20, 0xB85462B2,
+0xC6D240A2, 0x3477716E, 0x691CFA32, 0x4F7F8C8A, 0xED0B5201, 0xCA78011C, 0x6DD1D5BF, 0xC56FE8B4,
+0x9905578E, 0x1F6A4E43, 0xC9505322, 0x5B418CCA, 0x9797D788, 0x517AB900, 0xB2C84245, 0xC905790F,
+0x63A893B0, 0x8619AFC1, 0xDEFBADD0, 0x5D335214, 0x6EB34E21, 0x229BA606, 0xA960DC57, 0x397E1845,
+0x7AD825D5, 0x04529A10, 0xB7413ECD, 0x7E8FE4EF, 0x408D321F, 0x41D334D2, 0x3E3DE539, 0x68C77F96,
+0x589D1984, 0xDAFCF2F0, 0xC883C6E7, 0xA3F21A26, 0x77174113, 0x43A1D27B, 0xCCBF8ADB, 0xCE888AF4,
+0xA9D459B1, 0xFD351B78, 0xA7EA59BA, 0x746290CA, 0x7FF04E69, 0xD5E4C718, 0x4E793E84, 0x2288ED81,
+0x69FC6BB4, 0x5AEF958C, 0x0995692C, 0x31194621, 0xB95928F0, 0xDAF39FA4, 0x115B277D, 0x054C1B3D,
+0xCED0D71E, 0x30F27DA1, 0xE905B54E, 0x07487935, 0xD9345DBC, 0xAF4E7C97, 0xD6C78D0C, 0x73C0CBF8,
+0x2FBA8327, 0x703E05EC, 0xD9590703, 0xC05B5F22, 0xC80B2709, 0x47A1ADD7, 0x47056D3B, 0xA02C2510,
+0x7CFA448A, 0x5AA3FFBD, 0x9BC4CC74, 0xF39B8FBC, 0x8697DFFB, 0x04AF7AA3, 0xE3806D5D, 0x9232A7E8,
+0x854B72E4, 0x050519BB, 0x466C9527, 0x748AD44B, 0x0D0A2FDC, 0x6A74A97E, 0xA1B3C5EA, 0x6AB66EFA,
+0xF1302467, 0xED4CB9B6, 0x333D667A, 0x903549AC, 0x7155F28F, 0x93AB3F52, 0x639E222A, 0xF05E21BD,
+0x3283FEC2, 0xD9C8B392, 0x748CE5F3, 0xDD6F3351, 0x83F2B2DE, 0x47FE7BF7, 0xBB5426AE, 0x34BB89C1,
+0x8B68E975, 0xA1731A32, 0xBCC76D43, 0xE4185FF5, 0x89D4F0D7, 0xF4749E02, 0x58C8238B, 0x6A2EF7B1,
+0x702684BE, 0x37E11FBB, 0xBD34509A, 0x5B0ABDBA, 0x23DAA0A1, 0x1FE10A01, 0x31D2E2BF, 0x28E4DC70,
+0xCBCE4AD0, 0x5733651D, 0x7E78A53E, 0x10E4F21D, 0x47EB360C, 0x627D18AD, 0x1D900A59, 0x0FB10F2B,
+0xFD66644A, 0x8CAA8C4B, 0xA4D98B10, 0xCEC86571, 0x64863B56, 0x5D88E0E0, 0x4745922A, 0x0D5BB28B,
+0xE9DD4DF6, 0x4AE3BAEE, 0x6B529542, 0xAB928E15, 0xCC6081C9, 0x66E4F650, 0x10C16D40, 0x229D1E86,
+0x69EA8978, 0x93E0C4BE, 0xD2D3CC55, 0x47548A27, 0x7215C3C8, 0x841D59E0, 0xB1060191, 0x276A75D1,
+0x79D4913F, 0x239A08E6, 0xAAD440AC, 0x111BBAFC, 0x259FFF0B, 0x3E10F276, 0x111EAD9C, 0xE3B555BB,
+0x98CF5E31, 0x59233796, 0x2A8CB703, 0xF2F509E6, 0x05EC46C5, 0x13C7059E, 0xF19BEC8F, 0xF9158C6A,
+0x93E349FB, 0x0B14E34D, 0x3AE32475, 0x746FCA5C, 0xAC42C0A9, 0xA3D94D0D, 0x1EE8AF64, 0x9DF85329,
+0xD8DBB861, 0x79DD3A3D, 0x69211585, 0xA0A4061C, 0x5E679458, 0x2B38CF29, 0xEBAC1B74, 0x839F9A39,
+0x0DBD2627, 0x332B3C75, 0xBECB84C1, 0xEFD21DC2, 0xD0E9AED2, 0xA87EF36B, 0x5545E02D, 0x257C7734,
+0x7E6F4AF4, 0x55822C6B, 0x68658888, 0xC07C74C1, 0x5DE4BA38, 0x17A4C851, 0x14955CEB, 0x99A43AEB,
+0x88140C5A, 0xDC47AB84, 0xF0679961, 0x7310D518, 0xAD75FB5A, 0x418EB118, 0x5128BDB6, 0x83BC1AA4,
+0xBC2769C9, 0x55A44C27, 0xD8B3DEEF, 0xC7CE05C3, 0x3E1FBA4F, 0x884698D7, 0xA85DFACF, 0x385CF73F,
+0x17A23FAF, 0x10FBAFF0, 0xD302F5A2, 0xC8EB341F, 0x80C01C4A, 0xFD26EACA, 0xCA7C3444, 0x7153B159,
+0xC1D13ACC, 0xE95AAD8F, 0x9329A117, 0xF5F39779, 0xC9699E7D, 0x2542F0FE, 0x0D683BB8, 0x95813141,
+0xA58136F4, 0xDEE6BA3F, 0x1F45C91B, 0x6611DCC8, 0xF7CBBEA9, 0x9017E89A, 0x5D8C0198, 0x0CF5AC7C,
+0x045C7F6D, 0xB5434EEE, 0xDF045438, 0x4A2D5A94, 0x821BBDC1, 0x69FD8355, 0x2534CAC3, 0x3BF984FE,
+0x96CE6C3E, 0x93D7A73C, 0xB19FF5DB, 0x1AD2C251, 0xCA6EFD05, 0xA9B2213F, 0x5D9954F1, 0x24486750,
+0xF0AAE090, 0x3E96CAEF, 0x0B24FEF5, 0x35CA9D37, 0x88A5DD39, 0x00C93D23, 0xAB049482, 0xE060F5F8,
+0x567415A4, 0xD9B87E49, 0x171A9051, 0x19263657, 0x7D48E90C, 0xE2C345AC, 0x17CB9331, 0x139CE4E2,
+0x5E091B62, 0xC7D5B547, 0xCB49A10A, 0x15B41728, 0x88F12F85, 0x25EF85FD, 0x23298154, 0x597B6145,
+0x1D1E0D3F, 0x975F69AA, 0x20BD38B3, 0x00F02CC2, 0xE15152A9, 0x6FD3FB98, 0xB0A5549D, 0xD4DD074A,
+0x61C91B16, 0x02D0E146, 0x15C8A910, 0xE1308D61, 0x5EA7BD85, 0x96A8E4B9, 0x1627FE3E, 0xDAE5D530,
+0x3C39D95D, 0x0D08CE17, 0x36E9938F, 0x02B068A7, 0xE36FBE22, 0x6867A6A5, 0x0C5A1BA3, 0xA3179777,
+0xE5E63FA0, 0xEAD1A9A5, 0xE472BF3D, 0x805EF3FA, 0xF4859204, 0x7B5E0895, 0xC1BE3CA2, 0xCAD12291,
+0xDB553D20, 0x72D81A5F, 0x79E4CB85, 0xBB679C11, 0x43AECF95, 0xD87F8474, 0xCC8922B4, 0x6FDE8058,
+0xA89687C7, 0xE794D6EC, 0x269FC35D, 0xCCE5FDF8, 0xEBAABEE5, 0x211B0387, 0xF9B819E0, 0x491E5904,
+0x95688133, 0x0F77F6B1, 0xBB00470D, 0xDEE27F37, 0x09240837, 0x2863C039, 0x8EC3D4E2, 0x5B078668,
+0xE3422DA5, 0x130C5923, 0x5E0A0B0F, 0x3F6090FC, 0x70E2EA9E, 0x19EEB03C, 0xA090948C, 0x7AE6EF09,
+0x941B3ACB, 0x34487D39, 0x53602DF5, 0x69428B46, 0x775687FB, 0xB90B3411, 0x584545CD, 0x0249489F,
+0x00EF5935, 0xD4B99BE9, 0x94247471, 0x742F4F59, 0x3E7BE151, 0x19E5B3AA, 0x04A487B4, 0xF7185E86,
+0x48A40C7B, 0x89737A0B, 0xDE5924E5, 0x8CB6D8A5, 0xD8A69590, 0xED82C74F, 0x8BAAE6FD, 0x8EE809D3,
+0xF573025A, 0xC1CAF74A, 0xE9DA52CA, 0x60CA5E9E, 0x923F9B38, 0x1D462BD6, 0x138E1186, 0xCFEE3037,
+0x0590B5D6, 0xA0CF76E5, 0xCDC8804E, 0xC80F2D6E, 0x2248A8BB, 0x1CEDBC0A, 0xFB9634A4, 0x06B63D5B,
+0x8BB4E3B7, 0x8A127E24, 0xE335BBD9, 0x499CE86B, 0x2E63603F, 0x454AB93D, 0xCF647ECA, 0x26D000E5,
+0x814632F7, 0xCDC5A206, 0x0C67D133, 0x6C556502, 0x68DDF823, 0x71C178DB, 0x49AE555B, 0x1E5CA4FA,
+0x4EF57D9E, 0x0D0B46A5, 0x11F45C8F, 0x90A5583B, 0x3D4178E6, 0xB34FC0E7, 0xA1166173, 0x5FE4D2DA,
+0xF2203CF3, 0xBADC8704, 0xAC36CABF, 0xADB338A6, 0x6707B6FB, 0x04E27FE7, 0xDB35F63C, 0x41EC40D3,
+0x35EF9B6F, 0x27E49162, 0xAD2B7731, 0x5F5BFBD1, 0xF0323017, 0x9E7BC89A, 0xDCF8EC44, 0x0D1CCF9D,
+0x3DCD5B4C, 0x3EA9E6EB, 0xD14FD73F, 0x7AC757AA, 0x1DAEFEBC, 0x7B8824C9, 0x32F7642D, 0x441C7028,
+0xD80EA3FA, 0x993F7DDF, 0x67C98608, 0x5FEAAA06, 0xDEED07AE, 0x2FE7BABA, 0x0054EB0C, 0x4C9C9C59,
+0xFE7A0591, 0xE16E4899, 0x0E96F98C, 0xBFFD7905, 0x4B7EEB6F, 0xACAB7AF1, 0xED94E50D, 0x1D54509C,
+0x1F674DD8, 0x5F15E126, 0x0A325F80, 0x3E69D533, 0x011257BA, 0x293C0372, 0x9EFD9AF2, 0x6AECB865,
+0xA80F8E3F, 0x010B88FB, 0xAFEFDFEC, 0xF2ED6028, 0xB272D292, 0x37872932, 0x8A1EC20D, 0x354401AC,
+0x0C041EA4, 0x8F6AE1C2, 0x129A78CB, 0x2D45420D, 0xDAFDEE06, 0xD823B429, 0xF9731383, 0xF8D59385,
+0x562B3969, 0x85A6EF40, 0xC3F52DC0, 0x18985989, 0x2C1591E0, 0x2DAE78F7, 0xA487D549, 0xC895669F,
+0x753230D1, 0x3C9EDFAA, 0x86689D41, 0xC1B29858, 0xE19352A7, 0x1912FACF, 0xB25F6A64, 0x2C91C5E0,
+0x1D403578, 0xC8C852EE, 0x71D44CC6, 0x39CE6C55, 0xF5C47544, 0x41C024C6, 0x241A2D46, 0xE28BE889,
+0xB63CF7DC, 0xC62E31E0, 0x10FBD915, 0x82FD51A4, 0x8E48B861, 0xDC1C19AB, 0x213131B5, 0x10E30B36,
+0xFB105584, 0xFA9BCAE0, 0x70B357DB, 0x3B83F577, 0xA70A44B0, 0xC011AA80, 0x24CD07A5, 0xC6323958,
+0x1EF050A8, 0xBB2AE6BC, 0x3702C0FB, 0xF6582433, 0xBBC27452, 0xD141B0C2, 0xAB552A21, 0x4CD4F6AE,
+0xB59D3839, 0x0BFE38C8, 0x75AE44B9, 0x6AA6E59C, 0xFF4A8412, 0xB0826A92, 0xEAB0795E, 0xF26F7055,
+0xA255FA73, 0xDB844ECD, 0x29BB7F22, 0x7E935EC4, 0xC8B9D0EA, 0x66DCDF9C, 0x44BBF3D0, 0x7A1939AD,
+0x2A1FD957, 0x66CB9359, 0x6B61C7BA, 0xEEFCF3B1, 0xC8ECBB17, 0x4CA033E2, 0x51B63A32, 0x88BB1033,
+0x76FC08D9, 0xDB69BA1A, 0xDAE83A7A, 0x5F82F964, 0xBF04AC4C, 0x152764AE, 0xB53201A7, 0xF16ECF46,
+0xE7F939A0, 0x47E6426E, 0xE876FEDD, 0xCA64FDCB, 0x8765EFA7, 0x729B2D40, 0x01A01B34, 0x8E4499B5,
+0xC88A3EF3, 0xC65A8AEB, 0xE8E88969, 0xB402F3C5, 0x3B9C0AE8, 0x45CEAFBC, 0x4514B544, 0x5FA3A78C,
+0x01048AA9, 0x4FB4DA8E, 0xCF931DD7, 0x5500BD51, 0x2899118B, 0x5EC88DDB, 0x2E82D1D6, 0x9F7E3616,
+0x894F3C3C, 0xA645432A, 0x10524BCC, 0x44428F4E, 0x135CE8AF, 0xB4CAFB34, 0xFA36DF76, 0x7E9F8B0D,
+0x43E44E05, 0xD4154CE2, 0xF928A5DE, 0x950FB59B, 0xA62DE487, 0x7C0D5C3E, 0x00D414E4, 0x1061282C,
+0x2C78A81B, 0x8FF2F77C, 0x961FE3B8, 0x37A4E1AC, 0x1A4D425C, 0x9A401B76, 0xA9334873, 0x7D0EB328,
+0xBC0DD9E5, 0x5D0C1D9F, 0x86DF4418, 0xF2DDE687, 0x9B485811, 0x89DCF1C3, 0xD2AD9097, 0x56996E31,
+0xE095CAC5, 0xCE830548, 0x0A53E857, 0x2A302BA6, 0xAF290B69, 0x19F7C7D9, 0xEB50ECCF, 0x044F8232,
+0x85BC41DE, 0x6E230145, 0x54172E75, 0xCE84C8DE, 0xFB7E1A5C, 0x0CE7F9E9, 0xF2E2D53C, 0xDA3F7564,
+0xACA72FC8, 0x58AFC64A, 0x38EE67C9, 0xE692ED59, 0xFFBB2C0B, 0xEBA3480E, 0x741006EF, 0x11017AA3,
+0x46B9100B, 0xE6F6A5BC, 0x6645DA2E, 0x031333D8, 0x61FBBCBA, 0xABA620D9, 0x035A7E97, 0xDA0EA62E,
+0x82ABF1A5, 0x1978663C, 0xAD692373, 0x836F9313, 0x2AF3CF42, 0x5C1529C0, 0x7F1BC452, 0x4F695A09,
+0x08F47933, 0xD5AC9A15, 0xBA2FF443, 0x095929DF, 0xDCFE2C8A, 0xF278EFF7, 0xEFC02BEA, 0x3F4F5334,
+0x3A09C318, 0x5EC4290B, 0x5E985869, 0x0955310C, 0x2851C9C3, 0x8D30A976, 0xD5096321, 0x0245BD89,
+0x534DECAF, 0x9C228C46, 0xEB6008D1, 0x6B1C291B, 0xAA861186, 0xDA101355, 0xE41FF0F6, 0x0D5FC0AC,
+0xE2763A0C, 0x2E07D166, 0xA8281837, 0xA9C4B514, 0x7D12A45E, 0x68B8BE4A, 0x4281AC06, 0x122D517F,
+0xC8AFDE69, 0x117F7A9A, 0xB53AC279, 0x174FFC91, 0xF6605790, 0x5DF93460, 0x5B1ACC82, 0xA5742490,
+0x1D18A655, 0x513A8579, 0x57AF0B0D, 0x5600310B, 0x998B036A, 0xA50E7CC0, 0x1FEE9AB4, 0x700FCF89,
+0xC8C9C582, 0xE0878A1E, 0x5CBD10F0, 0xCCB9831A, 0x8DF913CA, 0x6942647B, 0xBD195F1E, 0x5F2885D8,
+0xDD109C38, 0xF0E56DDE, 0x79FCFC00, 0x1E309A9C, 0xF814DBD4, 0xCA739BAF, 0xB79B9B05, 0xF61C096A,
+0x17F24B18, 0xA1499C26, 0xD9781DC9, 0x395F0DFD, 0x0C243886, 0xD6B741A9, 0x71E1394B, 0xACFCD89A,
+0xBFF3E6FB, 0x18F68B20, 0x766410DE, 0xCD521A95, 0x904A7476, 0x9488B196, 0x685ED84C, 0x862C775B,
+0x1B87AF76, 0xFD0B3571, 0x853D3CFD, 0x34D6833B, 0xF9356C36, 0x5FFF7723, 0x4E8016EB, 0x2AAD70DA,
+0x2B21DAE9, 0x973CBC84, 0x3AE3CDA8, 0x31F5B26C, 0xE1CD0599, 0x3CE18D7B, 0x6EB6163B, 0x5537D1FF,
+0x0C245ACB, 0xC880CCC9, 0x6E563E2C, 0x9538B272, 0x3437D833, 0x3006E873, 0xEBEE828C, 0x17845DEF,
+0x523D5B89, 0x8CD73BAE, 0x61467CE7, 0x9E397E4C, 0x0FCE02F9, 0xD5C857AB, 0xC48599BC, 0xE97BD64A,
+0x4D199EE8, 0x26E29DBD, 0xC11F6B62, 0xA330785F, 0xD07A6334, 0x724D2A98, 0xC15FDC86, 0x31BD2408,
+0xED01A43A, 0xBD6347E0, 0xA4D6B448, 0x628E5182, 0x7DC87893, 0x7A842E7D, 0x97B7CB13, 0x3083E5E3,
+0xB7E9E372, 0x4910570D, 0x2CDF89E7, 0x72260947, 0x1D0154E1, 0x4EA8B6B2, 0x815D0A56, 0x5A221C5C,
+0x69E191DB, 0x8CD76EA1, 0x02487EA4, 0xA55A4BC2, 0x2EC9F1D3, 0x1E36AA11, 0xB3026AE8, 0x98295736,
+0x0D95214C, 0x73F70BB0, 0xA6AA496F, 0xD23C6A91, 0xB3CEC7C5, 0x73C1A95F, 0xA477E6BA, 0xB616A4D7,
+0x83964707, 0xB019EE36, 0x99F2D581, 0xA0CFDE8B, 0x137CAEA9, 0xCC3EFE92, 0xE981D800, 0x3281117A,
+0xE3E6F3C0, 0x11B5E835, 0xD71DC20A, 0x4933E151, 0x910A9BEB, 0xB08A226D, 0x0C6D868C, 0x931BC662,
+0xDA18BBD7, 0x217520EC, 0xA60C6783, 0x26323307, 0x5AC41D45, 0xF4AC2363, 0x06E2E9F8, 0xD89CB954,
+0x30A8D996, 0xA5EE71B0, 0xCBA57F6F, 0x46F78F9B, 0x0ECAC3A4, 0x5F85AB25, 0xF7CF0E45, 0xE4568188,
+0xA587E22F, 0xD773CC18, 0x4A86093B, 0xF09D8FF7, 0xBA3E8111, 0x62377922, 0x19F37002, 0xDDA8C290,
+0x16D58F19, 0xE1C44548, 0x5898DC30, 0x053CE11D, 0x75E06372, 0x3C4BE82B, 0xEF7B4A63, 0x82738620,
+0x9E3F3EA3, 0x94CCF09E, 0x3A6F05C2, 0x747D1994, 0x265DDDCC, 0x03D1B1F9, 0xC1576B01, 0xCC96CCF8,
+0x65519F5E, 0xCFD2502D, 0xA89F8DA8, 0x53C4CDE6, 0x532130A8, 0xDA06A07B, 0xBC82C4A6, 0xAF2AB639,
+0xD1897514, 0xF8137F6F, 0xED5E0D4B, 0xC357DD0F, 0x808AA750, 0xA1B86BAE, 0x23381E04, 0x5EFCD1D2,
+0xBFCF33E7, 0x8DA44647, 0x5651016F, 0xD28A0D60, 0xA90E42B8, 0x4DCC5CEA, 0x98A02CE8, 0x68898C10,
+0xCAB17E5C, 0xBE666135, 0x124B1792, 0x9920D148, 0x6BC53877, 0xCA794669, 0xF6EE654D, 0x1877B8E9,
+0xDF07387D, 0x6AB56065, 0x81C6E78C, 0xA839BC35, 0xA7085323, 0xA757B551, 0x60FDEF39, 0xE4842267,
+0x02A49D4A, 0x821D99A3, 0xDC45FDC8, 0xA9BDE163, 0xE3487850, 0x29B5B834, 0x07A36831, 0xAC9EAB52,
+0xCF2FE5AA, 0x5472DFC7, 0x9A3FC130, 0x3E1A22BF, 0xE1A5873A, 0x35E1318D, 0xBD41CA97, 0x720D3D3F,
+0xD1182587, 0xBC8423A0, 0xAA661EA7, 0xA2B88012, 0x5595F087, 0x8971282A, 0x417B442B, 0x6F4EC46C,
+0x19C6CAC8, 0xF59C43FC, 0xF1F73AE3, 0x96236722, 0x3EE66099, 0x564F3FFD, 0x4E870161, 0x2AC8E536,
+0xC27AA60F, 0x3A2FF128, 0xEDC3CD17, 0xAF5C7A60, 0xD40127C9, 0x8480370E, 0x8B214948, 0xF5315DF4,
+0x89944298, 0x934AA41A, 0x23FE0276, 0x414D9252, 0x8F78F46E, 0x2569918B, 0xF656C00D, 0xA01E4E13,
+0xAD24E6E8, 0xFB86447C, 0xC4999F56, 0x387B0710, 0x57358A95, 0x290A9174, 0x042440D8, 0x21B5D1CC,
+0xA6BDEC2C, 0x3083BEB6, 0x655B825F, 0xE54D836B, 0x8BE1A40F, 0xBA269216, 0x67304804, 0x601F4F76,
+0xF576C237, 0xAA79599E, 0x838D9142, 0xEDA99E85, 0xC43E1F80, 0x108914D0, 0xCEEAD6C4, 0x1F3A658C,
+0xA7D7FE5E, 0x6AD837B5, 0x2E9E8286, 0xBF66814B, 0x09D0AF85, 0xAB7823EF, 0xDE5B38C7, 0x6810A608,
+0x1161B488, 0xB5053E5A, 0x782EFDE0, 0x3453A68B, 0x963D64DC, 0x6203A078, 0xEEFCA4C7, 0x631B9F0C,
+0x921FDD91, 0x81019397, 0x42B0CB73, 0xE4AE7EC1, 0xBEAF1FDF, 0xC12657FB, 0x27A5D62D, 0xC1F57367,
+0x1023A06E, 0x27174E26, 0xED186314, 0x5EAB3D00, 0xB59BEBB2, 0x1EDB7014, 0x094B2515, 0x38F9ADD3,
+0x7109D1A4, 0x41C858F9, 0x516E2CB6, 0x60ECDF1F, 0xDB5B9150, 0x5585AC80, 0xD3896615, 0xF86B1821,
+0xD5579DCE, 0x862388DF, 0xABAA5BFD, 0x0AC810AB, 0xD7BB2BD2, 0x5EBCEC52, 0xB0736E68, 0x5B063E76,
+0x1782AE94, 0xCCDECF2F, 0x29DD639D, 0x3FCDCD30, 0x84C8A4EE, 0x1B0BB9F4, 0x4F0AC271, 0xB1C6BDDA,
+0xF1607CDC, 0x4DBABDD4, 0x80D6BBE6, 0xF41E9366, 0xA135C385, 0x1958481C, 0x45968092, 0xD4891D1B,
+0xE766F732, 0x63449C34, 0x6C629169, 0x7986545D, 0x193F0D78, 0x8F8B42C4, 0x218A1A87, 0x99BB7E36,
+0xE1D527D5, 0x1457E103, 0xE2D24F9B, 0xC3C07A5C, 0x95C496E7, 0xD7A6BA66, 0x6303343B, 0x5F160517,
+0x2CF1E43E, 0x4840107C, 0xA0BA7439, 0x6DDF3C50, 0xFAFF3355, 0x1CAF86F0, 0x74C006B6, 0xDD916C2C,
+0x2162FA2E, 0x6515DD70, 0x0FA16C32, 0x322878E5, 0xA738F272, 0xF7F5BC34, 0x829B6C52, 0x4CEB4822,
+0xB4D6700A, 0x22B0C2A3, 0x56D1D0B6, 0x0B37BE4F, 0xDEB7ED1C, 0x3E609011, 0x7906D9AC, 0x24D34C0C,
+0x4E7BF365, 0x33ECF689, 0xFE4CFD84, 0x153EBFEA, 0xEE511CF7, 0xE0E9326F, 0x6C458B28, 0xDC7F00D6,
+0xC25BD14B, 0x2143DD06, 0xAC86993C, 0x04735D21, 0x574CC875, 0x4D5B942B, 0x03AA6ED6, 0xFBCE71C2,
+0x5AEF0AA9, 0x7DDBB4F5, 0xC879F2F3, 0x887560EC, 0x1E55A155, 0x9A4F5E5C, 0x356EBCE6, 0x60562F8F,
+0xF41B4C27, 0x3268EBF5, 0x31D8CBB5, 0x26C024F5, 0x25784BBD, 0x7AEDBCDD, 0x6F7970FD, 0x99A63285,
+0x9718C4D7, 0x83239AEA, 0xED020D8D, 0x8801CE87, 0xDD84450C, 0xC4E5ED28, 0xCB0A0158, 0x7922981F,
+0xFBE2913D, 0x2877D654, 0x17EEA162, 0xBC3CC88F, 0x18306EBE, 0xA67C48A7, 0x1DEAB146, 0x1BFE6AD8,
+0x25813161, 0x91AD701A, 0x15240820, 0x3F3B0FD3, 0xD2DCD8AE, 0x301BB1C2, 0xBB1135BB, 0xF609F89B,
+0x2EB7A9C5, 0xABA6DF46, 0x2998A822, 0x5D1CA697, 0xC34EBBD9, 0x94533AC7, 0x2B246F3B, 0x4E9404A7,
+0x56256EB4, 0x75B4C02F, 0x91AAF988, 0xD1E291CF, 0xAA56D6C6, 0x90E869A3, 0x1F1AC03A, 0x619A60F0,
+0x062DC365, 0x83971A75, 0xAAB72DC2, 0x901E6C97, 0x4448516C, 0x23A6BD50, 0x70949BE6, 0x2ACF2586,
+0x0B775F96, 0x21D7C5CC, 0x73364F15, 0x43D25EE7, 0x90E847D3, 0x52F7CF77, 0xC7929A97, 0xAFDC9E74,
+0xA1F0FE1F, 0x51798994, 0x4BF3977B, 0x993BA0BF, 0x98E1CB5F, 0x336362C1, 0xA109F1A8, 0xEABD45FA,
+0x1BD32EEE, 0x05D06FDA, 0x163B9FD7, 0x109626DC, 0x8BDBEE6C, 0xC8AE2549, 0xD55E728E, 0x81F10C50,
+0x131D24DE, 0x05B0C8DE, 0x4230E740, 0xF01F70D4, 0x9264DF25, 0xC30E719F, 0xAD24A900, 0x4096F674,
+0xD04958DF, 0xE9D5ECEF, 0x848E9A56, 0x69A03749, 0x075EC432, 0x947DFFF7, 0x54ED7ABF, 0x9DFBFDB7,
+0x736D8B8D, 0x412DC4E8, 0xD77F815A, 0x627F8046, 0x82AB4F7E, 0xD6702589, 0x51822286, 0x50E5FE91,
+0x44F27292, 0xD0E21C3A, 0xBCC64A75, 0x04888208, 0x6F820A18, 0x009C21E4, 0x2BE0DDE8, 0xC9056874,
+0xA9181962, 0xF51FBF8A, 0x84501216, 0x3474B79F, 0x03DE44DE, 0x66F26BF4, 0xD56E6210, 0xB29980C4,
+0x79DD29AA, 0xF714E554, 0x2CA00BA2, 0xB8D6FB3D, 0x7A1F6160, 0x59283C98, 0xC7A17C1F, 0xD9A42E65,
+0x94C56D5D, 0xE470CDED, 0xE749638A, 0x91E77953, 0x489EAF1F, 0xF276AE33, 0x8853963E, 0xAD7D9714,
+0xA1AA4E8A, 0x3AFAEAD4, 0xD1D828B1, 0x271B6270, 0xD1FD2822, 0xD04CD1E3, 0x7B959D1F, 0xB525C4CF,
+0x6875BCFF, 0x7A6B9DFB, 0x0AA9673E, 0xC3975B92, 0x13A53856, 0xE7749240, 0x34B76603, 0x55AC66F6,
+0x91925F92, 0xEDF20E6C, 0xEC400A82, 0x862B4C20, 0xB14BF98A, 0xC6A238CD, 0x595488D0, 0xB1AE413F,
+0xE1E1208A, 0x4BF37430, 0x61770680, 0xF440A4B0, 0x85357717, 0x3FF22E41, 0x22112ABF, 0x074462C4,
+0x3E2EBCF3, 0xDBF854FC, 0x21ED59A5, 0x61014AD9, 0x5AD07B5D, 0x9E9103C2, 0x3FFC0FAA, 0x65C64D82,
+0x04DE2D8D, 0x9219D8F8, 0xC25E558A, 0x9F2BDD57, 0x99EC033A, 0x5F32FC01, 0x09D8EF24, 0x8EAF9458,
+0xC8EB59C7, 0x594A25F8, 0xBFA83A0F, 0xBC2E5D74, 0xA0D49C31, 0x098D74A8, 0x3F6AB1FC, 0x13AA4950,
+0xBEBAB5C6, 0xD4028F26, 0x4B404B2D, 0xBCEB7284, 0x94213B28, 0xEB2EA724, 0x230B9649, 0xD25D453C,
+0x278E2DBC, 0xB698A0FB, 0xD5D4C6C9, 0xB83B718E, 0x8244A8FD, 0xD6FB05AE, 0xACE61C0D, 0x4C85D2B4,
+0x37B11347, 0xBDA93B23, 0x73210899, 0x049025D8, 0xB07652A5, 0xD4BB03B9, 0x125E8D3F, 0x86E4BE2C,
+0x430A2D09, 0xB7A6B746, 0x942C88B4, 0xC84E2283, 0x5E88AD99, 0x19CC7E58, 0x82A72734, 0x0444D31C,
+0xABE1D1C0, 0xAE874874, 0xC21CF708, 0x9088E53C, 0xF9F3BA7C, 0x5984ABAE, 0xED1C50A8, 0x83D167B8,
+0x17FBF4CB, 0xFD8B8E5B, 0xA601A450, 0x09210028, 0xDBB09AC0, 0x3CFB0DDA, 0x9DBC9700, 0x9B2EF0C8,
+0x2D16FB1D, 0xD9F2373B, 0x3656C2F7, 0x9512784B, 0x224887A9, 0xA222E9E5, 0x6A713969, 0xDCA4F593,
+0xB525E299, 0xD9A3C25E, 0x3F315486, 0x514EE52D, 0x995E2C44, 0xDDF7D879, 0xBBA05866, 0x09373432,
+0xA352296B, 0x4073B7D5, 0x2DA3380A, 0x92B1D2F1, 0x401B533C, 0x8DA476AB, 0x02EBB72E, 0x83F2D49B,
+0xA979F7F1, 0x634D9F1A, 0x8779DB3B, 0xA8C2728F, 0xAFC7FAEA, 0xD916072F, 0xC50A0516, 0xBD762B1B,
+0xA1D832A8, 0x513D88E9, 0x54E5122A, 0x5CFE1BD7, 0x6A5F678F, 0xAD409889, 0xCB6409FF, 0x4E47478D,
+0x6F1F5D97, 0x6F9181F6, 0x167FD760, 0x69F3D961, 0x5CC62F0C, 0xE6EBDA48, 0xA73EDD6F, 0xD771EAE9,
+0x98993616, 0x54531D15, 0xE6BAFE23, 0xCE0C4FE0, 0x7665EDD3, 0xCA0E2864, 0x0E00C7AA, 0xFB9589CA,
+0x3E45BC73, 0x9DD3D3B2, 0xF4858555, 0x6864D444, 0x26B320E5, 0xFAA0D75B, 0x6AF18A0B, 0x6F753473,
+0xD81FE314, 0x2C251AE0, 0x8A48160C, 0x0669D485, 0x533706F4, 0x46A9B0D2, 0x07E960A3, 0x18B91BDF,
+0xAA7C3784, 0x6067875B, 0xC2F7AD4F, 0x77281412, 0xAE6E1984, 0x2F46F53E, 0x74833DBE, 0xD7C4F57F,
+0xAC0224F3, 0x402CB673, 0xF2F33187, 0x43C63CD5, 0x63370C5A, 0x28EAA0B3, 0x15DC0827, 0xF8C13195,
+0xCA7A2301, 0xDA580E64, 0xBC992A21, 0x71FFF777, 0xC55C854E, 0x8D67C095, 0x0C79DCCC, 0x01F820AC,
+0x730966FA, 0x7CB7E3A1, 0x05716CA1, 0x05EA7146, 0x4B21BB4C, 0x57A3A46C, 0xA380C973, 0x0DFFF6E9,
+0x18EE3F11, 0xD8ABDCDF, 0x46E2E144, 0x8F88A329, 0x27C4D6F0, 0xDD4DB1AD, 0x560C9C46, 0xBF1EA842,
+0x68CD1864, 0x29AEE044, 0xCFFE9445, 0x3184F012, 0xB63EF1EF, 0x783E1258, 0xB6E3CE5E, 0x036759B8,
+0x28843EB9, 0x5B169A32, 0xB5FAAC49, 0x72161C31, 0x28EF56DB, 0x913BEC87, 0xDC38B2AA, 0x251D2C95,
+0x9AB65980, 0x5C567F15, 0x7B64B3B0, 0xFDE314E3, 0x3367A8E2, 0xE8087853, 0x05EEF21A, 0xA052A1C3,
+0x654C635A, 0x1868E5E2, 0x997FFC2D, 0xB09B7E98, 0xB3062859, 0xBC1E9BDD, 0xC2A1F4AF, 0x811BBDC2,
+0x174B86DB, 0x9979B634, 0x0F80A1EF, 0xA32CA185, 0x3E7149BE, 0x6AC8A06F, 0x3FB5DDAF, 0x3B7837F2,
+0xD1737C8B, 0xF8A72FA2, 0x2C2635FF, 0x0D5BD18E, 0x4780FD30, 0x8D29F1DE, 0x917DF894, 0xE52C9199,
+0xBFDB3EEC, 0x50E8FFB4, 0xFEF9A1BE, 0x82EFAFD1, 0xEA6694C9, 0x933E880D, 0x46CB6648, 0x6644D5A3,
+0xC8900988, 0xAACC23AB, 0xC8A93A92, 0x18FCB781, 0xD1F0018B, 0xF7E864E6, 0x7F5A7EB3, 0x79214E31,
+0x9682B826, 0xABFA04D4, 0x1DF77F92, 0x907FED6B, 0xD6840AA9, 0x67BAE9BA, 0x4D779B6C, 0xA3CA179C,
+0x9C5B2D8E, 0x1A2CAF1A, 0x0CB80652, 0x981100F0, 0x5C05DAEC, 0xC9E0ABD1, 0x640E910A, 0x3963AB5C,
+0xF10B1CC1, 0xA4959874, 0x48373922, 0x6435B742, 0xF3D4862D, 0xABF551F0, 0x03690B59, 0xE54BEBC5,
+0x9FC92B57, 0x8748BE97, 0x3F29F60D, 0xB0005606, 0x807B1CE8, 0x5307F987, 0x62D2DF3C, 0xC358BE3F,
+0xEB5C5520, 0x3F436B62, 0x71A6E46D, 0x0F335ABF, 0x444AFCA8, 0x89E2AADA, 0x87633F7B, 0xEC095AB1,
+0x25637515, 0xA75EE080, 0xD1011787, 0x07559196, 0x23705BD0, 0xFAF47373, 0x306EA9FB, 0x378D28C7,
+0x4B94695E, 0x44B153B2, 0xF5BD9D87, 0x00530E86, 0x2A1EB708, 0xA8D6B4E1, 0x5DDCA1B6, 0x62390240,
+0x455F2DFC, 0xE4A0E4DA, 0xBDAB0312, 0xB60DE28D, 0x101CEFC2, 0xBCA1132C, 0x0EC8B7CE, 0x90C50439,
+0x9031D7AA, 0x3124E69A, 0x726D201E, 0xA2E941F4, 0x0EC45CD1, 0x14EC8C41, 0xAFF54C66, 0x8D78C343,
+0xA31FB828, 0x4D3E55C0, 0x58C3E3E1, 0xB77CB4C3, 0x0CCA5EB6, 0xE8E9A34E, 0x7FCB63D9, 0x3147C71A,
+0x8DB3205C, 0xDBCACBBF, 0x16530793, 0xA6239263, 0xD7EC7506, 0x8BB600A8, 0xE9C6E150, 0x0B2D5E1F,
+0xBBF82859, 0x7DEF70FF, 0x09D7FAAA, 0x953F2DD7, 0xF0FC710E, 0x630C6807, 0xDC24EDC1, 0x606AE8B7,
+0x073544A7, 0xD9E6FECD, 0x139DA3D8, 0x4182A763, 0x88EDA595, 0x666EBEC4, 0x1E36D7F2, 0x4A5BADDC,
+0x31FCB68B, 0x2015E9B8, 0x7ADF8DF7, 0xE8ABB96F, 0xCCC1F920, 0xE3636221, 0x09987F74, 0x52A542D7,
+0x388732CE, 0x3D554B67, 0x7414DF5B, 0xDC5D7BF8, 0xB7EDB499, 0xEAAD6511, 0x1AF6F596, 0x9EA079E3,
+0x6220072E, 0x9E5BCB2D, 0xBE976247, 0x2304F0B1, 0x9476CDBA, 0xDC708109, 0x97DCDD7C, 0x83FCDE68,
+0x00E24B6B, 0x539B70BC, 0xFD9F786A, 0xADF4931A, 0x5B1705E6, 0xEB4FEAB2, 0x5BB9576F, 0x9E1F5591,
+0x41F4961F, 0xAA2ED7EC, 0x84A7282E, 0x37FD9AF2, 0xFCEDBDC3, 0x1ED640FE, 0x82B16A9A, 0x3D3B6835,
+0x43A3A708, 0x84E423AA, 0x14FC7706, 0xA6DCF024, 0xA852AAB5, 0x65E059CD, 0x2051A5B0, 0x4F9C0914,
+0xB272345D, 0x39FE0BBF, 0x6C85C71C, 0x6C73CC08, 0xD371EB98, 0x22F050E0, 0x01205ACB, 0x02C2B8FB,
+0x4AC82D13, 0x23E076CE, 0x628E6EEA, 0x00C6FF81, 0xF77E9951, 0x5C874674, 0xF130FC4A, 0x84C65D86,
+0x8A3C2896, 0x78236D9F, 0xB104B35A, 0x248FE9B7, 0x7ED9B82F, 0xD95F06D7, 0xC1D5D383, 0x1C8E422D,
+0xD5E73F2E, 0x5003F0D4, 0xB5317382, 0xD8261070, 0x704F4999, 0x3509A734, 0x70A48705, 0x3861CA10,
+0x934D4F1A, 0x2ABE75FC, 0xC3EB62CF, 0xBC0DBE0A, 0xAD50449F, 0x4B73E0E2, 0x296AF528, 0xA40C5251,
+0xBFD6439F, 0x0329B191, 0xC20B364D, 0x2A05B5B1, 0x9191BD32, 0x94B3B25E, 0x8E00BF0B, 0x1526856C,
+0x090033E3, 0x07B6AD6D, 0x0087EFB2, 0x3E9F1C1C, 0x2C0FA3B3, 0xF945E13B, 0x6A120B24, 0x15CD3AB0,
+0x3A71A968, 0x6E3816C5, 0x96A73EC7, 0x927DA68D, 0xDD5527ED, 0x0F262BE4, 0x44C6EBA6, 0x75060DB7,
+0x959F8F6F, 0x03D576A7, 0x7E5245B6, 0x2ED4CC6C, 0xCC6FBDD7, 0xCB5C841D, 0x0A05E417, 0xDC6E714A,
+0xC1E4ED32, 0xE36753DB, 0x8FA41499, 0xBFD5AFD0, 0x6D570030, 0xFF4FCC92, 0x3E4E9100, 0x2FFEE55A,
+0xE715EDA7, 0xB3968AEE, 0x32333CC9, 0x041C7725, 0x54D53497, 0xD14BEB71, 0x13DB6AC9, 0xE1517AE7,
+0x74337094, 0xEFAB3BEC, 0x0ACA155D, 0x4F11631D, 0xC60ECE8F, 0xE797CD53, 0x8244C0E4, 0x74545E18,
+0x7B81FC67, 0x06590B01, 0x4066C7BA, 0x5FFC36B6, 0xB2117E30, 0x2EC8BC45, 0x613866E0, 0x0BCD4E3C,
+0x7EF32966, 0x78154302, 0x78F55AAE, 0xCC58F20B, 0xFB5422C9, 0xDE8C2F19, 0x80FEED38, 0xC5DCCEAE,
+0x4B1ED055, 0xA2572821, 0x759CFD0C, 0x7F997C01, 0xCA262D01, 0x59B0EFF1, 0x80503178, 0x223B023B,
+0xFF102F39, 0xAE87349B, 0x71EFF1D1, 0xB3A6621B, 0xD0072E7A, 0xCA0BD8AD, 0x03859968, 0x681CD574,
+0xD7B989D0, 0xF27815A5, 0x79CD664C, 0xCDD20E74, 0x1DB706FA, 0xE303D88C, 0xA1549CE0, 0xC3AE20C6,
+0x73BA3AEA, 0x2CD4F246, 0x22AA6341, 0xE902B307, 0x819BA7D3, 0x39D1B0DD, 0xC8FDBCD9, 0x6BF46CC6,
+0x26548ACE, 0x73B4AEAD, 0x550B71EC, 0xCBBA3330, 0xD597E961, 0xFCC7A453, 0x34FA66FB, 0xFA45CCBE,
+0x7F4E2435, 0xAFE613F1, 0x04A250EF, 0xC12D30EE, 0x4630450D, 0xD8B0BC01, 0x22D8C004, 0xDFEBAE77,
+0xC947016A, 0xA702A96F, 0x1727D2A7, 0x0E8503BA, 0xFFE82E4E, 0x6265B45F, 0x3C84B972, 0xB00563E4,
+0x3E2DD33C, 0xE022F7EB, 0xE85E2A9B, 0xA3531EFD, 0xA6F451F1, 0x5598706F, 0x741B96A8, 0x8EC9CD4E,
+0xE807428D, 0xCEEAF262, 0xE9146491, 0x8DE1F40B, 0x35EC308A, 0x488B8AB4, 0x369CC00A, 0xED217AB9,
+0x4F09F415, 0xEA74654E, 0x1B0EEB0C, 0x1CEBB3E7, 0xDDD9EAB7, 0x983AED61, 0xDDD6860E, 0x49AEB559,
+0x02AB54F7, 0x3F297BC3, 0xF91F4F28, 0xE3654014, 0x1F559DDD, 0xA22429EE, 0x8ACB7891, 0x5ABCA0A1,
+0x35B3A54A, 0x9A665772, 0x47763281, 0xD60F6F46, 0x5C09F267, 0x1D395872, 0x14FF5624, 0xE5ADDB46,
+0x3B360E2A, 0xB6226FDF, 0xC101B86C, 0x54A4532A, 0x93ABBDFD, 0xB852BD12, 0x129A5002, 0x9C6CB6FA,
+0xC31B037D, 0xFB5F9670, 0x3802C79A, 0x1BBE0E2A, 0xE5B7F874, 0x6E57B6BF, 0xE0C72982, 0xA9443D5D,
+0xB1DA196C, 0x3B146F55, 0xF54A5855, 0x3A4E8D6C, 0xE9B32205, 0xBC9DA1D1, 0x53093EDD, 0xA158718D,
+0x91E34FE6, 0xC435CDB5, 0xD3363D05, 0x8BC5EDEA, 0x628747DF, 0xD09CD76C, 0xE9F1EEC8, 0xED4B82DA,
+0xAD7B5083, 0xCC7BDBB2, 0x5DA33CF9, 0xA9594735, 0x4B6305C3, 0x2C2EB65F, 0xC65A82A5, 0x35A58751,
+0xD58BC1AF, 0xBDA05DD3, 0xD3BF7436, 0x06C7E51F, 0xE216FB65, 0xD73015F7, 0x237E71EB, 0x914DCB68,
+0xB61A238D, 0x1F04AE1E, 0xA9C737E4, 0x204F7E68, 0x39C44996, 0xBEB3B69C, 0x47AE8262, 0xCEA60892,
+0x14731FF7, 0xE6F050DD, 0x4EAA68B0, 0x653470DC, 0x14C8BE4D, 0x21B6030C, 0xBDE6FD3C, 0x0541765B,
+0xA73E59C7, 0xEAD07C14, 0xB99AC885, 0xF39446F7, 0x59EEB547, 0x1BE5BC3D, 0x4132465C, 0x007C4AD1,
+0x5EA16295, 0x8284E9EA, 0xF82D0BA7, 0x0A87E020, 0xDF911195, 0x4F752183, 0xA4157B7E, 0x1024129A,
+0x9F3482EF, 0x474154FB, 0x36BF3621, 0x9CC2FD88, 0x52D087C8, 0xAB8CD640, 0xEC68DCD8, 0x6AC36888,
+0x587A27DD, 0x1A62C0D0, 0x484D5014, 0xAA57F909, 0x96E77A19, 0xC9722A45, 0xBE22335B, 0xA3B1A7F5,
+0xD441919E, 0xC511D8AF, 0xF677DA64, 0x369BF359, 0x7FBDAC52, 0x5F3861E6, 0xBBCD6AA9, 0x5B5F0F40,
+0x2BB82F14, 0xB2131C88, 0xF577CE12, 0xB6D4E259, 0xBD9F38C3, 0xC722A813, 0x40AD813B, 0x4B381809,
+0xECD92E9D, 0x245D1518, 0x55D1BB3D, 0x9C277083, 0x85F8551F, 0x00E94FF7, 0x60C77C3C, 0x40EF10F9,
+0x83722EF4, 0x088C811F, 0xDDFB099D, 0x931A265B, 0xFA64A080, 0xE9C22C04, 0x1A6BEDD4, 0x85A80CA9,
+0x5B0BDA0B, 0x3387666F, 0x07FDA57F, 0xBF1C5EC9, 0x4274C338, 0x7C639502, 0x31AB1418, 0xBA5EAE85,
+0x4EA3AFF3, 0x3F3BB836, 0x8598DDAA, 0x3ADF0464, 0x307E185C, 0x194596BC, 0x4A4DF7C2, 0x7B8CC1EF,
+0xA16E1EFB, 0x599C3786, 0xF20879EE, 0x6FD5EC9D, 0xF586441C, 0x04858B21, 0x70CC2EBE, 0xADE98CE0,
+0x1DF4263B, 0x9BFE3B01, 0x35CECD03, 0xD19DF6B0, 0x5E6C099D, 0xE86E51D2, 0x46A194FD, 0x4BF64456,
+0x4DCD8831, 0x4377AA94, 0x2CE2BD72, 0xC90C5897, 0x47F95EE0, 0xF2941143, 0xF6654C2C, 0x49CC7D45,
+0xB498FCBE, 0x791713ED, 0x3CA912AB, 0x2F103269, 0x63FD081C, 0xD8D7D1D7, 0x3CBF87D9, 0xCE5A8D11,
+0xB0318AF3, 0x0B2D17EE, 0xF0E40B6F, 0xFB2589FE, 0x3A8B2F25, 0x6994ECCE, 0x72F83A67, 0x0A834B3C,
+0x809C6FFC, 0x89F0A30F, 0x6F4C9779, 0xE386E0E8, 0x24509CB8, 0x10E678A4, 0x8D794811, 0xA3EC755E,
+0x717B6AAB, 0x4BC9C9D4, 0x9BF45C0B, 0xD7352482, 0xED5FC4A3, 0x363FEB0B, 0x31602E25, 0xF329D0EE,
+0x1EE5314F, 0x47CBED59, 0x99F379E0, 0x1DD3B481, 0x7CBF0AD0, 0xCA7FADAA, 0xB2B82F5B, 0xC8A3CE2E,
+0x0798C9DE, 0x6AC95338, 0x1272056F, 0x5C100328, 0x7854D34C, 0x5D65B503, 0x4D3A2F57, 0x994922FB,
+0x59D738B6, 0x9D15BD4F, 0x558508E2, 0x0F72E4D7, 0xC2C91EC2, 0x3B7BB706, 0x0860354C, 0xBE0B0685,
+0x3600ED18, 0x7BA7B7D7, 0x3C65176C, 0x27E7EC7F, 0x92BC848A, 0x16D9E8F2, 0x90E4E83E, 0xB9C6C13D,
+0xA01A401F, 0xC354F431, 0xA64FA608, 0xDF48CD1F, 0xFD2DED63, 0xAA21C6CA, 0x861F453F, 0x9D933193,
+0x8B0E7418, 0x64210F7F, 0x2BF32AE8, 0x18AD720E, 0x9F59B9DD, 0x94DFB404, 0x1ACDE1E8, 0xE546C7E2,
+0xACC1B314, 0x9444A6DF, 0x20823138, 0xBDA243C5, 0x331790D5, 0x3EF2966C, 0x9480D27E, 0x2241D946,
+0xF41F17FD, 0x59A4A782, 0xF7B4FB13, 0xA247EFED, 0x9512E8E5, 0x66570136, 0xBF506714, 0x9FA30B45,
+0xCEC0F57E, 0x7A4C4D5A, 0x499B9F03, 0xC3EC852F, 0x9C365777, 0xCD327614, 0x6856C138, 0x56F40CBD,
+0xAFEAE4B3, 0xCEBCAC05, 0x17F20729, 0xDB2F8FA7, 0x521FCEA4, 0x53ED398F, 0x4BDF870A, 0x8D045572,
+0x40289F0B, 0x0741338D, 0x7463EF6A, 0xA321F40A, 0x46223EE2, 0xECD98A9A, 0xE4244BEF, 0xB155EDCE,
+0x8E4DF6D4, 0x4D1BACB6, 0x258C048E, 0xF3651C04, 0x41A204ED, 0x8BD8134D, 0x1457E153, 0xAE31C01C,
+0x34AE84DB, 0xB8AC76A7, 0xEF05536A, 0x606738AD, 0x3F3D776A, 0x1748A733, 0x2CFC0F99, 0xD44C4C65,
+0x10AE9713, 0xC06AD1CD, 0x035DC017, 0x71F7D37E, 0x69F51520, 0x05395E96, 0x7AFEA1D4, 0xD8C805AC,
+0x5A4E9313, 0x1DF446E3, 0xC1643078, 0x2B4509A4, 0x39A961D0, 0x862A3C44, 0x2B88EA87, 0x6608A193,
+0x12884CD8, 0xBA9D57DC, 0x719812C8, 0x6799B768, 0x5C977424, 0x224EECFE, 0x7C25016A, 0x76F2F44E,
+0xB91915E3, 0x0646575B, 0x93F69F88, 0xB9803CAF, 0x9137EC54, 0xA016823C, 0x84CAC8B9, 0x6445EB8B,
+0xE2434194, 0x4DC549E6, 0x63AAF6AC, 0x38498616, 0xA1A6B2A2, 0x5224CE5D, 0x5F7E6E64, 0xDA761B9D,
+0xFB27A804, 0xD9CA3995, 0xEB9F3F13, 0xCB6410F7, 0x72176AC5, 0x21CF30E7, 0x091BF490, 0x3192D17D,
+0x1D97719D, 0xAB62B41D, 0xFBF9730F, 0x6F9250FB, 0xF24EE2EC, 0xBD491390, 0x4CF11E33, 0x307D6C7F,
+0x56C1F6B1, 0x1682BCD6, 0x76F5AC3D, 0x88B25481, 0x64EFFD0D, 0x25A0EA37, 0x3D1DE9F1, 0x026963FA,
+0x545AE800, 0x0350C27D, 0x864EC2C6, 0x2C32391B, 0x1DA57B49, 0x4F7E72F7, 0x8B0C6271, 0x19022919,
+0x95B5A4FF, 0x7AE0CF38, 0xB1872645, 0x430E66F7, 0x0F07499E, 0x4A526A3C, 0x826EE07D, 0xCEF7188E,
+0xB363950C, 0x7EFC0955, 0x64DFE6FE, 0x4C981A92, 0xE0842775, 0x30EB4A20, 0x08F6F830, 0x1DCAB9B0,
+0x1CD6B3D2, 0x5A768CB4, 0xF9864305, 0x322E0E29, 0xAD0EE00E, 0xC7BEAE41, 0xC0BAC204, 0xBF9DA922,
+0x4A794D75, 0x5E5BDECF, 0x7060E623, 0xC8FAA029, 0x84573879, 0x56A3076D, 0xDBDBE247, 0xEBD37D7C,
+0x52EE2F8B, 0x616A38DA, 0xFA82697B, 0xFDA705FA, 0x9B3E2E70, 0x135B88A3, 0x23D2F2D3, 0xD9C66017,
+0x076D271E, 0xD9557974, 0x5A28455B, 0xF598CD12, 0xCB0E3D6D, 0x11F3E1EC, 0x3C0F41CC, 0x8097CF74,
+0x1B53B1A4, 0x094C191F, 0x5756BCE4, 0x443E6D6D, 0x29B6D477, 0xE310BB6B, 0x07A1ECB5, 0xC4B38907,
+0xBCDD1301, 0x6F9BDBFC, 0x80B12B77, 0x2E944BDE, 0xBDFD1EB9, 0x169D96A6, 0x092C7F63, 0xF23E1EF8,
+0xAFA574A9, 0xCB8015B0, 0x6A422790, 0x42FA6F74, 0x6B862A8A, 0x3968D4DB, 0x01262003, 0x4A2C8AAB,
+0x4D75DA80, 0x7B4159CF, 0xD0967C0D, 0x7EE7DDBF, 0xD1502233, 0xAF701064, 0x2B2AEF63, 0x946448B7,
+0xCBEEFB7E, 0x3480BA1A, 0xA5117C25, 0x85F5446F, 0x995E8063, 0xC6B90917, 0x87733039, 0x4B510481,
+0x9D94B817, 0x83A49F8F, 0x7B0471B3, 0x176083D5, 0xD2EAEBD6, 0x6A5BBF8B, 0xC1EBF022, 0xB5FAE24B,
+0x0A9E1A31, 0x2D737AAB, 0xA5D8AEF5, 0x8CBC816D, 0x899FF6A7, 0xFB3FD029, 0xCF266053, 0xE1C5137A,
+0xB4B4A5EF, 0xC57FBD24, 0x0115216B, 0x6A7C8D7B, 0xF6FF6E23, 0x272FD00A, 0x24C32AFC, 0x1FC1D4B4,
+0xCB4CB16A, 0x4E8E0BDB, 0x17F46279, 0xE0E2CB27, 0x453F7663, 0x68E80351, 0x0A2A301A, 0x5A2FB9F6,
+0x29824C1C, 0x647EFDB4, 0x6899A5D5, 0xCCF3A06E, 0xA6FC7892, 0xE6E8BA0D, 0x43F800C3, 0xBBA936F9,
+0xED412CD4, 0xBCE7F82C, 0x1CBE0878, 0xB2626B82, 0xC739EB0A, 0xDDC0822F, 0x7B9958D5, 0x45AD766D,
+0xDAA39A62, 0x5380331B, 0x05FF26F5, 0x5F0CA3EC, 0x19FD906E, 0x1A30A5BD, 0x33788A31, 0xB9D1D7FD,
+0x2156BBCE, 0x1EF2B85B, 0x0F029757, 0x343C31F3, 0xF76E89B4, 0x33FA8194, 0xEEE76A05, 0xC50EEF22,
+0xFD65E32F, 0x05804E86, 0x0385B59D, 0x22C59CA9, 0x372908D1, 0xBBDCEA53, 0x17CF36DD, 0xAA26E8B6,
+0x1E0EF97D, 0x3628F813, 0xE1D0F17F, 0x1EF05060, 0x55CF29B8, 0x7276254D, 0x5A864224, 0xC2803085,
+0x155EEF6C, 0x4AD3D52D, 0xB2586F2F, 0x744A3E04, 0x5044F47A, 0xD470E7B8, 0xBB7F2D35, 0x70491D73,
+0x71BDBF29, 0xCB6CC4EC, 0xBCE70B18, 0x1119D2BD, 0x2F032B6A, 0x1FC1F81E, 0x09765746, 0xD39A2BBC,
+0x28605C09, 0x77235514, 0x8C6E2C7F, 0x36BC004F, 0x229EE3A3, 0x8DE2B47B, 0x5836026A, 0xA632A206,
+0x156C5135, 0xCB737E6F, 0xA35B9EE8, 0xF93F8F5A, 0x1A18C6BA, 0x9ECB8877, 0xCFA3C87D, 0x53848C01,
+0xF0D9D12A, 0x345D32AC, 0x9F180A87, 0x1F3C9F6E, 0x1D5AF2C5, 0xF018F717, 0x72F6B4FD, 0x8332EFD5,
+0xA921926D, 0x024EED2D, 0xAB87F9C8, 0x85072D6F, 0x61B91A05, 0xA6630361, 0x710BC236, 0x1DCA51D3,
+0x7B3C6497, 0xE528ECA2, 0x1B107C88, 0x8437C935, 0xD2D5364C, 0x95256DE4, 0xDF98C6D9, 0x7895C4D2,
+0x03F4175E, 0xBEA51C1E, 0xC02CB1BD, 0xEDC8BB14, 0x4B0B4D14, 0x347A2A21, 0xDE98821E, 0x3D28C01D,
+0xB8CC391A, 0x4321AD0B, 0x4A64079D, 0x63C7D98C, 0x95A5FFDD, 0x3203EF17, 0xEBF0927C, 0x75121B13,
+0x04784862, 0x61DCC975, 0xA2F58FA9, 0x115A346B, 0x21272E61, 0x530FA57B, 0xC4656139, 0x96761B04,
+0x8E9B15B3, 0x06A0DB49, 0x555AD88B, 0xA5BFC130, 0x0D366A26, 0xD4157039, 0x341DD62E, 0xA93BADE3,
+0x087FE343, 0x6548EFF8, 0x6426A0AC, 0xDAE976B7, 0x63B77606, 0xA0316D05, 0xCBBA75F7, 0xE3343E3D,
+0xE9074A6D, 0x004C4590, 0xAB6AC8F9, 0x6267A2E0, 0x35B4ED3A, 0x0F9476A7, 0x0E815EA0, 0x301DD5EC,
+0x8D877881, 0xF7A9256E, 0xE21CCB3F, 0x0D4DDECF, 0x86512320, 0x556AEC54, 0x07D3A52B, 0x1E317896,
+0x0D5726B9, 0x669B19BF, 0x3D155020, 0x31B15E38, 0x9316D466, 0x7C13BAA5, 0xA819D978, 0x10A03253,
+0x5A79B9CC, 0x7BDBACA1, 0xD7AD4DC8, 0x3671D49B, 0xA4D6E963, 0x2348FCD2, 0xED4D9E78, 0xFB1BC33B,
+0x2920B740, 0x4EC2D635, 0xFAA8B674, 0xEF090002, 0x590C402C, 0x96F4EADC, 0x612442ED, 0xF61F3620,
+0x4A935989, 0xB8560133, 0x22FF37DF, 0x48C41FCF, 0xAAEF3A81, 0x45C75537, 0x41AC7560, 0x419BD6F5,
+0xBA507157, 0x69C3D4F8, 0xA9789575, 0xFF20A2ED, 0xBFCA8F8F, 0xA0E9BD89, 0x9AC9E758, 0x31893093,
+0x6760E9C4, 0xC201326F, 0xC532F26F, 0xFAC33466, 0xA8D5AF61, 0xFEDB2574, 0x0F8E5FF1, 0xD27911F0,
+0x859851DA, 0xC2FED909, 0x106B1D39, 0xBE017AF2, 0x57B34654, 0x30CF920E, 0x9354F13B, 0xA554AB2F,
+0x9F4A744E, 0xA792D136, 0x95CD6144, 0x153739E2, 0x29226C16, 0x23F092D2, 0xE8043AD3, 0x7BC0C727,
+0x00D37137, 0xBCEAF21D, 0xE18D8C45, 0x3A136E19, 0xFCC74D52, 0x74941700, 0xE34771FD, 0x2C314D24,
+0xAA8B971C, 0xD0528CD2, 0x195E160A, 0x9F513122, 0x018D0E51, 0x6049ACD5, 0xDD6143B5, 0xA6166758,
+0x69DEBB7B, 0x6D2AF171, 0xE13B3AD9, 0x53973ADE, 0xC760ED15, 0xB79D6C6C, 0xC6D275B4, 0xFD7E7EE3,
+0xA17B5408, 0x04E0EAF4, 0x4DD9D131, 0x7651DD53, 0x16F76981, 0x359EF7D5, 0xCEBBA37E, 0x8DC66BDE,
+0x1CBA6AEF, 0x6D98A339, 0xA1058FF9, 0x01D72D50, 0x98AA493A, 0x20D0707B, 0xE7FE9F6A, 0x144C8B5F,
+0x560989E8, 0x1D78D854, 0xE4396B84, 0xADE349CA, 0xC851F6E9, 0x0186A009, 0x0A38F417, 0xB99937AF,
+0xBD778403, 0xF528F77B, 0x684D151E, 0x1968C826, 0xBB89609D, 0x8BA52BBA, 0xF4B5659C, 0x2756A1A1,
+0xA589C07F, 0xB8201F56, 0xC9D5F5B7, 0x6B02E37A, 0x34DD42D2, 0xCC92E01F, 0x1D9CD2F0, 0x58462E2E,
+0xFD91D8A4, 0x7BD0800D, 0x4E627CE8, 0x02859701, 0xF22B7B71, 0x65BC98DF, 0x317B2108, 0x8358DF2E,
+0x042EDB73, 0x06BA2C46, 0x8E1BC1D7, 0xCEFF6C90, 0x470879EB, 0x0CD1C911, 0x1588071C, 0x78839AF3,
+0x4535BFFC, 0x1B428AE9, 0x528B0718, 0xE1C6F10E, 0x07A2A074, 0x43AD08A7, 0x6310324A, 0xE28A4A2C,
+0x876C6C7B, 0x35551399, 0x435E9DB0, 0x551F8179, 0x3D81E1A5, 0x4FC878F2, 0xC919D73A, 0x2EA6BC4E,
+0xCF18AAD7, 0xF04C382C, 0x255FE6F0, 0x70861F0C, 0x2C1C0F5C, 0xE6B5F83E, 0x9E0A5063, 0xC9F9FC45,
+0xACC7259F, 0xACA78F56, 0x2638915F, 0x575F1FC0, 0x52B79E60, 0x7BD25319, 0x895BE71F, 0x252C505E,
+0x56483710, 0x0FF3C4CB, 0x4F0088E9, 0xBC61D23D, 0x5CC57346, 0xE8552992, 0x02FECD28, 0xD5059423,
+0xE779EA32, 0x42DCF732, 0xE6E5D5B4, 0x8EB2AFE8, 0x77949225, 0x052198E6, 0x0961057D, 0xB1A3DC01,
+0xEB3BA400, 0x6C7E9B98, 0x15BF803B, 0xCF6B0B44, 0x4C4E17DE, 0xA108F72B, 0x84343FF5, 0xFA4CB8DD,
+0xE3C6CD0B, 0x794C355B, 0x2CC34BB2, 0x3F36F403, 0x732F91E1, 0xF70A53D5, 0x0BFF6602, 0x829E3037,
+0x3F9478DE, 0xA908F034, 0xDC9E7A53, 0x5C104992, 0x8C40D9D2, 0x801B3194, 0x4557EFB3, 0xDD1F20D2,
+0xBFE49DCD, 0x619A4A5B, 0xA112EF9F, 0xE3816F55, 0x5CBFB5FF, 0x29453EB0, 0x6943E142, 0x66943ABC,
+0xDAC0ABE3, 0xEE246F81, 0x8C6A3CDC, 0x6EB9B8C0, 0xFE29A1DF, 0x48539447, 0xA359929F, 0x7AA6C88A,
+0xEE047248, 0x66DF81E2, 0x0AB6B694, 0x5E90FB10, 0xFB548E28, 0xA2C88697, 0x2C9684E3, 0x7BE6FC17,
+0xEA1A6B21, 0x58A78993, 0x931E547F, 0x67052623, 0x05A22CB7, 0xBBD4864B, 0x3773A1C9, 0x0F1B242E,
+0xBC18A1B4, 0xE0DC2374, 0x13C4C1EA, 0x8439CC3B, 0xC4095DC5, 0xFFB6D59A, 0x11755D3A, 0x2BD807CB,
+0xB651CDE8, 0x8AC78E70, 0x1A00A983, 0x4DD1C341, 0x9C45F030, 0x5B510AFE, 0x615EDC03, 0x277CE16A,
+0x6714C433, 0xF8679F03, 0x9AE5E849, 0x5540C175, 0xA97F5720, 0x0E667A20, 0x0F39319C, 0x46AA2BBE,
+0xCA20C0B1, 0x42B3309E, 0x716CAC01, 0xF4852F43, 0x24C17856, 0x025B4EDE, 0x68E3EACB, 0xCA280833,
+0x333DF91F, 0xC1EDC2AD, 0x17497161, 0xEE1E25E4, 0x667CD413, 0xEC66048D, 0x17700E1F, 0xD30CA88B,
+0x5B4735C8, 0x4F7ACC0E, 0x357A02B4, 0x01D94137, 0x7E9CE4DA, 0x64E3EAD7, 0xDD31F436, 0xAD309913,
+0x0C8C4675, 0x3A4BDEAA, 0xADD4B74A, 0x3218C506, 0x857CAD47, 0xD28E5AD3, 0xB451B817, 0x5BD41352,
+0x3467F880, 0x486D98BC, 0x848CB1F9, 0xA3D30265, 0xC3231304, 0x3B8A858A, 0x973E95A4, 0x8061B391,
+0x5F42F239, 0x062D68E8, 0x9512A69B, 0xA0A10439, 0xB22C8582, 0xFCF827B9, 0x8C6232FC, 0x0F3FAE94,
+0x6A39A6B6, 0xE34F2190, 0x54512517, 0x5AB8E47B, 0x20E4C919, 0x4578C5F7, 0x697EEBE7, 0xD4B4F129,
+0x2A169A3B, 0x5549F726, 0x95AB98A6, 0x2C9D8B89, 0x10AA5982, 0x4737A3B6, 0x8A97D109, 0xC58DE588,
+0x219BD58A, 0x396C8135, 0x32DE78A1, 0x2402AC07, 0x87B35BEF, 0xB2F4DC72, 0x09C8ED9A, 0x7D0E71E4,
+0x41F314AC, 0xEFAD8FA2, 0xA0566FB6, 0xEFCEC83A, 0x51527434, 0x27837182, 0xFEADE949, 0x7280F7C4,
+0x01EB2834, 0xFBADDA8E, 0xA82C2C6E, 0xB6FCBAB4, 0x7F20ED0F, 0xBFF0702A, 0x6AD47559, 0x662B4738,
+0x2E493F8D, 0xD98BD875, 0x83B2A131, 0xCDDD4653, 0xB9BD38F3, 0x22483903, 0xC9892F75, 0x5C4AAB75,
+0x3BB3395A, 0xA5598221, 0x347F3494, 0x8E7059A0, 0x9B151AF6, 0x6C63FC23, 0x975C38CC, 0x47BB755A,
+0x364832E6, 0x365F6405, 0x5FA7B429, 0xD0A0F2EF, 0x8DD82003, 0xAE52B572, 0x08757601, 0x234D1CB3,
+0x7F9290CE, 0x1435A559, 0x697F3413, 0xF4214BE8, 0x155E120B, 0xD6B03052, 0x054C150F, 0xC39935BF,
+0x9882AE6B, 0xB6546A88, 0x2A19DECD, 0xDD8CC0DF, 0x633573AF, 0xDD47FC37, 0x173A08B4, 0x74D012BA,
+0x6E6BFE41, 0xF7B76A4D, 0x13A07D8E, 0x2CE3F8FC, 0x5EAC7639, 0xB7A8BF2E, 0x7CA9E420, 0xB64AB726,
+0xFBD98EBA, 0x1C3A7EBC, 0xAF9A1745, 0x77ED7A90, 0xE97E80A1, 0xAEA43513, 0x592C4E6F, 0x78F8ED82,
+0x647E5814, 0x1B0E704F, 0xD3A0C518, 0x598015B8, 0x8E2726B7, 0x06881E12, 0xDB7FE774, 0x91CDB6F6,
+0xE9A1863D, 0x1FEA320C, 0xED62ECAE, 0xFBD05B1F, 0x663C3CCF, 0x19884B68, 0x972B6183, 0x2D4FFE1C,
+0x1AEAC764, 0x26DED3A0, 0x943DA580, 0xDF683E97, 0xA71837AF, 0xC5710517, 0x23E2D173, 0xE3E9C54C,
+0xA410EFC5, 0x963C30C4, 0x4CFB2C65, 0xBBBE14E4, 0xB17E789D, 0xB412EA2E, 0x58D7F118, 0xAD521C68,
+0x80195716, 0xF2614A8B, 0xA8943D1C, 0xFE205600, 0x24682A3B, 0x6EEB51DD, 0x99F9C5E1, 0x8500A62E,
+0xA86B4709, 0xC7B3F911, 0xD4979203, 0xEB77576C, 0x5A672642, 0x07DC4550, 0xDAEB5145, 0x450F6116,
+0x9E18573A, 0xD05E93A8, 0x1B9F9B0A, 0x1C341F18, 0x514633F6, 0x81526053, 0x57C35021, 0xBD5C1801,
+0x945C05FB, 0xB071F7F4, 0xDB38686F, 0x788E7971, 0xF860319C, 0x606A0245, 0x53B06548, 0x932E7F26,
+0x03C0F7CD, 0xE681D251, 0xF6554D09, 0xC437C167, 0xC9E0232A, 0x5B149980, 0xF583CD92, 0x5AAA438A,
+0x2B37E226, 0x5C27B092, 0x41A4B95B, 0x131FF73D, 0xA1A435F2, 0xACF50292, 0x8D7F9E9B, 0x95AE4F72,
+0x49C927C6, 0x0EC47F60, 0x8C76E842, 0x38EA34D5, 0xE4D26D52, 0xE684C073, 0x7BA29A99, 0x58C5083B,
+0x39756ACB, 0xBC877B64, 0x0470B76D, 0x1C56020E, 0x39384DAF, 0x2E595FB5, 0xF8DB99D1, 0x95DDDA4A,
+0x2E5D49B5, 0xCB8D422B, 0x36D732A1, 0x013E16C2, 0xA1622964, 0x41F7BA56, 0xBDA235FE, 0xA5F8178A,
+0x0E9F9CDB, 0x3A67AA77, 0x3483163E, 0xEBC66115, 0xFB7B96A9, 0xB452D10D, 0x70B0DA95, 0xFF384E11,
+0xD9422243, 0xB50EC5D5, 0xFA039C62, 0xBFCBD9D2, 0x5C895929, 0xC33DC719, 0x494A9648, 0x3113BAC7,
+0x03BF55A5, 0x623E9491, 0x23D36488, 0xAC26A420, 0x158B2374, 0x1912E2AB, 0xD37B6DE0, 0xC5074EFE,
+0x6DFC6C87, 0x4FB19AA5, 0x1031D896, 0x3B031787, 0x9F580BE0, 0xB43AE757, 0xA413AD0C, 0x0F51FBD6,
+0x7FEB632C, 0x8B8AF215, 0xC7173E2B, 0x33651DDC, 0xC49E19CA, 0x8D1CE05B, 0x296596FC, 0x231E0E9B,
+0xC5D7953E, 0x91B5A814, 0x77FB7165, 0xC2B7C00B, 0x455F9C5D, 0x10E999B3, 0xCA539A1D, 0x9B37A77C,
+0xB471D787, 0x9758261B, 0xEF7857FD, 0x66D7156A, 0x88AD29C6, 0x6772724E, 0x68D49601, 0x1EA2CB86,
+0x7D088743, 0xB07E1CB6, 0x38C6C629, 0xDC538D82, 0x6347BAD5, 0x365F0F73, 0xAC2F180B, 0xF79DF103,
+0x6EC7A4BC, 0x4A2E445D, 0xCB080901, 0x98192E2E, 0x9FE6FBCC, 0x247BD022, 0x8FC7929B, 0xC2CE8758,
+0x1F2E03F9, 0x3F993F5F, 0xA8C0B8FC, 0x4D940F4F, 0xAE071A1B, 0xD9DCE611, 0x59553FF9, 0x735C7F42,
+0x9B9BC7B4, 0xFD71A970, 0x22BA58A2, 0x323EDA46, 0x59FB1A41, 0x6B140763, 0xF7012DE1, 0x3B58545A,
+0x0034E73E, 0x0719C8A8, 0xD76D094F, 0x6B65A7BB, 0xCC9BF7A6, 0xC024E57B, 0x0B1EBA5A, 0xC09986F6,
+0x23B92D66, 0x2EC461EE, 0x2C5F9508, 0x47420C22, 0xF0B8E009, 0x6EAEDF4B, 0xD96C5D93, 0x0F82483F,
+0x2B272241, 0x41AC8C27, 0xD9B37620, 0xB74ACCAE, 0xB259C8C4, 0xB694BEF0, 0x2972EE7A, 0xFAA5662E,
+0x2D0FAB9C, 0xC1804682, 0xA5A7E8C7, 0xE214BBF0, 0x48BCC4CA, 0x7632E6A1, 0xF63D6838, 0x5DA191B4,
+0x39A70AFE, 0x05000310, 0xE32F188B, 0x0E5E8EF4, 0xAAA2743B, 0xB673DBB8, 0x7BB9B95E, 0xEBA2B514,
+0x358344B3, 0xC2C89896, 0x2850E0F8, 0x02E58071, 0x04F67E36, 0x6601D2E1, 0x6F807A57, 0xD1E30B7E,
+0xB8C1BD7C, 0x969FEA75, 0x4A2E830B, 0x0BB3D790, 0xD951ACD2, 0x57C008AA, 0x9A8E9971, 0x5BA49CC7,
+0xDEC8C9AA, 0xABD149FE, 0xE669CEDB, 0xA726FBAB, 0xFA2FDB32, 0xD88A9D73, 0xD9B876A6, 0xEB1A81B2,
+0xBDF0655A, 0xF6B387B8, 0xDDF3E27E, 0x5D3E097F, 0xCE119998, 0xC01F9C9E, 0x5CB18EFD, 0xFEECE0F9,
+0x54C36BBD, 0x4489D42D, 0x9E3A6044, 0x16520E26, 0x52C7D16F, 0xE86814FC, 0xC3D8282B, 0x9BFC4752,
+0x2E5CC391, 0xDC223206, 0xBCF216B3, 0x71CCCF87, 0x515A80D1, 0x6EBCE173, 0xFD247D08, 0x6AEAE34C,
+0xB6A7C2B5, 0x600AC4AC, 0x3AB7CA85, 0x5ACD5B70, 0x184CD7E3, 0xDBB50719, 0x850342F1, 0xA99544FC,
+0x8EEFA246, 0x97EC993B, 0x3CE02984, 0x9C5DBA3D, 0x56270860, 0x1648C4EE, 0xA7798859, 0xDA58C622,
+0xB5693E2F, 0xD88D3E86, 0x871BBCCA, 0xB32B489A, 0x707EAC7B, 0xA430958B, 0x2210BF89, 0x04C1D44E,
+0x7F7FCA18, 0x74549B3A, 0xC2ED8C55, 0x6C44342D, 0x09E27D64, 0x02513414, 0x52265C9A, 0x17147666,
+0xAEB4CFA1, 0xE779D241, 0x5C89E3A5, 0x4101FE9F, 0x4C9A8C3D, 0x6FC70A87, 0x1BAEBD91, 0x9498C28E,
+0x3CA23DD8, 0xF16D850C, 0x022377C1, 0x698CA7C5, 0x7DD00D68, 0xB1D193C8, 0xFA9D4B6C, 0xE494E5FD,
+0x8E0843F7, 0xCA809FDB, 0x1C397698, 0x2EE9348B, 0x38D1BF6F, 0x642481AD, 0x08305919, 0xDDC1DCCA,
+0x9BCA9C0C, 0x544545E4, 0x798C2A36, 0x2192C3FC, 0xF62B972F, 0x2A52DEF5, 0x68898C03, 0xFEF2C5B2,
+0x8806D30E, 0x9CB13089, 0xD4B5087B, 0x00C52974, 0x4C3C074B, 0xC1C8D81C, 0x23A9432D, 0x332A954A,
+0x3C67AD93, 0x4790994B, 0xAD7C846A, 0xE0CC896A, 0xE12AE19B, 0x114863C0, 0xFEBD54E2, 0x742226F9,
+0xB5EE8CF3, 0x45081B60, 0x2874843C, 0x355C3FC0, 0xFCB20E7C, 0x13532DE9, 0x39207B87, 0x3A7D1DBB,
+0xB99BAF3E, 0xEA7126A5, 0x44F41926, 0x650ED605, 0xBD72A122, 0x3FFDAF1E, 0x74E00BC4, 0x68B26E1B,
+0x4FA2C512, 0x15F82BE4, 0x9B7E2761, 0xD695290C, 0x9D0AFC46, 0x02228986, 0xCE23F6A7, 0x1C7D0E27,
+0xE6F2EAFC, 0x41384B85, 0xA7036F39, 0x9D7D0E17, 0x43D68CC9, 0x25F57817, 0x95AE4F9F, 0x3116A9D0,
+0x2B0723ED, 0xD98A6C0F, 0x58D3CA9E, 0xD0C932AF, 0x46C8DEFB, 0xE7DFFC14, 0x3F676879, 0x8DB7619F,
+0x426B79B8, 0xDFB9BA0F, 0xF565F8D6, 0x975AB07D, 0xF46B8224, 0x3875AA18, 0xBBCB24D3, 0x133FB903,
+0xFE71118E, 0x3A1B69E2, 0xF8507B8E, 0x979B437F, 0x8C07BC97, 0x5646CFA3, 0x2849FA1A, 0xF396AF1D,
+0xDFE8712E, 0xC64A7807, 0x62A6FADB, 0xA858AFF7, 0x584F0407, 0xDC8C3D47, 0xC86FD388, 0x129BAEB3,
+0xF6B9E721, 0xCAE6CE83, 0x718362DB, 0x399CB88F, 0x9DEB15D9, 0xAA79858D, 0xA474262E, 0xDABC09AE,
+0x2B6708F3, 0x560A6E6F, 0x206462D7, 0xCD657694, 0xDF9F8025, 0xE3DEABF9, 0x5A093265, 0x2D261B92,
+0xD71BF647, 0x09BAD554, 0x4C948C09, 0x36119FE5, 0x0F9FE171, 0xFEF21B09, 0x3A96D491, 0xAD299F27,
+0xE82C770C, 0x383AD14F, 0xF86CDA7E, 0xB0FB1834, 0xDF47711D, 0x85728D5C, 0x490A433E, 0x61E6F387,
+0xC31696AB, 0x0E6559A3, 0x8151782C, 0x89AF8A87, 0xBF4E0AAA, 0xA813E027, 0x42663B90, 0xEA3496AD,
+0x8C74689E, 0x9AD1992B, 0xA5DF118F, 0x8A8A495A, 0x9E379F08, 0x38F45615, 0x2CA44851, 0x672BDF53,
+0x293B1915, 0x8BA09562, 0x99E06B05, 0xB24E5B80, 0xAB2B5D90, 0x00AF2B1B, 0x97D77A36, 0x8E9E8BB3,
+0x4921FC0E, 0xCD4AC73E, 0x77661F34, 0xC1E5F623, 0x16169B26, 0x97B3F735, 0xB05BAD69, 0xE08C31A4,
+0x56D76FA7, 0xA4BD82A0, 0xE2183360, 0x407EC429, 0x5830DBDC, 0x93DE1E92, 0x7AF18B0C, 0x0E0C1D98,
+0xEC321763, 0x525DBD90, 0x54574823, 0x0FDCD6AA, 0x08FC1242, 0xB76A7C0D, 0x6449E5E8, 0xE9685706,
+0x4D383391, 0xADD86B08, 0xDF81F31D, 0x1C560FB4, 0x436D2224, 0x57B5AE06, 0x875EDA6C, 0x48958911,
+0xC58AF352, 0x3C60483A, 0x251A570B, 0x21AECF8F, 0x52469034, 0x1FD60D41, 0xAF14A324, 0x4B48385A,
+0x75CC622F, 0xEA4176C9, 0xFAE47230, 0x32AFF67D, 0xFCF0ACDF, 0xC59686C9, 0x1EA7526F, 0x0F97772F,
+0x887F73E2, 0x4EAD0A61, 0x8FA6E4C7, 0x3A4D9DC7, 0xF3699141, 0xAA7D7C98, 0xCF698F49, 0x8881538E,
+0x5C55E269, 0xAAA39365, 0x84BDA84E, 0x872A04EA, 0xA0E742D6, 0x3B38DF74, 0x756DDB4D, 0x643E8C6A,
+0xD2835F37, 0x8E213E95, 0x0D3F15C3, 0x98273CB1, 0x1E2E5B7D, 0xE3381F6C, 0x5BB7124C, 0xB90C85D1,
+0x151A5D98, 0x9660F2C5, 0xBB43DE82, 0x04F78291, 0x623D9AB4, 0x7BE3A126, 0x142CD08F, 0xBC337E82,
+0x2F585C01, 0x7A632B10, 0x2A12B371, 0xFBCB3B2D, 0x4933B64A, 0xD35B245B, 0x8E6731C1, 0x8031BE25,
+0x3A1F7D84, 0x9DB7ADF4, 0xA4F7FE39, 0x3AEAADAB, 0x7DADDDDA, 0xD410D072, 0x2D83C2E1, 0x66F72AED,
+0x853B77B4, 0x6F645C3F, 0x56888789, 0x2D84841A, 0xA77DFB45, 0xA9B96A16, 0x8A7212CB, 0x045F4638,
+0x7F8C8210, 0xEA1EE979, 0x2CC9478C, 0x10B5F317, 0xA0643760, 0x8EED494D, 0x3AB97279, 0xEE241B72,
+0x2D9A8CC0, 0x237A50C4, 0x28AE634B, 0xC4416BFC, 0xCF2B1E3C, 0xE5EA68A7, 0x11BD9E1B, 0xE3A43958,
+0x38B3C304, 0x50D412C9, 0x34DB42F2, 0x6BF2A826, 0x738E8D16, 0x6B6E30B2, 0x0355A2E7, 0xF8C557E3,
+0x1A977240, 0x48839704, 0x44B5C2F7, 0x230F3DE2, 0xDFF556C9, 0xE140F92A, 0x30789BC4, 0x278327E7,
+0x50BFDC25, 0x975C464D, 0xD9D96278, 0x9736528C, 0xD3405400, 0x220AC407, 0xE2BA8DFA, 0x672EC917,
+0xF7E5FF0C, 0xEC791230, 0x6072ED76, 0x0031C91F, 0x69BBB13C, 0x2241B502, 0x9DCF3442, 0x41FE9F43,
+0xDB3E11C6, 0x28D7F0F1, 0x5920143C, 0x417540F3, 0xF6047617, 0xA4D943F9, 0x53B77E84, 0x5E2C51BB,
+0xF53A0107, 0x2DD4B17E, 0xC4CF0BE9, 0xF1A84F7F, 0xE8109CB1, 0xBE6E1FEE, 0xE96849F0, 0x47CE263D,
+0x527F2AFE, 0x8AEBF67D, 0x20CF9BD4, 0x46B3FB0F, 0x2FC98916, 0x5BD0E8D4, 0x3F02CCCD, 0x66AFE2C1,
+0x2EE95E74, 0x0E4E373E, 0x9B8F6286, 0x5D4DB6E6, 0x08D0A5C3, 0x3B0C4B62, 0xE1EF416B, 0x53ED220E,
+0x9D44C359, 0x8ABAF47A, 0xC666FFAC, 0xEA683B18, 0xF4AAEA99, 0x78F13439, 0xFFAD38A7, 0xA12866B8,
+0x82775A81, 0x4C133569, 0x74C6CA5D, 0x7F01DAA4, 0xC48CCD19, 0x08A57638, 0x6598193E, 0x91A32E36,
+0xF404AC0E, 0xF2C1117E, 0xD2B6FD6B, 0x2D133DEC, 0x331C91D3, 0x388266BB, 0x0527508D, 0xEAD13356,
+0xCC247FFE, 0x04B3DCBA, 0xF95D21EC, 0x0FF2BE41, 0x3AACF29D, 0xE2EAF43F, 0x9D9F7FA7, 0x319ACAB2,
+0x31D08C31, 0xDECEC55F, 0x9C335D83, 0x909B9149, 0x598EBA9F, 0xA4F0C8C5, 0xFEF4C928, 0xFA6C9760,
+0x65E3BA4C, 0xE333AB00, 0xB69D636E, 0xF1D3F045, 0xEB14DC8A, 0xF082D812, 0xE6F3A822, 0x6DDFC3DA,
+0x1E02C6B9, 0xB9016798, 0xB53AC837, 0x36952B8B, 0xD3A1B742, 0xC9CD66DD, 0x9527CAEC, 0x6CDD71C2,
+0xC053887F, 0x94262A49, 0xF72E309D, 0x320D7F93, 0xB62D7F57, 0x87C178B8, 0x04EA256D, 0xB31D7BED,
+0xFE02FFA7, 0x3A82903A, 0x4B337846, 0xECE646B8, 0x101BB18F, 0xD6AEA545, 0x89AA765B, 0x8110DB0C,
+0x06D29320, 0x0464992F, 0x0DEE98A8, 0x54B01C29, 0x2C8FE82E, 0x07E0629A, 0x6C749319, 0xFF30C210,
+0xA94CA503, 0xB6B6A243, 0xE0D9919A, 0x001BEF48, 0x81343D7F, 0x260A3529, 0xA3996744, 0x57B59960,
+0x42660CD7, 0x43E4156F, 0x6295F74E, 0x511AD885, 0xD10678D6, 0x8B4D61F4, 0xD221773E, 0xD8684B3F,
+0x6E6B9001, 0xAD4D8E53, 0x612AC125, 0x0C660159, 0x03C9F921, 0x1C1FF870, 0xF3B24BBB, 0x21A1AFF7,
+0x194690E1, 0x23A23C19, 0xE7D3C66E, 0x80804F94, 0x123FC0F6, 0x48BCA1E0, 0xCCE562B7, 0x3E843F73,
+0xA82E9DB2, 0x05B85007, 0xEBE2BF97, 0xF6C63F0E, 0x85FA78E7, 0x6DE9CE10, 0x027DFFB2, 0xAB2E9602,
+0xD1A472C2, 0xA38C6EAA, 0xA006DEE8, 0x7ED14721, 0xCD5ACE89, 0x3F2A0A60, 0x820E2C17, 0xF92E64D8,
+0xD5D9ED74, 0x673A377E, 0x41DE4B18, 0xC6A824BB, 0x3C03A855, 0x8932C1FB, 0xB206DBC2, 0x08C3B1FE,
+0x5BFF263D, 0x578A9771, 0x18068478, 0x87647560, 0x6027E0F8, 0x5A04D1A6, 0x886AC3EF, 0x7FC7B373,
+0x3EA1C703, 0xD507CB85, 0x19FF3F25, 0x77BCA6B6, 0xCF14F0BD, 0x8209DFD3, 0x182E2A45, 0xEBF49229,
+0x70BB7D9D, 0x365FB246, 0x796400A9, 0xFF272019, 0x519A2904, 0x3BE763CF, 0x3CBC9AD8, 0xDEDDBDA7,
+0xF9966BBE, 0xCC437735, 0x028537C9, 0xBEF289EA, 0x98ED0F45, 0x46A1B793, 0x48C15CD1, 0x2CBACA6F,
+0xE1D6E6D0, 0xD9B0814A, 0xA4673D23, 0xC5569364, 0x7F5A8214, 0x002A527E, 0x61C7C7B1, 0xFDCBC4C6,
+0xF7D61ED9, 0xE28A8BB3, 0x7E3116F3, 0x6DA636A0, 0x9D766CAD, 0x5B873EAB, 0x92BF0DE7, 0x5DA3A0DC,
+0xED0186CD, 0xB09E462F, 0xED87EBA0, 0x2F0AC9F4, 0x2E540EEA, 0x200F06A7, 0xCA515E4B, 0x3EAF8E36,
+0xE5C56B2C, 0x8B2808DA, 0xA7BC3E15, 0x909E1522, 0xBB60DBA2, 0x088AD314, 0x8A086A66, 0x6F17553C,
+0x422DAE74, 0x1BF992EE, 0x20941811, 0xBD6CE96E, 0x21872F08, 0x58569DCC, 0xB552ED2F, 0x7A48DE34,
+0x97249902, 0x2EAE6B17, 0xBCA4013C, 0x5F0601B3, 0x6E567A2F, 0x488F24D4, 0x6D357A64, 0xF70996B7,
+0xAC4CB1E9, 0x8C3E372C, 0x5D8BB6AD, 0x23EE338E, 0x90B88736, 0x71E6DC8C, 0xC03C07B2, 0x3EDB0C7C,
+0x0968210B, 0xB3146D6B, 0x1FFAC6CD, 0x1D795C83, 0xDC7C9029, 0x7BA007F0, 0xDD833414, 0x976A5736,
+0xF4C9B276, 0xD654E2FD, 0x3C82868C, 0x9C52BC78, 0x2C177DC7, 0xEFB4879D, 0x6E9C1C92, 0x7AC028A2,
+0xE6ABC0B4, 0x69198DE8, 0xE91CDAA7, 0xC470A34E, 0x1DB6E635, 0xB12DD1D2, 0xC4D41721, 0x9E7247C6,
+0xFE812E48, 0xF9C3B5EC, 0xFD3E9A49, 0xC23F3E82, 0x1B6E3103, 0x5718C931, 0x5F895A3B, 0x73B65C14,
+0xACE14260, 0x785F72A9, 0xA2944A06, 0xA09DFCAB, 0xF66642F2, 0x6F5AB576, 0x63649C7E, 0x6DFBC977,
+0xF20A7C97, 0xD5E7B8BD, 0xD290530C, 0x103F411A, 0x850B0E41, 0xD478B7DF, 0x1BA188C5, 0x6F62847C,
+0x3ECB2759, 0xFB4E24C0, 0x675B6DE4, 0xD3A67357, 0x515AEC61, 0x370B99FE, 0x7654EBE5, 0x593C7A8C,
+0xF3D3EF5C, 0xEF898B99, 0xD2982E95, 0xE486721C, 0x5A42D45F, 0x9D89866E, 0x3DFBCF0E, 0x42A27144,
+0x9BBD23DB, 0x8E7053F3, 0x2A4C147A, 0xA9D98F19, 0x3323117E, 0x405593F7, 0x5E841EF5, 0x62DB2176,
+0x5513D5BF, 0xA31ECE18, 0x7C00D617, 0xF702DE77, 0x4CA121BD, 0x19E12F0D, 0xFDB62A34, 0xE5CE0CEB,
+0xA2295B9E, 0x4B5AF37B, 0x3681592F, 0xB32199DA, 0xBAC2404C, 0xFF878B85, 0x30243D8F, 0xA7BC2243,
+0xABC10B20, 0x6CCAAA96, 0x2A5FD02D, 0x03665A03, 0x40161F02, 0x7CB6E01C, 0x9BAA314A, 0xB9107F18,
+0x63C89C8D, 0xB4B289D9, 0x2EDDDD6F, 0x93C66E7A, 0x6DC4050A, 0xC861316C, 0x6C654D18, 0x6A8489E5,
+0xC2FB1A4C, 0xB688C22B, 0x57A73A82, 0x92CD9DAC, 0xA45C451E, 0x7A91A0A8, 0x404B9048, 0xD2B837B2,
+0xE21AE12F, 0x691F709C, 0x62A0C8D6, 0x47AD0FD3, 0xB57B902E, 0x27A9F126, 0x9AE8AEAC, 0x285AE395,
+0x46794F00, 0x2897B1D3, 0x239D7D92, 0x76117857, 0x41D5F2C3, 0x58E6639D, 0x75A4D5E5, 0x4B5B9BFC,
+0x1BDCCD42, 0xF593E9A2, 0x2B5F4E18, 0x96126B17, 0x9DF7C3DB, 0xCF2FE0B1, 0xD2F22B67, 0x40B215D8,
+0xB5AB779A, 0xEBEE4497, 0xE05AC4C6, 0x31C771F0, 0xA62F9DAC, 0x2B396BB1, 0xE78E4E00, 0x7034B53B,
+0xE5F716EC, 0xADBC8F54, 0x63383BBA, 0x5313A00D, 0xBC4D3E32, 0xC6A15CF8, 0x3C996E91, 0xC8161D2B,
+0x2493F94C, 0x0843D489, 0x62D8AC2E, 0x42094551, 0x208071A5, 0xA59CCC3E, 0x57EB4BF2, 0x853235F9,
+0x7E5FE76E, 0xB1553809, 0x8B8FC206, 0x134BDB93, 0x7EEFA54A, 0x203703D7, 0x3B8023BB, 0x430FD591,
+0xEB15DFDE, 0xFEA68D55, 0x68A5FA90, 0xAF6EDA0A, 0x503BABEA, 0xBAFB091D, 0x10C5AE1A, 0xFA14A7F4,
+0x16B4D950, 0x21FCCCC3, 0x9451584E, 0xA23E91AB, 0xAD03E5B5, 0x680B1F7A, 0x9D26A46D, 0xE5328E39,
+0x5187455F, 0xAA88645D, 0x068E6220, 0x33A8E22F, 0xDF2E68E8, 0xDD20341B, 0x9DAD1CCA, 0xC50B7A5A,
+0x8BFC5A6A, 0x7FBB506D, 0x18CFA426, 0xFCE62786, 0x1CF4E5E0, 0x8C6A1C3B, 0xA71CC78B, 0x392E34DB,
+0xAD28320C, 0x5D37D08D, 0xD67AD492, 0x7A7A2123, 0x169AE604, 0xA265CEDF, 0xFB6C7B20, 0x654FA2C1,
+0x29B18A39, 0xF13C9956, 0x145B330B, 0x383BFF37, 0x52FC1B8D, 0x27C37B8D, 0x01EBA75A, 0xEFD8CFDC,
+0x1176B51C, 0x0A554770, 0xBC784937, 0x0C8C02D5, 0x3724BA2B, 0x8544F095, 0x073E9938, 0x83307038,
+0xE8AB0117, 0x115A8F94, 0x14539D71, 0xB0B335A3, 0x1555BBAE, 0x58FEC369, 0xA04D3A19, 0x8B906111,
+0xFAE5A89C, 0xF052CA1E, 0x24FD99AD, 0x06E306C7, 0x6B9C015C, 0xA2132315, 0x30576BDF, 0xF813D69C,
+0x70492ABE, 0xCDC46F06, 0x2E1F4D1E, 0xB6D2051C, 0xE99D870E, 0xA19B0004, 0x4F51FC41, 0x567D7DA0,
+0xE733DD61, 0x2DA2AD5B, 0x14F9191F, 0xC1E2BB4A, 0x84DDAF86, 0x55A2AC1B, 0xDEB8B114, 0xF04B0656,
+0xAEE012BD, 0x966D0938, 0x0004DA55, 0x0B882390, 0x20D7CF8C, 0x0836025E, 0x7F1C3F00, 0x928CC8F7,
+0x18571C06, 0x93E2CF4A, 0xD47BD1E0, 0xCA230FD4, 0x16CBA942, 0xF093CF09, 0x82ECC655, 0x5CE36970,
+0x5F0C3A7B, 0xDC6D6C40, 0x68C237FE, 0x70169B0A, 0x4957589F, 0x67964F2B, 0x3FB739A0, 0x0A9358CA,
+0xC2449878, 0xE26B4C7E, 0x1254F3CD, 0xD48C190C, 0x2042CFF7, 0x686F6523, 0x5B360619, 0x5C5B0962,
+0x521FD53C, 0x7F9169E6, 0x00231475, 0x2F78A1D8, 0x75225F1E, 0x090559FD, 0xAD4F500D, 0xF60325A3,
+0x8980B199, 0x7658AD26, 0x827DF8C2, 0xC1EB728C, 0xC13EAA88, 0x96FBAF7F, 0x6FCF40F7, 0x919CEBE3,
+0x5F4B538A, 0xBFE9D695, 0xF6981580, 0x0EA1D79E, 0x6AFED9C6, 0x98FC308A, 0x4DEDB59D, 0x579FC686,
+0xEEB46592, 0x17DB7FC7, 0x5F2605EC, 0x995AC16B, 0x91F40F05, 0xAEF78243, 0x22210D3B, 0x987495A7,
+0x962D9A0A, 0xFAB508EF, 0x3DC21449, 0x83C57212, 0x743B36C5, 0x428D28FE, 0x5219797D, 0x90C42F8F,
+0xEF33F020, 0xB3DD18CD, 0x29C5FDC3, 0xDC55DB9B, 0xE2E7B5E2, 0x0616A953, 0xA1E989AE, 0x49E5A13E,
+0x6B013BF6, 0x66B96C45, 0x2539408C, 0xDBA8F230, 0x692C802D, 0xEA6CD642, 0xAB063198, 0x5B591BCA,
+0xBD53862A, 0xF0B4662E, 0x7529A7EC, 0x0481C385, 0x1E8523DF, 0xAD335057, 0x385DCAF1, 0x2D1D5BAC,
+0x27E63904, 0xEF6B93B4, 0xD1EAB868, 0xDC2016B8, 0xCB7D3628, 0xB2AC8318, 0xFEDCA802, 0x589FBAD0,
+0x716669FD, 0x55EBECB7, 0x0DF001BD, 0x27FCE18D, 0x36B54143, 0xE2D9FC04, 0x0856E3E2, 0xFA6AF3FB,
+0x8BD26F13, 0xB5D44FE1, 0x129E8146, 0x17D97EA9, 0x79B1A00C, 0x12AE299A, 0x4A9BDEA2, 0xEB945E89,
+0xD8A0BACF, 0x164A8D00, 0xD8EDF7FA, 0x7BBB59A3, 0xE1633F63, 0x17B114A7, 0xA9B0C392, 0xBC41E487,
+0x43C2B779, 0x6BB3CF28, 0xBED2EC65, 0x37E2C413, 0x7C09A2B4, 0x6D24AD35, 0x7FBC8D7E, 0x9FEAB926,
+0xF4282E91, 0xD8F5A389, 0x7789FECF, 0x7664F7F2, 0xAF14C86B, 0xE2823995, 0xC3CC77DC, 0x71D49838,
+0xB172BF6B, 0x94E7860D, 0x908E7DD8, 0xDB526B1D, 0xD90BDBEA, 0xFC52555C, 0xD5856D66, 0x40C7A640,
+0xEC864C25, 0x12F9A0A5, 0xB5A92881, 0xB78DB70F, 0x83B2BA91, 0x365E404C, 0xA88A9332, 0x6BA51BD0,
+0x2203F198, 0xEF7F2107, 0x1B9A32C4, 0xF0CCFF6B, 0x3BA51BEB, 0x24DCF2B1, 0xEFE609E8, 0xAA401EB7,
+0xAB481311, 0x8186685A, 0xD9BA410A, 0x8DB98564, 0x63827AD2, 0x287858E3, 0x570B06FA, 0x82239007,
+0xD5384F62, 0x701AF6F7, 0xB5031952, 0x1763FE94, 0xEF4BFC6B, 0xBE8B202B, 0xA2D5F45F, 0xF5E7214C,
+0x5794C83F, 0x0B748266, 0x5F2E202D, 0xCDC98525, 0x7ADB30C9, 0xA0B1774D, 0xD2F6ED82, 0x5AD5A5A8,
+0x7E2B598A, 0x53A6D4BA, 0xCFAF796C, 0xD41D18CB, 0x46F47777, 0x1420A6D3, 0xCB302F90, 0x0828FC3B,
+0x48CB0ABA, 0xAA12A582, 0xDB65A13D, 0xE3DEB0A3, 0xD49D67FD, 0x0F3D5240, 0xCC5FD98B, 0x78147D46,
+0x24ADC6CB, 0x5C42D923, 0x8A63789D, 0x58E26CE0, 0x7E1C7FE6, 0x5304B534, 0x0ECA1571, 0x6C47B58B,
+0x318D0A35, 0xA2C6BCAC, 0x8F980517, 0xD914F566, 0xC3064B86, 0x3D7573CA, 0xC751685B, 0x4BD28F0F,
+0x7DFC7F3F, 0xBF0A7E76, 0x7F402E4A, 0x33CC4D44, 0x67D840DF, 0x0A566922, 0xA80D7301, 0xBA34A4A3,
+0x48C00BCB, 0x1896AC7D, 0xA325D9D2, 0x6290AD72, 0x521C049B, 0x483D428A, 0x69B6224E, 0x5A78E2F0,
+0xDCBEAA21, 0xA91C1627, 0x91F39E76, 0xA262B20A, 0xED634CC7, 0xCD34EC73, 0xE5B89F58, 0x294D6A04,
+0xB62DD283, 0xF51EA7AF, 0x7EC60CAA, 0x89FF4F63, 0x558B1B93, 0x30B1DEFD, 0x4DC033C8, 0x36912616,
+0xC1DA3CC7, 0xAF5E5269, 0x98671E82, 0xE43BA317, 0x333CF29E, 0x23FA49B9, 0xD3DFC827, 0xE801CA46,
+0x89956707, 0x598EE258, 0xCAF43C0F, 0x48745BE6, 0x0B2E495E, 0xC49B4667, 0x6F8C319B, 0x20A896F7,
+0x3653215F, 0x883CC000, 0xCA140795, 0x3FA4D086, 0x5A414E2A, 0x76A860E4, 0x894004B4, 0x87F8030A,
+0xD5F691B8, 0xBFCFFC86, 0xC4663126, 0x1DDE3CB3, 0xF8BE3E2D, 0xBDCF7D7B, 0x04A003CA, 0x3770D989,
+0x86D072F0, 0x0A7617FE, 0x04E444C2, 0xCFAE896D, 0x97327388, 0xCAEC6FF8, 0x842516B9, 0x0637882E,
+0x5A05DF63, 0xF9DA66DE, 0xB21148E5, 0xD3F29B12, 0x9D81A7C9, 0xBE6F582E, 0xAFBA0184, 0xF1938446,
+0x4487438F, 0xA40259A7, 0xF63A9C8A, 0xDB30F229, 0x3CE1F3F0, 0xDD2D2498, 0x477A2FE0, 0xAE0C3D84,
+0x858C1970, 0xC864C887, 0x09621CA9, 0x186C938A, 0xED2B809E, 0xC9890DA6, 0x70D283C5, 0x9D168C70,
+0xE5533A81, 0xCE8F3805, 0x5393EDAC, 0x0F4747E5, 0xFDCD5EFA, 0xF70098CA, 0xEF013BC3, 0x78FFC9CB,
+0xCE83567D, 0xEAAC055D, 0x7BBCD7B6, 0xD6A1CFAB, 0x5E9D90B7, 0x4576C1DF, 0x3C70E753, 0x6C93879B,
+0x23B405A7, 0xE4184EB7, 0x9674EB58, 0x4ADBAA3B, 0x9E6EDAD2, 0x96821BA4, 0x8539C38F, 0x3009F4E1,
+0x0458F94B, 0xB70F6C2D, 0xE66A4CC2, 0x0B6C664C, 0x02FC1963, 0xD5D86373, 0x8977B43F, 0xBBCBA1B3,
+0x72CFDB66, 0x1DE58E76, 0xE1099C57, 0xD52C163A, 0x06D65FB2, 0x8AEB1F15, 0xDAA80659, 0xB85E9A03,
+0xC2E7F367, 0x9BECCADC, 0x10903E02, 0x727C18F4, 0xB8A48379, 0x49D46D9F, 0x5541EA05, 0xAED07F3A,
+0xDE9436A9, 0xE56A36BA, 0xAF7302F4, 0xB92B0B9B, 0xB6396AF6, 0xA03579A0, 0x22208342, 0x8CB99895,
+0xD5EF5CB0, 0x10B42C07, 0x5020E1AF, 0x4CBFFEBE, 0x5D1CE1A3, 0x376FAFAE, 0xBED46C3E, 0x5FDCEF4A,
+0x179E279D, 0xDF508F9E, 0x0953B846, 0x8EAFE8C1, 0xC1647804, 0x9753665C, 0x7E47FEB8, 0xFD95AA69,
+0xC6F4DD10, 0x62B7EB59, 0xF534B7F6, 0x38F1156E, 0xF77F4916, 0x43F531F9, 0xD20A653E, 0xA147C8E6,
+0x7A46F7F1, 0x3A069D9B, 0x1008CC7E, 0x8CCCBED0, 0xD3900885, 0x4B3F926C, 0x93C25C0B, 0x8415E4FB,
+0x0A317184, 0xC68D8673, 0x43076B19, 0xBD608F32, 0x7A5D387E, 0x2110BDE5, 0x3054034F, 0x427CBCC5,
+0x7D4DF0A7, 0x848C3A3C, 0xA6A4FC80, 0x3ACB391E, 0x182C4990, 0x1FB001CF, 0xDFF2850C, 0xCE2FF475,
+0xB8498ECA, 0xC67238CA, 0x08F8BC35, 0xF19D9B2E, 0x4328EC91, 0xED9A6C36, 0xAF96E69C, 0x96E7F5A2,
+0xAB4D6783, 0x903348AB, 0x8439AE25, 0xA70D1AAC, 0xBBF75368, 0x8F4B0286, 0x0FA9861F, 0x46A47328,
+0x29EA50B9, 0x97D4AB9A, 0x9A62A0CB, 0xBF356048, 0xFA0A3BE5, 0x2DD97524, 0x56BA32CB, 0x82CECE76,
+0xF28E0831, 0xB834D4DC, 0x412FB271, 0x452A9986, 0xBBA3404D, 0x3697D88B, 0x4FD31603, 0x9898BE34,
+0x0BF50B87, 0xB71FD3E1, 0x4DE4CDFB, 0x5FBE64FF, 0x37062223, 0x0497D237, 0xC07F1756, 0x1749FE3B,
+0xDF16851C, 0x2F8299E1, 0x42580BD5, 0x1ED044D8, 0xD2685C96, 0xB03E030F, 0xEC1EC5C7, 0x61EB8532,
+0xDCD27E91, 0x045CF8DB, 0x13F936AE, 0x98D5BB31, 0x408C6A2F, 0x49787AC9, 0x161F3356, 0xE16B37B2,
+0x4A02BC7B, 0x42484702, 0x240B9C13, 0x6C00D307, 0x7B67CFF1, 0x2FF05572, 0x787813C4, 0xA745CF18,
+0x2C9C978A, 0x6662F3AF, 0xDC86A938, 0x06CE4567, 0xEEE1BB27, 0xE7455464, 0x5EB701E5, 0x6DC61C3E,
+0x2464040D, 0x16B64AB7, 0xD88880EC, 0x06BAB2A3, 0x1E8E377A, 0x43127A6A, 0xFAA3C6FA, 0x824C8551,
+0x36744C50, 0x70C350DA, 0x5D8C4DA2, 0x7A106CCF, 0xF7F694B4, 0xCE4BEC71, 0x9491DEAD, 0xC6E26DDA,
+0x6F43816E, 0x7F78F21A, 0xA11829F1, 0x76A5EAEA, 0x34D30A5F, 0xFB01BE2F, 0x7DEB843C, 0x5488D6ED,
+0x8FD99CF9, 0x404DD410, 0x54596E7D, 0xB89AFDBC, 0xB90B7B49, 0xF15BA117, 0x30D96B7F, 0xDA03F3CD,
+0x1C01A627, 0xFD13F380, 0x12F85307, 0x7056D4F6, 0xF70157A1, 0xB1BF5605, 0xE06514DD, 0x46A76E0B,
+0x29B63CF5, 0xF49E2692, 0xD42723BD, 0xE489B80A, 0xB04359CF, 0x84DBA8D7, 0xD6EC74A9, 0xF06C28AC,
+0x16A2C28E, 0x3EC00278, 0x47BB3288, 0xEADC524A, 0xD0D23E9C, 0x61A47B6F, 0x4D269AFE, 0xC900B24F,
+0x56444088, 0x778C5F46, 0xEBEC411C, 0x59FD2DF3, 0x1E826D6B, 0x520144C9, 0x07A3D481, 0x6B1068E3,
+0x074E3072, 0xFDE25B8B, 0x25C55A58, 0x6BD45143, 0x9724CE37, 0x771A2DAA, 0x8B781700, 0xDEA9126D,
+0x3055CE17, 0x5E5A06CA, 0x5DAE7768, 0x2181E8DA, 0x53A7E486, 0x63DAB565, 0x86780B2A, 0xB5AF185C,
+0x3089D64A, 0x0DC870E1, 0x05F7BCC3, 0x711AF03E, 0x9F656125, 0x5157A522, 0x9DCB60A9, 0x5E65C504,
+0xFAF9A0FA, 0x026B74C0, 0x817DF6EA, 0x655BABB3, 0xB0D267B4, 0xC2BD1383, 0x23AE3546, 0xB1356DB0,
+0x7D6E6E11, 0xBAC8D9F7, 0x6855827D, 0x1683312A, 0x0CB67502, 0x71C1A4CA, 0x30213F38, 0xFAF94014,
+0xCEB0CBA6, 0x620D11FF, 0xB2537060, 0xEF4A086D, 0x2442137C, 0x86B30161, 0xE5E0FD59, 0x302C54B6,
+0x09DD4A13, 0x1F6AB467, 0x3D1FB2B8, 0xE887CD27, 0xA51AD1E1, 0x056922E9, 0xA3B2AEF3, 0xCD120CB3,
+0xDCAE5B60, 0x8957BDCC, 0x8182EFE1, 0xC2FE39DD, 0xB338660C, 0xD915FBC5, 0x824977EC, 0xD0A16B2D,
+0x6C35705D, 0x42FC9B2D, 0xCC6AD747, 0xAEC4604F, 0x6422B323, 0xDE703C07, 0xB9DBD03D, 0xA5E6EE25,
+0x1552C578, 0x2ADA5112, 0xE7B2A451, 0xE04F9FDB, 0x702A370B, 0xB49ED4F0, 0x0F0881C7, 0x2FE8A1CE,
+0x9C5FE0C9, 0x2B852575, 0x424B0850, 0x02F05098, 0x35296A4A, 0xB4DEEE50, 0xE21EC137, 0xC41DF377,
+0x9B2344FE, 0x82347581, 0x0EEC003E, 0x94EEE367, 0xA75731B6, 0xAA4A9AED, 0x40ACBD53, 0x72608599,
+0xC9D6900E, 0xEEA0220D, 0x774390F1, 0xA792E3B8, 0xC201B206, 0xF71FFC19, 0x4EF49CDE, 0x0AAFA8AF,
+0x64FD6B9F, 0xBDDD9C28, 0xEDED1081, 0x87D05EA3, 0x611A0644, 0xA2C96BFF, 0x4CABCC41, 0x98ED1F34,
+0x197E462A, 0x8A025258, 0x58E73EE6, 0x2E8FBF49, 0x68499731, 0xB3642B29, 0xE7B1C091, 0x5BE646AF,
+0xAC5B2D48, 0x9734B71C, 0x3399A4B5, 0xF7EE85A5, 0x64243602, 0x96E5DA70, 0x4D062F64, 0x4E7429FF,
+0x901F524C, 0x11CDC792, 0x0EA5D848, 0x5C21965F, 0xCA3302CB, 0x1CC756CA, 0x6DE8CA7E, 0xC996FB20,
+0xE10A7AAA, 0x376E9AA4, 0xA0E78932, 0xCCE808C6, 0xB7879970, 0xC715814D, 0x6ACBE624, 0xFAAC2C6E,
+0xD7F5336D, 0xFF849FA8, 0xBF284DFD, 0x6F25D7C2, 0x5D7877B5, 0x89F63A0D, 0xB1FCFA3B, 0x37C12F44,
+0xC031AD81, 0xF826EE49, 0xB78658CD, 0x9968ED0B, 0x33B338C6, 0xC935B6A3, 0x3B2BFD7F, 0x60D0DC6E,
+0xAC9F20DB, 0x0B674B27, 0x6008BCA2, 0x0F1BC901, 0xC262E066, 0x0D95EE6E, 0x73B9EFA5, 0xB0DFEB29,
+0x83A8E7E1, 0x31751206, 0x4CF2BFD9, 0xE28A7B60, 0x980C4E3D, 0x36843121, 0x20A4385C, 0xA3814940,
+0x49FDB570, 0xC9B0600F, 0x67AF57CD, 0x6DC54777, 0x2E0BC7D2, 0x5008801D, 0x60DCD20E, 0x061F31CC,
+0x65306AB7, 0x135B130B, 0x5C9D852C, 0x2EAD403C, 0xF5EE1297, 0x73B0B812, 0x523B56B5, 0x5DBB1917,
+0x577B95C0, 0x6FFF516B, 0xF02B39B8, 0x65079E59, 0xDB666E7F, 0xA5398430, 0x657302CE, 0x82849229,
+0x9E114184, 0x7F0FE07D, 0x5FC5D295, 0x851E2138, 0xE0BC3335, 0x04313A55, 0xF1D6C3A6, 0xDE0D38FB,
+0x3028681A, 0x88CA8F8F, 0xEEA85A52, 0x82E64815, 0xD9F9DB4C, 0xE05EA64A, 0x5817CF46, 0xFEA15D26,
+0x6D1036CB, 0xB93E13E7, 0x62A25EE2, 0xE40071C2, 0xB7A9D99C, 0x8C13349C, 0xDC888FC6, 0xEFF977BC,
+0xE095C75D, 0xDF6A5151, 0x37EA0AD0, 0xD75CC241, 0x6B113358, 0xFEB97FF4, 0xD36C6EB0, 0x8B40F207,
+0xFE581956, 0x9BC639E5, 0x7238983F, 0x5DC89076, 0x35DF2FA9, 0x4D51A214, 0x2D6AC8C9, 0xE0D7EA4B,
+0x071A4E11, 0x0C5D313E, 0x701427CA, 0x11FC8373, 0xE09B802C, 0x160B75B9, 0xD1D60D3B, 0xE6F88749,
+0x661BAEC2, 0x31DBD429, 0x5AD5AA49, 0x2DC448B9, 0x7C271827, 0x4273A8DE, 0xFDDFF26A, 0xAD31CBBE,
+0x969B6E66, 0x10E0F977, 0xEACAF207, 0x5C124D5B, 0x29680874, 0xEC8B86DE, 0x5708E28F, 0x1DD797C2,
+0x1C193DCF, 0x45BFFB6C, 0xBFA126EF, 0x112B391F, 0xF88FE60B, 0xDCA6466B, 0xC0194BAC, 0xD1A031BA,
+0x07994567, 0xE3080CCA, 0x6B33AC4F, 0xD1CFBA32, 0xCE78F521, 0x2044DAAA, 0x5F9B8285, 0xC07DAB4F,
+0x0F5B1CAC, 0x85526F7B, 0x11DD71E2, 0xE83C3696, 0x2AB81918, 0xA8F36C1D, 0xEC1A2422, 0xAC2D8709,
+0xD0F52C54, 0x006E1409, 0x90351B3A, 0x92D2225B, 0x2CED280A, 0xAD4ECBF2, 0x720DD83B, 0x28D29E33,
+0x37154D0C, 0xFEF9361F, 0x1A7307D2, 0xDAACDC87, 0xF5B5239D, 0x8E654172, 0x85F6E0FA, 0xFB588FCA,
+0x041B8289, 0x63056665, 0x3B8E572A, 0xF8A6A6DC, 0x5B2A791C, 0xD6E35E02, 0x08C7052A, 0x441903BF,
+0x253754B8, 0x4C656A5D, 0xAA350C1B, 0xBD1CB2FB, 0xF0A13B3E, 0xA654B363, 0xB19E3F42, 0xEBE2FF5D,
+0x5A236AB8, 0xE26DA837, 0x897FFC7A, 0xC8E8A26C, 0x494392B3, 0xADDC09CD, 0xF701CA4E, 0x2B7578B2,
+0x737B0CE5, 0x4DD1BAD1, 0x18855015, 0x8CA40128, 0x6FAC41C3, 0x6085F1F0, 0x0F81FAFF, 0xC507DD30,
+0x3495F4C9, 0x99134046, 0x122B23A5, 0x42360A4A, 0xFC4EBB73, 0xF2E13E3C, 0xCEF17961, 0x32885E13,
+0x212C57CD, 0x5E5C9203, 0x9DC5F90C, 0x3E8D2DA5, 0x1B8ACBC3, 0x964BD320, 0x26233CCC, 0xA3912EFE,
+0x61AE56F5, 0x31D5E10E, 0x1C328515, 0xA3276FEB, 0x71AE00BD, 0xA53882EE, 0x96478AE5, 0x5156418D,
+0x201CD9E9, 0xE72DDB04, 0x4FCC1AA3, 0x23096C17, 0xD2B0AC2D, 0x7295C3E9, 0xE8BE06B5, 0x49B0AF31,
+0xF81452E4, 0x02A5DBE1, 0x6DED2789, 0xE817C69A, 0xD7F3754F, 0xB739C197, 0x35CE4231, 0x4D4143D6,
+0xCB5B05EC, 0x44B58443, 0x1CF34D21, 0x4B291058, 0x5F9775B7, 0xA57B0B7D, 0xFA0E5DD1, 0xC9FAD368,
+0xD0B11478, 0x1F8DA6A4, 0x11ADDC02, 0xE09322BF, 0x05D44AF0, 0x523A305B, 0xBA7F483C, 0x54351430,
+0xD29A4979, 0xB9FBE435, 0x2DB188AB, 0x49DFDB56, 0xCCBD9674, 0x614D8539, 0xACAE569C, 0xCCE5C24E,
+0x9825D95E, 0x3F12C811, 0x8BF4F0B6, 0x5C1AB2E7, 0x1B4AF697, 0xCA7293DC, 0x170850EA, 0x63A69026,
+0x8E243594, 0x3065D748, 0xF58E7E79, 0x97F4EEA5, 0xC3CBCEE1, 0x08DD2ACB, 0xA4FEAD27, 0x7CB08ADC,
+0xDBC25A04, 0xA2E5DBE2, 0x5EB46BBD, 0xDED19725, 0xD84A31AA, 0x97D75FEC, 0x1C0D8C9B, 0xE08508F1,
+0x68E02E3F, 0x422CB29E, 0x03C74DB8, 0x292EE9C7, 0xC79EC2C8, 0xEC0E01CD, 0x008900CE, 0xBA3D759D,
+0x82D04907, 0x26D55DED, 0xDD48428B, 0xB327A53D, 0xA53B095E, 0xECD18820, 0xF33B4B73, 0x5B715A61,
+0x06CABBFE, 0x4D9D2A3B, 0x8A8DA9D2, 0x5725746C, 0x89B7E1DF, 0x606C276A, 0xD010604E, 0x325F60C8,
+0x35501323, 0xE6FBF10D, 0x66A7384F, 0x956CFE75, 0x5455EBDB, 0x03C3DD66, 0x9409D921, 0x26E41C98,
+0xBC6A1C63, 0xC62E7DE0, 0x6AD40068, 0x90175B73, 0x4E28D937, 0x7BB5D1CE, 0xE2030C8D, 0xE9810D1E,
+0x89066B1B, 0xDB67AD86, 0xD0E43030, 0xDC9E17FD, 0x5D84463B, 0x47579248, 0x7053B0C2, 0x7194CCF8,
+0x461D0B35, 0x73F9AF98, 0xAAD433B6, 0x642E38E7, 0xF05EB6BE, 0x6160E917, 0x4CB6B8C9, 0x8E042EB5,
+0x5193847F, 0x7F8221C8, 0x94C28804, 0xEC647253, 0x49951C21, 0xAB40DC07, 0xFB26CAE3, 0xD6F0B0C5,
+0x8570E138, 0x2A3ADD72, 0x81985AF2, 0x271F8375, 0xECA68C63, 0x21214398, 0x505E68EA, 0xE734EC76,
+0x741D7673, 0x3B3D8992, 0x5716E5DE, 0xC85D48FD, 0xF2207A80, 0x2B54E610, 0x6207F7F7, 0x9D0AC41E,
+0x3F9B6620, 0xAC6265C5, 0x186D19F5, 0x2958A245, 0xF344B045, 0x98626802, 0x24D8D908, 0x17E86EA6,
+0xCF2C9FE7, 0x9F3901E7, 0x705C204B, 0x772B4487, 0x3356B789, 0x2DAA55A5, 0x07B3C042, 0x62E01FCC,
+0x1FB6807D, 0x4BA839FD, 0x3DBC2068, 0xD3AF185F, 0xB2BB6D23, 0xC8855052, 0xAE396866, 0x6ABB8EAB,
+0xB271E198, 0xFCC97E97, 0x2EFB239D, 0x36497538, 0x982D45BB, 0xB7313141, 0xA96C73BD, 0xB554DB43,
+0x185295C8, 0x1F4617F8, 0x13517266, 0x55DC5701, 0x111CD947, 0xA0739068, 0x189F682B, 0x69CBD159,
+0x09FEAC66, 0xE9B9031A, 0x39C2E7B8, 0x4B027FF1, 0xD63613C3, 0x4A035918, 0xDF983E35, 0xCBCB90BE,
+0x7ED0295D, 0x5E962959, 0xE0A6788A, 0x27486477, 0x94C4001F, 0x1E839175, 0x07F598BD, 0x98F33ECE,
+0x2620AB16, 0x534C57D3, 0xC84F2CF8, 0xBB62FFA1, 0x7060D94D, 0xC019FDF5, 0xAB4C8E28, 0xD28D3812,
+0x8C194F08, 0x87F957FE, 0x040CBF27, 0x97F519B6, 0x1828106A, 0x9E940BE3, 0x55191844, 0x941F14EC,
+0xFC2404D3, 0x0A190813, 0x7434DAB8, 0xE7C51CE3, 0xBDF97C05, 0x47039BD4, 0x846772FA, 0x05965F7E,
+0x525DD107, 0x5E861B04, 0xEAF7FD5F, 0x5C62E8D3, 0x312B0B41, 0x9114D199, 0x967EAB40, 0x3EFBAD09,
+0x8785D5EA, 0xF92D86D0, 0x3F50AE89, 0x84B9B811, 0x986DDCDB, 0xFF5FA1C0, 0xE9F57225, 0x305C47F7,
+0x5E33F1D6, 0x4C9E6F6C, 0x1B81495C, 0xFD99C276, 0x691E3CAC, 0x25DDECB2, 0x9F1B0FCB, 0xEDF4942A,
+0x4EB56690, 0x8712B337, 0xDF5815C7, 0x5051B627, 0x31AEED1D, 0x09A681B6, 0x13F530E2, 0xC037D532,
+0xDAB82E51, 0x84612585, 0x46109BAE, 0xA1D634C7, 0x3332E59B, 0xB7999A27, 0x427C4A8E, 0x9FFFB3D7,
+0x62C35F49, 0xC5ACBA47, 0x072E7F8D, 0xF64B4E1E, 0x66A74226, 0x33F7AC75, 0x64FB3EA1, 0x08A88E2B,
+0xABAA0E4D, 0xE00F461E, 0x0685E25D, 0x0AD61253, 0x4C5F7727, 0xDA7DA439, 0x022322AB, 0x11C717AF,
+0xA936C14B, 0xACE0871C, 0xE258467F, 0xD78B2230, 0x7A63D61E, 0x5388F3CE, 0x150F5E20, 0x3BBE049F,
+0x5679EFE6, 0xD2177102, 0xC5B59990, 0x31700357, 0x8900913F, 0x671341FE, 0xD5129E2E, 0x21C16041,
+0x551496E4, 0x21520897, 0xE93BF9B9, 0x6AD185B5, 0x4BA00B23, 0xA2F24410, 0x6327A08A, 0x8086A271,
+0xD16B2B2B, 0xC7299D0D, 0xBFCE1217, 0x7ED89C79, 0xF267B060, 0x17CE18EA, 0xC750B386, 0x72244ED2,
+0x165043A6, 0x235BA50F, 0x80C24F1C, 0x03C1B184, 0xCE1109ED, 0x16A4ABCF, 0x2278E20B, 0x027B6C1D,
+0x41F81BDD, 0x514AFF2E, 0xADE88BDC, 0x1F90A874, 0x424F02A0, 0x701F008A, 0xFE7A2B3B, 0xD767D03E,
+0x8D8CEF0A, 0xDE883286, 0x90E76643, 0x766FDFCF, 0x049A4905, 0x7509A39B, 0xE16EA5C0, 0x4976DF58,
+0x7A944BDD, 0xB50067DE, 0x9861FE39, 0xC627E97D, 0x9DF30A0F, 0x47665568, 0x0ECE7AFE, 0x9C95FB60,
+0x16C4B9F6, 0xC0317322, 0xE7394A3E, 0xCE097C83, 0xFD08087D, 0xEF324E3A, 0xF2C0B3D7, 0xB599EC63,
+0x2EB38A55, 0x289EFAFF, 0x995E3C54, 0xE05D283F, 0x275ABE67, 0xFCA61686, 0x81E76960, 0x1C34BF63,
+0xC4C9AC33, 0x4993778C, 0x767FDBE5, 0x53FE3E73, 0xAC6A424B, 0xC9810E98, 0x6CFF8606, 0x09B85ED0,
+0x70D96206, 0xEE556D74, 0x076586DA, 0x88113E12, 0x38FE5AAD, 0xA573CE85, 0x78F6AD04, 0x524A4BC3,
+0x1ADDE001, 0x24580D8A, 0xC5E458BB, 0x273DF0A9, 0x4C592F51, 0xA6F3F6F4, 0x19738E96, 0x9AF65527,
+0x9078CB8A, 0x620B3BC3, 0x8EE5041F, 0x9BCF2225, 0xC383220C, 0x8F7CB79A, 0x41494C19, 0x7630C9FC,
+0x68540EFF, 0xB04383AC, 0xACDE53B9, 0xB1733217, 0x15E0FB46, 0x412A472B, 0xFD9E45CD, 0xAB136B15,
+0x84A4A949, 0x3C966EAD, 0x9BA98186, 0xA28A4A7C, 0xAD245567, 0x8E54FA96, 0x13E0098A, 0x99E8B848,
+0x5A4AD773, 0x00836ADF, 0xA7F0E372, 0x2231684D, 0x6986578D, 0xED61C5AD, 0xF2C5F45C, 0x351ECE9C,
+0x36FBA8DF, 0xA1F00289, 0x17A63A63, 0x1ECE8098, 0xF1F140C8, 0x1EFC3932, 0x1621D761, 0xAF3E50BF,
+0x90BF9F9E, 0x49D891BF, 0x2FD95FA3, 0xA6B320EC, 0xD9273B29, 0xF5DC28AF, 0x953668F6, 0x84627C5F,
+0xD9E6146B, 0x4240ECE8, 0xA0F4A2CB, 0xD175FE96, 0x3478C088, 0x9EF1BFED, 0xC95E932F, 0x5787E0D2,
+0xDF56AA5C, 0x03B011F6, 0xB05D5756, 0xF9A93370, 0xAA04CC1B, 0xEBB234F6, 0x2C8BD332, 0xBA1299A6,
+0x6BA4F080, 0x09D088A2, 0x420CE06C, 0x9501D478, 0x6D15831A, 0xF964B070, 0xEC285449, 0x5FC6F79E,
+0x0B1ED49C, 0x4156D63E, 0xC5ADA495, 0x0FD23325, 0x5B279989, 0x80095A3B, 0x20E31992, 0xBD8DFCD3,
+0x4837DD91, 0xF3EB4AAA, 0xB17B6629, 0x6B80240D, 0x90180761, 0x1F82A462, 0x33F7F739, 0xBD2D1B06,
+0x1165EA93, 0x36D2484D, 0x7E287BAC, 0x33C25D7E, 0xC3840CC2, 0x46FBB402, 0x1CB2F14A, 0xDEAC0228,
+0x9A882841, 0x93D05071, 0xF3424CD7, 0x76676EB1, 0x481D09FE, 0x604B3D47, 0x6C4AB50E, 0xB7821167,
+0x91ABF580, 0x3FBE7F9A, 0x1E95513F, 0x5DFCFC6F, 0x011D08A0, 0x6F0CAB9D, 0x6AE43007, 0x025A2A75,
+0xB808E95C, 0x669126AD, 0x31DD35A6, 0x07F6E110, 0xA9437AAB, 0x57F69018, 0xED06776C, 0xCBDDE3CE,
+0x8CE79253, 0xC98B5A52, 0x7B81DEC6, 0x72112994, 0x06505B88, 0xD5B120D0, 0x6B327C2A, 0x44B64480,
+0x09CFFA51, 0x668F7E0C, 0xD4B1E6BA, 0x65C2E7D8, 0xCEF856B2, 0xF379F622, 0x6071B74D, 0xAFD68A8D,
+0x779BEA9E, 0xBAF257C0, 0xAA50369A, 0xA7F749A8, 0x62FCE462, 0x2EF6E411, 0x93204CC8, 0x707E8E1F,
+0x4E2975B6, 0x4114FE35, 0xE03D5173, 0x7C63A868, 0x9F483D57, 0x8356C13D, 0x31FBFEA0, 0x5BC3A19B,
+0x1837BA9C, 0xFD13680F, 0x39D6C06C, 0x11268B22, 0x2D50BAF7, 0xD9499657, 0x569C9003, 0xCB31D138,
+0x1E92625F, 0x129B9FC8, 0xE3C233EB, 0x12B5B7EF, 0xDE2254BA, 0x6A919F31, 0x2815A145, 0xD7FC952A,
+0x1BF18743, 0x52A70819, 0x13634747, 0x5FABC4A9, 0xBFA3455C, 0xEE9250C7, 0x4D568800, 0x4F3C742A,
+0x0FC2612E, 0xC64830D5, 0x4E04376E, 0xC8598CD3, 0xEE657EBE, 0x0EB85C07, 0xFD53DF72, 0x8320F0C9,
+0x35421A0D, 0x4B400622, 0x5A198271, 0x511EF2FC, 0x2AC2E1F5, 0xBE2B1377, 0xEAECCB54, 0x780CF6C6,
+0xC2BAAC56, 0xCAF3A17D, 0x5DE86596, 0x04EE1728, 0x9A5D2C37, 0xDD181B75, 0x2DAD8AA8, 0xE7807B18,
+0x72F8C39D, 0xC8B5F2A7, 0x150CEF0F, 0xCE5A24AA, 0x6056FE04, 0xE7982AA5, 0x42DCE76B, 0x3F93C5BB,
+0x22D8B8A1, 0xF6B783AC, 0x9EE5AE65, 0x6FF03BCB, 0x6F4140ED, 0x013F0C6D, 0xB29F0084, 0x12092B9E,
+0x63563C99, 0x481180F6, 0xBDA30A4B, 0x9F558C48, 0x644BB530, 0x5FB9FC2F, 0x9AF2D2AD, 0x5AE79610,
+0x9784C957, 0x3A2169E2, 0x9950A1B7, 0x05F17DEE, 0x5DA301EE, 0xEACAFDAC, 0x5FB09FC9, 0x11CA55A9,
+0xA8E81F2E, 0xC6E97B8E, 0xF28B3E86, 0xC179886C, 0x3692DA04, 0xF8B4EAED, 0xFB2ACD1B, 0xD203EF77,
+0xD7A82785, 0x0C606DC9, 0x7FCE1B58, 0x8E70723C, 0x3B9734FF, 0xAEE10857, 0x72986833, 0x58D7300B,
+0xDE42D1A1, 0x88566EE7, 0x4911A1D0, 0x12E7A147, 0x9045E852, 0xAE11663D, 0x98472928, 0xC1CD17A9,
+0x6AB332C3, 0xC958CA0B, 0x391EAB62, 0xF191161B, 0x6FE2ABE2, 0x8FBEA2F3, 0x70D3AF02, 0xDD854B1A,
+0x2E651BA2, 0x86457EFB, 0x13EA04E5, 0x28EFA236, 0x1F496678, 0x33C40368, 0x6AD81313, 0xC6D31E51,
+0x44D17DE0, 0x4C0CC49C, 0x851D7BB6, 0xC835A5B9, 0x14211202, 0x169EB403, 0x75DAAEAC, 0x7B24797F,
+0xE5132113, 0x832A638E, 0x74ED773C, 0x4BA9607F, 0xAA23B5D4, 0x3DE4FEA4, 0x363B5EF2, 0x2AB1F670,
+0x0B9B91D9, 0x530425A0, 0x44480C4A, 0x0B1AE1D8, 0x8C67EC82, 0xD06C7645, 0x4B71374D, 0xB9FFDCBA,
+0x6B2CEE08, 0x4032E2A4, 0x396238FB, 0xECDE467C, 0xA35439A3, 0x18B96C5F, 0x6089A79E, 0xD2459383,
+0x86505E58, 0x19E4002E, 0xFF11D333, 0x433DD514, 0x5610E496, 0xCB5D99BB, 0x16D22E7F, 0x9F1E41BA,
+0x9CA99ACF, 0x0C45E866, 0x1F908692, 0x671DACE7, 0x8A468DE1, 0xAA02B81D, 0xFBA1A255, 0xB4822ABB,
+0x7A9E6E8B, 0x27FE6F86, 0xE0C397FD, 0x0C68389D, 0x98B69A7C, 0x82AFD2B7, 0xE7BFFD3E, 0xDF52ED63,
+0x46537D46, 0xE768A273, 0x9C0F5128, 0x0434E7D0, 0x894C1E78, 0x97166CB9, 0x94297978, 0xB51954B4,
+0x51174F8D, 0xE18A8562, 0xF14F669E, 0xB2F11A01, 0xECE8A9B8, 0xFD2214AC, 0x725A05CA, 0x1261F3B8,
+0x469CE8CE, 0xA76AD56F, 0xAEF0F99E, 0xD8645AD9, 0xE5A53E76, 0x57BF502B, 0xAF46A1CD, 0x148FBBE7,
+0x712BFD0A, 0xAA6A10F4, 0x7B363DE1, 0xFF695D8E, 0x8FF4DE65, 0xF8C96291, 0x08EC27CB, 0x0E378ACB,
+0x6E0D1491, 0x8F4C91CA, 0xB5E53FC4, 0xF7240E91, 0xC1832498, 0xE3ACBEDF, 0x334F5E2A, 0x474045A8,
+0x285ED46A, 0x0813C149, 0x18C2CA55, 0x67223272, 0x78895E2C, 0x6FA32EDF, 0x94B452F2, 0x94F9A114,
+0x0DA581E4, 0x6FDB7084, 0xFB1EA9E7, 0xA3D5B02E, 0xD0EDA2DA, 0xF64821DA, 0x12A9C136, 0x57954577,
+0xCF9AD25E, 0x8AB6F482, 0x7DABD45E, 0x2C05972F, 0x80DAFEC8, 0xA5CF4423, 0x09F3B22F, 0x1BB94BFA,
+0x74B1BCD8, 0xC9C4EED5, 0x67BEC265, 0x0F4E84C5, 0xA600A54D, 0x238C8C3C, 0x9224D124, 0x0867CDC4,
+0xA7D5B5B5, 0x10AD34AA, 0x9AF2AE2E, 0x048E2216, 0x548122C9, 0x86EB4662, 0x5C023867, 0x0572EF75,
+0x8DB01DDC, 0x087F359C, 0x0152884B, 0x1CA52DB2, 0x8D1B9919, 0x0FA431E5, 0xCE72A2E6, 0x4797C93A,
+0x8C78AC64, 0x9D32BEFA, 0x5E633B0F, 0x464395F7, 0x7FEB88EC, 0xC43A5559, 0x5A34A8FD, 0xA2F1F4F3,
+0x247580AF, 0x7674AAFF, 0x61085692, 0x5B0357E0, 0x7321C252, 0xD1138803, 0xF3F57F56, 0xE7E95F00,
+0x12065207, 0xCDD4C5E3, 0x22226389, 0xD121083B, 0x0D1D0560, 0xD1070E35, 0x5D6F8F8F, 0xDE1C0EF2,
+0xA9B2A5B4, 0xFC7DA784, 0x6EE7D943, 0x29CB1F4E, 0x64836E76, 0xF07D20B2, 0xEE703CE6, 0x34788309,
+0x8D71C7B5, 0x36F17A5E, 0x61E1790F, 0x4ACC83B6, 0x278F255E, 0xDC61B632, 0x332A2E99, 0x13D56E92,
+0x4716B1CD, 0x0C649D57, 0xD13EAF9A, 0x5096627C, 0xB08A057D, 0x3769C151, 0x0047DF37, 0x21BB7B7D,
+0x12D9F07D, 0x336A1E3D, 0x0AF54A21, 0xCB354440, 0xC6486FB6, 0xCE30F25A, 0x5E891E7E, 0xAE97257A,
+0x31E1669D, 0x504E6165, 0x81FCD56C, 0x58EDAF56, 0x02004B6F, 0x75A4358D, 0x634BBF77, 0xBBAA5A51,
+0xD8A50514, 0xC3C10CC7, 0x79D88D3B, 0xECBF422C, 0x13F52DB4, 0x8122EA3B, 0xFDCEF453, 0x3575D861,
+0x92253DA4, 0xBBF49743, 0xBBDE1929, 0x35BB4212, 0x301689A2, 0x2E058C3F, 0x127EDF7E, 0xBD91500D,
+0x81C3D5F7, 0x94050973, 0x2208E17C, 0x2BA5D285, 0x22803A6F, 0xA99B9BD5, 0xE8A3AB85, 0x722C62C1,
+0x2E3697F7, 0xFD849BC2, 0xE81730CD, 0x84F3ABCE, 0x0AA3F57E, 0x4EA4E8FC, 0x7738DBFA, 0x1DB9B523,
+0xCE10CEB5, 0x40041932, 0x28A6E965, 0x272F5CB8, 0x5058337C, 0xB24C35E6, 0x28DCF258, 0x84601712,
+0x6A343CDC, 0xC0AD3B5B, 0xD404C163, 0x0D6B0AED, 0x8B436C5B, 0x4C86C694, 0x5BC0B543, 0x1F562E2F,
+0xD42B9B3A, 0x61810284, 0x99236E0A, 0x75A5EE02, 0x0BE3171B, 0xCF41E29F, 0xB16A231B, 0xC0DAE878,
+0x4D3DA4EE, 0x40EAE706, 0x54585DCF, 0x5B45806F, 0xEF3B152F, 0x379C8C31, 0x48B6BCA8, 0x9D2FF120,
+0x2E9AE717, 0x71670C93, 0x371BCFBA, 0x95D09D23, 0x3A98701B, 0x36F40C80, 0xCD8135B9, 0x7CE43245,
+0x28EEF7EF, 0x3C42D987, 0xC5B86715, 0x6FF8BDC6, 0xD24B457A, 0x51D3CF8F, 0x4397628D, 0x45C2B685,
+0x29540F8F, 0xA9318CDD, 0x7D29F381, 0xE6C327A1, 0x5D7D42A3, 0xCA51E4FC, 0xCA4DD465, 0x8CA046C9,
+0x90B75441, 0x004273EB, 0xD92E7C6D, 0x47BCAEB8, 0x37DBB4F5, 0xBE1A88C0, 0x751EC376, 0x738E08FB,
+0x0A60FA08, 0x1C968066, 0x8B8F273B, 0x91BB4CB2, 0xB4CA1199, 0x795DE8C9, 0xDF5BD804, 0x35A3568B,
+0x40C63911, 0x97F5E15D, 0x534D2019, 0xF955E7EA, 0x58C659B2, 0xEB03F821, 0x4D570AB7, 0x1E625AF1,
+0xE6FB8EB3, 0xCDDBC337, 0xE3977F8E, 0xAC7C0700, 0x8D4A5771, 0xF82C82E6, 0xD2CB0934, 0x32691BF7,
+0x25DBF04F, 0x52923B3B, 0xDA38D70E, 0x826E86D8, 0x9A376BFC, 0x9927DD3B, 0x90275D71, 0x802802AF,
+0x580ADE68, 0xE570C7D2, 0x2F686D44, 0x5B7795E6, 0x68C76722, 0xFAC03E70, 0x1460158D, 0x1E1A2245,
+0x1E219038, 0xEBF1187B, 0xAC98BB68, 0x467AA429, 0x29419424, 0x02406778, 0x3F11F6FE, 0x7E196147,
+0xC05F6C08, 0x025376A2, 0xDC2DA333, 0x250EAEEA, 0x446CDFAF, 0x66DCEEF6, 0x11B8ADC1, 0x910E70D3,
+0x0149147A, 0x28DC5414, 0xA65154BC, 0x49B533B3, 0x6E103861, 0x19D7D13B, 0xCFA439AF, 0xF702F0BB,
+0xAED55275, 0x6190C7F0, 0x9E132B33, 0xE9D9DAB3, 0x206214E7, 0xBF52EB79, 0xF878E417, 0x6D4B61B5,
+0xAA045C41, 0xDA403AF4, 0xC378A220, 0x06E1571E, 0x64016070, 0xB3FDA70F, 0x33617751, 0xB6F5F4A8,
+0x90EA21F0, 0xD0F2B2A5, 0xF0A1747C, 0xB135B369, 0xD67FE964, 0xBE8A7B2F, 0x071BE1A0, 0x4447D8B9,
+0x8B441902, 0x2646ABA1, 0x1EFE8EA0, 0x86F970FF, 0x3DDE18CA, 0x80A00320, 0xD1E2AB07, 0xC784EF9A,
+0x9F550D64, 0x8C69E19E, 0xEC156465, 0x9A13C756, 0xB4592520, 0x410881A5, 0xE85B21AA, 0x27FBB5A9,
+0x256E88AE, 0xEB3C8BB2, 0x9CE6A9A4, 0x23D64A5C, 0x6A807B35, 0xF92862F7, 0x84C0AD29, 0x382763DB,
+0x790BBA82, 0x7E6CF449, 0xB9479E5C, 0x84576270, 0x98AE4A1B, 0xEC50B177, 0x2885E71D, 0x32E500F0,
+0x69BDCEEE, 0xBDA7AD08, 0x9BEE8D27, 0xB3056B1D, 0x6C836E81, 0x302EB1C2, 0x7EE88808, 0xBA5F6F97,
+0x737FAF58, 0xFAEDD6D6, 0x8536FDC2, 0xEF0C67C3, 0x687666A5, 0x38992FF0, 0x542CF4F3, 0x50594BA1,
+0xE50BE34E, 0xA9E284C0, 0x2F74C8BE, 0xC88528F0, 0x190B30A0, 0x54F5109D, 0x35B2E962, 0xC346FE9F,
+0x77E86889, 0xE34C4A72, 0x13B88C27, 0x5D072AE1, 0x4B00F9F8, 0xED8318E4, 0x785E55EC, 0x9795F6F8,
+0xB5DB56F6, 0x8001EFDD, 0xA13258F4, 0x2275BE2E, 0x0E69AD9C, 0xF8ECF67D, 0xBD940791, 0x1576CDC7,
+0x303F1B8B, 0x8CBF4841, 0x6E8E6B6B, 0x8777B854, 0x3C9E46D5, 0x9F97CFFD, 0xAA74996A, 0x61E16DB8,
+0x29C74AF1, 0x524E919F, 0xB9683CEB, 0x2ABDCA26, 0x2C8AF864, 0xC9FC66FD, 0xD9616113, 0xA82FE6D3,
+0x464E1317, 0x4676393C, 0x8C75C1D4, 0x7606D6D7, 0x255E45B7, 0xD8DFFF30, 0x9C22E3FF, 0xC017E50E,
+0x1DBC9BC3, 0xEAB73F15, 0x5F1D30C7, 0x284617CC, 0x8F493575, 0xCA3C0FF4, 0x763F5D63, 0xB90CA38B,
+0xD6667DD8, 0x388BB80E, 0xA9FDD954, 0x75752F86, 0x01E913C9, 0xC87F06D7, 0x6A5B4454, 0xCB612C79,
+0x68D3B1A7, 0x8003BB39, 0xE419BD39, 0x16279680, 0x201D2610, 0x221B6D57, 0x85797920, 0x21EC4DF6,
+0x9654B449, 0x4FA040CC, 0xC4244711, 0x7A126F3D, 0xE7ED8602, 0x3D6C7DE5, 0x83F608A3, 0xC3FB551C,
+0x8D3FB98E, 0xEFC1C71F, 0x49F75614, 0xC73F6C8B, 0xC574E790, 0xC0D6C072, 0xD0E5B96C, 0xCB75401B,
+0x729C0AE3, 0xC56F087B, 0x1C69174E, 0xD66C7E6F, 0x27CB5328, 0x3D3A2DAD, 0x87460DA9, 0x13620D8B,
+0xB092DE75, 0x60E80C34, 0xD619535B, 0xF6F0A531, 0x116BCFA3, 0xDC071AC5, 0x7F061ECB, 0x9FB96B28,
+0xC8B7F246, 0x7ECABC18, 0xE35F0EC0, 0x948FB989, 0x6178D8C5, 0xD3072473, 0x87A3B462, 0x8CA2685B,
+0x2AF97EF3, 0x67CF667F, 0x3311AE61, 0x7C64E873, 0xA9C2A3D0, 0x9CF31F05, 0x6FB55B23, 0x5D73B68D,
+0x756F13DA, 0x6F059771, 0x34D2D8C8, 0xF847E25D, 0x8A691125, 0x8A893CF7, 0xBB8ABE21, 0x16FD9427,
+0xCFAE680B, 0xB70BBC0F, 0xBA239E51, 0x72C719BF, 0x26914258, 0x23CC243A, 0xEED59174, 0x093E5B92,
+0x3D4333F5, 0x3AFD712E, 0xF3881598, 0x6851D5F9, 0x6FDB0082, 0xDABB821F, 0xB78FDA1F, 0x48F5C15F,
+0xB79CA664, 0x173B1CD5, 0x7592E55F, 0x8E80A1DC, 0xCBED9675, 0xDCE8D3BA, 0x24E0FCA9, 0x5B634AA3,
+0x8AD5AC0D, 0xEDEC2F4E, 0x23E91875, 0xB9DB1E33, 0x175CF04B, 0x049A4195, 0x38CAAE06, 0x9D3BF8D9,
+0x47559157, 0xD34CDAEE, 0x24AA5A46, 0x07EB0D0A, 0x9B9A141B, 0x05E5D2DC, 0x888419DA, 0xBF0EDB0F,
+0x30104F8D, 0x2F4B0154, 0xAF91DB76, 0x1192C5EB, 0x4535E33C, 0x60BE986A, 0x4706568A, 0x37CB0CE0,
+0xC814B7F6, 0x89977AFE, 0x29EE49B8, 0x708B78FF, 0x4A9746B6, 0x75AAAB58, 0x59BF56E7, 0x761DABF1,
+0x80CF27DC, 0xBF602AFE, 0x974EA407, 0x4C7B9486, 0xCCEC2C15, 0x4EF6BB7C, 0x32E03D11, 0x48D3C2FB,
+0x5C999ED8, 0x637BD9FE, 0x07CBC5B9, 0x2319E4AC, 0x28A6AF88, 0xB5A5F0E4, 0xBC31598F, 0x987C8B32,
+0x0A2CBD72, 0x304910DF, 0xD33B6AE6, 0xD1ACCF4D, 0x6F3FC315, 0x66AA81D8, 0x2CF1118B, 0x77F60B8E,
+0x4EAFED1F, 0x9DEB1343, 0xB0143E4F, 0xA2A162E7, 0x2276F6B7, 0xB96546CD, 0x22FB9837, 0x05F56410,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+20
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+SYNCRC
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
new file mode 100644
index 0000000..e5fc1a4
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+output0 =
+0x9EE331AF, 0x2AB3B869, 0x980F930D, 0xCDD88511, 0xEB5F2CEA, 0x82FA1DC9, 0xF9B5C9EC, 0xB6F4436E,
+0x9A1522FA, 0x3225D473, 0x2187A0A3, 0xC5E34328, 0x1E41E4C7, 0x67B44A01, 0x89C038A0, 0xECBE2C9B,
+0xF60AA1BC, 0x7E4EAB53, 0x1736724C, 0x01FDCB11, 0x6AB1F4D9, 0xAB48D5C3, 0x85D71100, 0x6585F802,
+0x6CEFB57F, 0xAEAE2086, 0x13B991E1, 0xF3535B2E, 0xF983913A, 0x4CE284A7, 0x8A7D6255, 0x36B48680,
+0x7EA72D08, 0xA2779E89, 0x0D4DABF5, 0x78B63DB6, 0xCAB0EA2E, 0xB9A8BCC7, 0x9E2A0F46, 0x82C6EAF3,
+0xD530159D, 0xC5D0AAD8, 0xA09130D6, 0xD0
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
new file mode 100644
index 0000000..954f700
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xAAC7105F, 0x643D4393, 0xE192891C, 0x83A39F78, 0x2582F55E, 0x26CFD732, 0xC699EBB1, 0x8F2B74A2,
+0x936E735C, 0x13D70FB6, 0x24CE6E8A, 0x50347DF7, 0x48D5C2D3, 0x04785E58, 0x60CA27F7, 0x3170E8E7,
+0x3338715B, 0x3610C008, 0xBD8271EC, 0x72D3EF32, 0xDA1A389F, 0x95FA85E8, 0x9CD1CFA4, 0xAE1D7D96,
+0x3BFB9064, 0x55E28DC6, 0xF7F67F98, 0x38D000DC, 0x6BAD2E54, 0xB0E88829, 0x063A2507, 0x6E76FE1D,
+0x25997E16, 0x0CC0E59F, 0x08E51C73
+
+output0 =
+0x967245D0, 0xBAC4FC7F, 0xF1AB7C86, 0x491785A8, 0x10577FCB, 0x163CF7B8, 0x6B265A8B, 0xE1A8BB63,
+0x0F2A05D8, 0x37557F18, 0xCE7525C3, 0x0CA9387D, 0x17BE76D6, 0x5387FFDB, 0x693CAE17, 0x0798AA28,
+0x48A44F2F, 0x38140D30, 0xE5906BF2, 0x52AC2F8C, 0x33B2A4E5, 0x7B1515B6, 0xB9D55139, 0x5DDA644C,
+0x3E312F73, 0xB95C0A44, 0xE16BE459, 0xE290B588, 0x8777F5A9, 0x08B5EA39, 0x693B5812, 0xA82A2918,
+0xC978FBC7, 0x0D77A295, 0xF9F5A8EE, 0x090853F8, 0xFF4D8021, 0xE3A2632E, 0xE6CB43A7, 0x3827C151,
+0x5494AE3C, 0x0C9ABCD4, 0x934F1B32, 0x00
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
new file mode 100644
index 0000000..c2182f3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3924
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xC1BEAF7C, 0xAFB020F1, 0x79E73901, 0xC5EEBB6A, 0x214101FD, 0x028573E1, 0x74BB7698, 0xD7AC347B,
+0xA05C2979, 0x5FA47D1E
+
+output0 =
+0xB763ED53, 0xC6529760, 0x0414EC8D, 0xF708DD55, 0xCE7892F4, 0xFA2DC816, 0x09D4B196, 0x56675715,
+0x87FA9716, 0xA529691A, 0x23B239F0, 0x22
+
+basegraph=
+1
+
+z_c=
+15
+
+n_cb=
+990
+
+q_m=
+6
+
+n_filler=
+10
+
+e =
+360
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
new file mode 100644
index 0000000..bface0c
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+output0 =
+0x5E7522B1, 0x7FA3382B, 0xA908E1D8, 0x2642E58D, 0xB56933E6, 0x6405F0C9, 0xA77DAD7D, 0xEBC763C4,
+0xA09FA64C, 0x764B1E23, 0x5BF6257D, 0xAFB6ECC1, 0x54E294B1, 0x1B65DD34, 0x4B4C9B37, 0x2C7F1A31,
+0x6EF7DA88, 0x60A11548, 0x74CC96E2, 0xD19CD066, 0x6B0EBF4D, 0xE9E45047, 0xC5AF1B06, 0x940B28AB,
+0x54ED59F0, 0xA0
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
new file mode 100644
index 0000000..b63d4d8
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/12117
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xD7C9BB11, 0xFA37421E, 0x000A635D, 0xEC53B479, 0x64A76ABF, 0x73F9F150, 0xD898CDC2, 0x0DFFDC09,
+0x9C97913E, 0xBA8A4D3D, 0x408D6AC1, 0x277C1D48, 0xF4DA212C, 0x4605688C, 0x103AA068, 0x751A28D6,
+0xFE30E21D, 0xA9EAF00D, 0x8943EB0E, 0x136C8419, 0x267BD625, 0x001067
+
+output0 =
+0x5BD32C8C, 0xF917BBD9, 0xD5835701, 0x6462E24E, 0x3EFAC535, 0xE7245C31, 0xBCED3AC7, 0x0C17F702,
+0xA16C4028, 0x514AC1E2, 0x128792CA, 0xE701A245, 0xECAB018D, 0xC29A0562, 0x58F1C57E, 0xF55D550D,
+0xA7AA6F81, 0x516787A1, 0xCFAA7F82, 0x962C6449, 0x3282A6CE, 0xE2F13841, 0x86ED088C, 0x24601D7A,
+0x63A2D3E4, 0x57A1624A, 0xCF40E224
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+864
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
new file mode 100644
index 0000000..a746bba
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
@@ -0,0 +1,110 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/4740
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x50F16834, 0xF2C53996, 0x03020CA9, 0x3FE7C401, 0xDD82BA62, 0xABE166B1, 0x20567A55, 0x80D9DBFD,
+0x157E8623, 0xD0787894, 0x0850484E, 0x322CFF58, 0x0C9DB7E8, 0xF63C91F4, 0x456AE701, 0xFDA2026A,
+0x9AC638AE, 0xB31103F5, 0xDA853614, 0xCF27450B, 0x4BD897C0, 0x1A09B1C2, 0x4A45966F, 0x3ACA9167,
+0x7F77FF7F, 0x15D56E48, 0x8FA07362, 0x80BBED1D, 0xD05686E3, 0x02CEA3DD, 0xB3C0D1B6, 0x259DAE03,
+0x25977868, 0x1A150EF9, 0x6E64CC85, 0x18A1DE79, 0x526A7853, 0xD5DF5A64, 0x2348D0B4, 0x51285055,
+0x86B05C87, 0xC391340F, 0xF18BCA53, 0x8791813F, 0x50EE99A7, 0x6F2CA384, 0xAF5126BD, 0x2142AD0D,
+0x10541F50, 0xB35BF0C1, 0x70E31CB6, 0xFECF5661, 0x61880F65, 0xBC65B63E, 0xE33B131B, 0x6AF42AED,
+0xD7C04063, 0x78611438, 0x722192D8, 0xA2058194, 0xFECFD4A4, 0xC95A2C4D, 0xC9D8AAA7, 0x56F959F3,
+0xA7B78EB6, 0x167AC217, 0x544688BE, 0x4C9CE796, 0x5324925B, 0xFE87D352, 0x019413EF, 0x95825C9C,
+0x64782300, 0x2714D4E7, 0x02D6E144, 0x9613CA04, 0x7700A0F9, 0xD9774CF3, 0x0F2D4373, 0x589EE52F,
+0x16F83601, 0x149DCDBE, 0x8592209C, 0xAAA899EC, 0x6CE1A873, 0x21D51F5E, 0x0DDC1BF9, 0x02DE0E7B,
+0x2F6E9A41, 0x11FFA908, 0xCFC1DB62, 0x5D1F0F29, 0x98640FFD, 0x45183F40, 0x0E3865A7, 0xB74D193B,
+0xEA77DF41, 0xC10B76EA, 0x44A42C65, 0x8D8D36FC, 0x45DFEFB5, 0x5F90559D, 0x62502A64, 0x00F9E573,
+0x5EE77494, 0x04043D14, 0xFD072D34, 0x3AE1BF9E, 0xF49B4B0F, 0xDA220770, 0x987837FF, 0x1C5A086F,
+0xFE64CBE6, 0x9679050E, 0x31DC1AB5, 0x9B2A557F, 0x2C7F124D, 0xDFDE4E83, 0xA16A8974, 0xCE26BE95,
+0xF27287D7, 0xCE564845, 0xDB35A382, 0x875BD89E, 0x567EB179, 0x1CCC7D32, 0xC83FBCD4, 0x62EE85DB,
+0x9A68B844, 0x6458737E, 0xDB81944E, 0x80299BC2, 0x19786941, 0x5A057F54, 0x7EB814DD, 0x07855BEF,
+0x16AA4F23, 0x1EF06576, 0x41D436E0, 0x403C8F3B, 0x82903B04, 0x0B4ED74B, 0x1699CD89, 0x4F2536F3,
+0x9FF1EF0D, 0x0D63ED56, 0x6F4FF3E2, 0x77013410, 0x729F850A, 0xC4A2B941, 0xB9AA313E, 0xE040B1AE,
+0x644AD780, 0x80751C18, 0x0D47BB25, 0x8CED403F, 0xF4F8807E, 0xB84E513F, 0xDCC2033E, 0x24ECAB63,
+0x0893EAF8, 0xC68786C9, 0x9A82D1C7, 0x13B36060, 0x4B537CCE, 0xDDE3D19C, 0x99112A1D, 0x3E6654F4,
+0x162AEACA, 0x62928B3C, 0x14FCBC98, 0xB44086EC, 0x6DBCED78, 0xE717F17E, 0x3F9B5B02, 0x817599B5,
+0xF347CB34, 0x6F82B71E, 0xC337D8E9, 0x0328A267, 0x427336AA, 0xC934417E, 0xF7B5C032, 0xEA79F0CB,
+0x416FCC09, 0x208D8D80, 0x37C1E3E0, 0x76023916, 0x57350343, 0xE8FB5955, 0x461F1171, 0xF139FDEE,
+0x96BE5220, 0x96A8EFB7, 0x8773204C, 0x43E6363F, 0xFB325A1E, 0x930B38FF, 0x60ECDDFD, 0x23609CAB,
+0x4E5864E8, 0x55636167, 0x75BEE160, 0x0F181B7F, 0x9FE05BC9, 0x9C220345, 0xBC648CA6, 0xD9C544F6,
+0x2294A55C, 0x5F921636, 0xFD5EF715, 0xE9FD8A7D, 0x31342020, 0x3892B312, 0x24ECAD48, 0xF31D850E,
+0x9817D48E, 0x60A26A1F, 0x24C0643B, 0x08BB3ABA, 0x9A2026AB, 0xB6ED1347, 0xCB06B9CF, 0x81028A1F,
+0x0C141510, 0x1173AB81, 0x467D6E76, 0xFC384342, 0xE9CCF66B, 0xEA8AC735, 0x1BD82B06, 0xD4F70487,
+0x4569F29A, 0xE94759AE, 0x298CA0DE, 0x991B05EE, 0xA24EB567, 0xA4F7DDEC, 0xCB46257F, 0x18EA8A0F,
+0xB859761C, 0x8F3BB417, 0x6F07EF91, 0xD94F3769, 0x2B7ED799, 0xA63563E9, 0x175B1B9D, 0x935433D9,
+0xC5EEE108, 0xAB66F1A7, 0x45352A49, 0x22660E7F, 0x93E8B76B, 0x098FC4D5, 0xCF0F90D9, 0xA21C7C47,
+0xA2C8C2D3, 0x566824BA, 0xB1A154DC, 0x09A95A5F, 0xDEEC0D4B, 0xFBD731CC, 0x4DDD1F79, 0x885E80FD
+
+output0 =
+0xBAB69B46, 0x9AEEF4CD, 0xF65CEBB3, 0x3A351B07, 0x0B0F251B, 0xEE1A8EB8, 0xE59C8052, 0x0B2299B0,
+0x1D5CB699, 0x3F2682EA, 0x2121F8C5, 0xEFB15235, 0x704B4B26, 0xBA0E8759, 0x7FAF1CBD, 0x74CE4CA8,
+0x219D8D73, 0xABEEDB0D, 0xCAB2D229, 0xDFD73ED4, 0xAC269345, 0x88616ADC, 0x80B0EA9A, 0xD3F12C4F,
+0x4911C9FF, 0xD0F1B94D, 0x9CD97301, 0x3230D51E, 0xD1E31F4A, 0x18574172, 0xB32ED6A3, 0x59E536F0,
+0x39A86503, 0xFF4852A6, 0x95480468, 0x028B215D, 0x4BB4DEBC, 0x77D6C78A, 0xF3C455B6, 0x2113C0D6,
+0x2DB54E47, 0xB5EA54B2, 0x2CC06535, 0x2AB4A838, 0x0EBB9BC7, 0xD675F3F5, 0x7F45F8A7, 0xA8D1024D,
+0xD0513827, 0xCD53C7C6, 0x1184C8F6, 0x3BB7F6BC, 0xFD116C2C, 0xE3103FD0, 0xB0BA389F, 0x3629A9B5,
+0x40A8AA19, 0x3EE17358, 0x02312A15, 0x466ED0EB, 0x371C20BC, 0x54DAB264, 0x81948A54, 0x1FCD3C1F,
+0x1C76C4D7, 0xC8AE824D, 0xDCA04C66, 0x21EFFE40, 0x498DCB6E, 0x1842DCC4, 0x937CFAD6, 0x9220816C,
+0x10399542, 0x6F2B3DE8, 0xCFE0F0F7, 0xC55FED3F, 0xC11B593D, 0x894A3D36, 0x17C6386E, 0xE76799C7,
+0x029BB9A4, 0xC728B6B7, 0x57AB7BAD, 0xE5212EFD, 0x1B7EBC84, 0xE6D31711, 0x8332412C, 0xCCD8670E,
+0xBF2D5294, 0xE42B6C1B, 0x46A0532A, 0xD20E3D01, 0x48B61D21, 0xDCC59F01, 0xB54A5392, 0xE9A27CBD,
+0x475545D4, 0xC6222B28, 0xC6C6BA23, 0x0D624CDC, 0xA6D11E56, 0xCAE973D1, 0x83C3D00D, 0x285473B8,
+0x9D765A6C, 0x65EC16BD, 0xF2BEB004, 0x392E0DC9, 0x5972E43E, 0x74CE67F8, 0x877881C7, 0xC194D498,
+0x7EA32C7A, 0xFA616DFE, 0xB7F54D05, 0x67D5327D, 0xA1B11114, 0x797C36AC, 0xD2C4BAC0, 0xA3FC0A59,
+0x0A41CEA9, 0x72BCB459, 0xA400ACAD, 0xFF5E0DF3, 0x95330499, 0x5C61382F, 0x17DB60A4, 0xEBC08965,
+0x7BDA7D16, 0x9FDB4A48, 0x8E434902, 0xA37A8206, 0xD6FA9D98, 0x9F7524F1, 0x87484FCB, 0x3D29853B,
+0xCFB8B6E2, 0x6E8FB75E, 0xFFD9715D, 0x9BA4FA21, 0xBEE48708, 0x6994B617, 0xB861D7BB, 0x32965DD8,
+0x54AE0642, 0xE5749364, 0xB7AAEA69, 0x7A72625F, 0x561C0FD3, 0x17C4592A, 0x114FB3BA, 0xAAF6B7B2,
+0x883009FE, 0x8CB14452, 0xA8DCEE5F, 0x32490CF4, 0x12F92890, 0x8751DBDE, 0x036192FE, 0x70944BFB,
+0xCC1EA46D, 0x4A65393B, 0x0D1A8E22, 0x6353AA97, 0x93CC0B72, 0xF31E45D6, 0x7DAFBF7F, 0x564BEB7E,
+0x37965B06, 0xA405E685, 0x792A9757, 0x915293AD, 0x4913CB07, 0x75532849, 0xF7B42E2D, 0x28EC5A1A,
+0x803A3EF8, 0x7604FF7A, 0x188D7B23, 0x96A096AD, 0xE0A73048, 0x304173CB, 0xF52D61A4, 0xB9F4185C,
+0xEED3FF8C, 0x6388190C, 0x9AC54AA2, 0xD815A196, 0x5E688497, 0x123468E7, 0xB9665A24, 0x9BBADD97,
+0x7818CD07, 0x3013A569, 0x84621495, 0x35DDD4C3, 0x62B6CC53, 0xE2C90AB9, 0x80BBCA1C, 0xA069C371,
+0x0D030AF8, 0x055ECF7E, 0x680AE291, 0x13E7E136, 0xB57DF5FF, 0x85AD0124, 0xCEEF4C70, 0x6914CE71,
+0x784E3714, 0x4A8A2D63, 0x766254F9, 0x95944892, 0xFE634D11, 0x5B48B728, 0x2D95EEB4, 0xD7AD4549,
+0x3AD6AAE1, 0x01E35C22, 0x0C731A23, 0xD79593AE, 0x2ADEA548, 0xD68CE22F, 0xE245370F, 0xFD69FC84,
+0x01D3CF55, 0xE5BC524B, 0x17EF955B, 0xE596B8CA, 0x02C0DDA1, 0xACC0746A, 0x489AF9D1, 0xB42334B2,
+0x26BF94F2, 0x6D70EC02, 0x003A3F93, 0x007E706C, 0x36C5E0B5, 0xE5AA5CBA, 0xE3427640, 0x977C3A76,
+0x6A7EFED5, 0x879CC5D9, 0x07C9FA95, 0x3B7DDA84, 0x6DC13FD9, 0xA21D2B49, 0x7E741311, 0x63EB6E7D,
+0x40AB1DD5, 0xDC636C0B, 0x340DD1AE, 0x093A3A70, 0x97EA1AC5, 0x26C91F58, 0xD3F0F15A, 0x0B93E22B,
+0xB572CACA, 0x0BD45EA2, 0x4B2A4791, 0x2EBED3E8, 0x2A793B5A, 0xEA64B0A5, 0x254F5BA1, 0x46B3FB9A,
+0xB43C574E, 0xA0A42D9D, 0x9C285D2A, 0x4E188C28, 0x373B1517, 0xBD3C4473, 0x6978640B, 0x61E35E79,
+0xA9EE34BE, 0x0F40E590, 0x8DD6FF99, 0x85CECE24, 0x8F03BAC6, 0xE3356D6E, 0xA0FD2171, 0x667216E9,
+0x527044D3, 0xF2275856, 0xDAB137B0, 0x82179A34, 0x8B16DF35, 0x7951B0A4, 0x52F5D069, 0x7D1472AC,
+0x4C042345, 0x2A0C91B2, 0x7D1839D1, 0xB4222D22, 0x90335963
+
+basegraph=
+1
+
+z_c=
+384
+
+n_cb=
+25344
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+9372
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..bc84e55
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_DL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
new file mode 100644
index 0000000..584f73a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964 + Rv1
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+
+output0 =
+0xDA254450, 0x16BF9F14, 0x31785356, 0x9609316F, 0x14ECACF8, 0x5EAB72E8, 0xCFE9F14C, 0x7BFAF0DD,
+0xD4D21E0F, 0x2CC35B1C, 0x92EA0BCC, 0xD25EEE4D, 0xD8E2A9E7, 0x45B61C0B, 0xAE2F6F76, 0x156B1B29,
+0x8A3E15A1, 0x42B06E0A, 0x4A169C2A, 0x54E05915, 0x08197AE1, 0x8A19FB84, 0x88DBEE9A, 0x7E45B393,
+0xFF24E790, 0x6C49A2D0, 0x98AFE8BA, 0x31A7465F, 0x6298CE77, 0x28F248D4, 0xFF59D780, 0x10E4719C,
+0xDD2DEA4C, 0xC9B7F303, 0x19333FB7, 0xFB28275A, 0x6A4A2572, 0x39885BA5, 0x86B27F69, 0xB16EE7CA,
+0x7A07FAE6, 0x6628D83D, 0xEA04E4F7, 0x30
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+1
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..79294ec
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..c72680b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
new file mode 100644
index 0000000..a1745ed
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x0ED2B9
+
+output0 =
+0x8b0f2944, 0x8769e4b0, 0x717de578, 0xee86fb44, 0x61760e25, 0x59074fe5, 0xe9a1f641, 0xbbde66f6,
+0x6c68c0bd, 0xdf09f545, 0xd68c48b3, 0x354aca5a, 0x83c83bed, 0xeef81254, 0xcf0dbc28, 0x693c50f0,
+0x9a3cd23c, 0x57e97520, 0x929baf90, 0x8e2ba7d8, 0x5ef0fb8a, 0xffe7b153, 0x9e164074, 0x4d06f0a2,
+0x6bc68e5b, 0xb8274587, 0x69641dfc, 0xf5dc89a0, 0x4f8e741c, 0x1cb682da, 0xc59ce914, 0x8354b8ba,
+0xcbc5fd4a, 0x6fbfd1ce, 0x85f0df47, 0xffdbd201, 0x45818a38, 0x048b52d1, 0x1f634faf, 0x5cb128e9,
+0xb6108c54, 0x78466eda, 0x0f6d92a6, 0x0c7b6be7, 0xe0ee748a, 0xc9a2d65f, 0x4dc2540f, 0x1f5d42cd,
+0x68f26f29, 0x57474b8a, 0x8ae2cfbe, 0x08ef2168, 0x271b2ffd, 0x2e7816f4, 0x7b00c40a, 0x3e23bfe5,
+0x2f3ee3f1, 0x86bd9ff1, 0x7a5538e5, 0x6673490f, 0xae6ba80d, 0x058e0be4, 0x14f9b51e, 0x89a1a5ef,
+0x6ff9cd55, 0x8ed590b6, 0x1907175c, 0xb7b42bf0, 0x15a84025, 0xbd33f5fa, 0xb53d53d0, 0x61d6c75a,
+0x9d8a1eda, 0xb3932c8d, 0x7f9ff48c, 0xa8ed2558, 0xa05cf8a7, 0xccdafaf5, 0xbffeee80, 0x4f48eadb,
+0xa62b030c, 0x7bd235fa, 0xa8de22b0, 0xfe31d275, 0xd29e8be0, 0x386beb07, 0xce4d8545, 0xfbc33ee4,
+0x15e5d244, 0xf6fc92ac, 0x5a84f673, 0x64e55f70, 0xfdfdffc2, 0x8726dd47, 0xf3b5a1ae, 0x9d439055,
+0x54e713da, 0xf53a4390, 0x61cf45da, 0x9c357723, 0xed8c4800, 0xfdcbb758, 0x02d86328, 0xf3d4e1f6,
+0x2fc0f911, 0xb8faadb0, 0xf4d65deb, 0x43bbc6ab, 0x7bdad277, 0x6603c0a8, 0x027903c5, 0xdabfa36a,
+0x92c58ae7, 0x6e9211b3, 0x54c48400, 0x7ecddba4, 0x81e4b116, 0x5b407871, 0x3f427c20, 0xf6ddfe52,
+0xf0eba4f5, 0x2975c9d7, 0x376fc393, 0x3b0bead4, 0x89be294a, 0xc7fd591d, 0x43c2455b, 0x9dc322fb,
+0x00ca6a02, 0x35cccdf0, 0x60d8502b, 0x0500b498, 0x35ab1618, 0x73c6ddab, 0xf0df58da, 0x3e904c4b,
+0x133d6b4b, 0xbdad7f42, 0xee7d1e0d, 0x49fe242c, 0x09e120ad, 0x646339df, 0xa0cd9509, 0x92c6c672,
+0xb864089f, 0x22225244, 0x305f8384, 0x9b4166d5, 0x704fa445, 0x9fca2e0d, 0x839c9f87, 0x7ef495a9,
+0x579e0f8c, 0xa47f1a9e, 0x86581a5c, 0xb81b9445, 0x5acc608e, 0xe369e9b3, 0xfeb80ee5, 0x1399ab02,
+0x30a74bea, 0xcf08b948, 0xb0857028, 0xcd4f9d8c, 0x61e46763, 0xbff862f4, 0x096d276c, 0x72152f4f,
+0xe98e2f04, 0x7407c828, 0x85ee9a47, 0xf99cf671, 0xd7d40758, 0x89ee7d21, 0xb8732d5f, 0x4786742e,
+0x58ca1a9e, 0xe6276c4e, 0x18f29bb1, 0x757e3350, 0xa49c393e, 0x112a978d, 0xfecfbfa2, 0xb0894694,
+0x62fdcf29, 0x7ce4fb98, 0x41eaa9ac, 0x4cfdb430, 0xfe1bbc8f, 0x03e390bf, 0x0c4f25cd, 0x53b11485,
+0xa6734572, 0x923d31aa, 0x72ccb4bf, 0x82b541cc, 0x5f6dd559, 0x7ae48be2, 0xb376651c, 0x9c707d4c,
+0xa0fd5e5c, 0xac767a3a, 0x7f8d546f, 0x83d3c07d, 0xa6059a44, 0x03da8242, 0x71112091
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24A_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
new file mode 100644
index 0000000..244bf03
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f,
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
new file mode 100644
index 0000000..ac27918
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
@@ -0,0 +1,786 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f
+
+input1 =
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
new file mode 100644
index 0000000..e8aa63e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x818181e0, 0x8181817f, 0x7f818179, 0x7f81817f, 0x817f7f81, 0x7f819481, 0x7f7f7f81, 0x7f7f7f7f,
+0xbc7f7f7f, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f58, 0x7f81817f, 0x7f7f817f, 0x817f7f94,
+0x7f81817f, 0x747f7f7f, 0x817f7f7f, 0x81817f7f, 0x81ab8181, 0x7f7f8181, 0x7f7f817f, 0x7fa58144,
+0x81817f81, 0x8d817f7f, 0x7f7f7f81, 0x7f827f81, 0x7f7f6581, 0x82817f81, 0x7f817f7f, 0x7f817f81,
+0x817484c0, 0x817d8181, 0x817f817f, 0x7f7f8181, 0xe481817f, 0x81817f7f, 0xc2818d7f, 0x817f2e7e,
+0x7f7f8181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x81818181, 0x7f7f7f7f, 0x8181517f, 0x81817f7f, 0x917f7f81, 0x947f817f, 0x817f8181, 0x7f7f8181,
+0x7fda7f81, 0x7f81817f, 0x94817f81, 0x817f6f7f, 0x7f597f7f, 0x7f7f7f81, 0x817f7f81, 0x7f817f7f,
+0x81817f7f, 0x8181817f, 0x81867f7f, 0x7f817f7f, 0x7f7f7f81, 0xae8b8184, 0x7f818187, 0x7f817f81,
+0x817f8181, 0x7f817f7f, 0x8a7f8181, 0x7f7f7f7f, 0x7f817f91, 0x81817f7f, 0x7f81817f, 0x7f7f8181,
+0x8181817f, 0x816e7f81, 0x81817f7f, 0x818c7f7f, 0x8181817f, 0x8181817f, 0x81927f91, 0x81818181,
+0x81877f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0xa57f8181, 0x7f7f8187, 0x7f818159, 0x7f7f667f, 0x7f818181, 0x81817f89, 0x817f7f81, 0x81817f7f,
+0x81757f85, 0x7f817f7f, 0x70817f7f, 0x536e817f, 0x818a817f, 0x8181818b, 0x7f4f8181, 0x7b817f87,
+0x7f817f7f, 0xed7f5d85, 0x96816e81, 0x7f7f817f, 0x7f7f817f, 0x9f817f7f, 0x8181817f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x69537f8a, 0x7f1d7181, 0x7f7f817f, 0x817f8b81, 0x817f7f81,
+0x7e817f92, 0x4f697f7f, 0x817f9281, 0x818a9581, 0x7f7f8176, 0x817f7f7f, 0x817f817f, 0x6e817f75,
+0x817f677f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
new file mode 100644
index 0000000..a757869
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
@@ -0,0 +1,352 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD5000000, 0x21E8B7C8, 0x5B2F2C4C, 0xB82FC8DD, 0xD6D53ED2, 0xC4E0B4D4, 0x20C8DA1B,
+0x2525D305, 0x3F393034, 0xD52ECB1D, 0x0B3421C2, 0xD0C42E2C, 0xC2303B2C, 0xDF24DC44, 0x38D6ECCE,
+0x1FF54529, 0x2E32132E, 0x26473034, 0x35DE3D10, 0x14B81CED, 0x1AF01B61, 0xBF102523, 0xED35CAE4,
+0xCA412326, 0xDBDDCBD3, 0xDFE700C9, 0x3B21C300, 0xF41F382B, 0xB1493EC6, 0xC941BF22, 0x4FD22F1E,
+0x3CB9C313, 0x263ED626, 0xF3D3343A, 0x34ED4435, 0xB8EDE1C7, 0xE92137DC, 0xB11EBC35, 0x35381DD7,
+0xF143E322, 0x12272EC9, 0xDE4A1D32, 0x31C20C45, 0x3D2F1FC8, 0xCD46303E, 0xDBD6BC2C, 0xF1C8E2E7,
+0x192B2CD2, 0x352B3E2E, 0x463AD92D, 0x4A2A0200, 0xD82AD836, 0xD3CDB81D, 0xC511F339, 0x34E62EC3,
+0xC2DD383B, 0xE329E119, 0x08E4B233, 0xCCCDDC29, 0xD32EC722, 0x3D20C3CA, 0x2EC52110, 0x1AC50B1D,
+0x1F29DFB8, 0x10C33A24, 0x31D94B1F, 0xC338D337, 0xDDC3FFC2, 0xFCAED40A, 0xE6FFDFC6, 0xDFF321D8,
+0xE8192FE9, 0x3FD13BE9, 0xAF3013D9, 0x00BD43D2, 0x35063C19, 0xEDD029D2, 0xBF462B3A, 0xB718F13D,
+0x37C03CC8, 0xB4E9FD1C, 0x48E3D7C5, 0x4230D2C7, 0xD8EC2F25, 0x24D2C9EE, 0xE81D2BF9, 0xECE9F4D5,
+0xE51219F0, 0xE6F534D2, 0x0CCDD24A, 0x38CD173C, 0xE5CD23B9, 0x29E2E233, 0xDDD5A136, 0x13FECE2F,
+0x41DE4323, 0x34DC37CF, 0x22D50526, 0xC5E2CD3E, 0x3F003144, 0x2719DA49, 0xDFACC831, 0xCF11D936,
+0x3DC9C006, 0xB0D8B9C9, 0xD5304536, 0xE7BC0A1E, 0x3EC1491C, 0xF31B162F, 0xC7403F20, 0x3CDE2D37,
+0x262EEDD7, 0xD822433C, 0xE2A72C0A, 0xC43927D8, 0x30B8DCDA, 0xCE16C8BD, 0x1EB72B1E, 0x0C28073C,
+0x35211A11, 0xD0E9D2AC, 0x2832E21C, 0x382BD133, 0x0751DE0A, 0x2DFDB82F, 0xCBE3463A, 0x42D32730,
+0xCCCA32DE, 0xE02C3748, 0x27E3C933, 0x40E0DB15, 0xE025F727, 0x241930D2, 0xD32020DD, 0xD8F2C4B8,
+0x3019EADD, 0xE71C2315, 0xE9E6D5DF, 0xC5CD5126, 0xB41CA746, 0x2FB83CCD, 0x35C6BED8, 0x3331471E,
+0xCC3FBDC3, 0xA8ECCC3A, 0x3526C0CF, 0xD62B39C6, 0x122EA623, 0x20CF2ECA, 0xB2CED000, 0x08C2313B,
+0x3D264ED3, 0x45D4C0F3, 0x36D6C4D7, 0x21D8B505, 0x15DDD3BE, 0x2619D840, 0x3ADAFFD0, 0xCA46DDBE,
+0x15E20E1B, 0xAFC03D27, 0xC409C8DA, 0xB12904C4, 0xAD3F51C9, 0xBB341C56, 0xDCD205E5, 0x281ECDDB,
+0x3FD11FC7, 0xBB49D632, 0xC1BD1CC2, 0xE12ED2C6, 0xDAE04719, 0xDDC54F21, 0x00CF332B, 0xE745DC2E,
+0x51C42D2C, 0xCF5AE21E, 0x0F39D514, 0xD623D246, 0xE2173C2C, 0xD341EF30, 0x291E2929, 0xEE2837BE,
+0x1ECC31C0, 0xD13ADA1E, 0x16CA2DF4, 0x18E636DB, 0x113914E1, 0x3BC2F5CF, 0xDDE01DC3, 0x5225F8D6,
+0xD9CBE9C0, 0x2BEBC7C0, 0x31E1CD29, 0xAC2AD33A, 0xC8CE5831, 0x1E48E62D, 0xF62E37CA, 0xD800B9F0,
+0x3033ED3E, 0xE4BEBFBA, 0xCACA26FC, 0xF133DE3D, 0xEC2CE33F, 0x48BACFA5, 0xC9B7CD46, 0xD4CF1FC1,
+0x4B24C2D8, 0xDAAB3B15, 0xC7F0D93F, 0xE9293C25, 0xC0F0B11F, 0xD7BDCAD2, 0xDD114C1F, 0x27200223,
+0xCD442EC6, 0x2FE9BD19, 0xCDDA27B0, 0xCF322DD8, 0xF7C734E5, 0xDCAFAFDF, 0xDD38CAC5, 0x10CE13D0,
+0x2E1B00E8, 0xE5F444D6, 0x465230CA, 0xD9DCF1CF, 0x35BC2ED4, 0x3CEBCDBD, 0xBA452E2D, 0x07C6C33F,
+0xE3F11B42, 0xC9E136DA, 0x3FCE0135, 0x35D9C7BF, 0x31C732CA, 0x4E33D2BF, 0xDB4B2526, 0xD4BC33C3,
+0x20E1C120, 0x1A301A40, 0xCFCADFBC, 0xEFE357E2, 0xAB3C2ED1, 0x37DB0C3A, 0xE2EDE232, 0x283DEAF5,
+0xCC443B2F, 0x1C365400, 0xD6DFC328, 0x234926B4, 0xC52EC63E, 0x0A38CA47, 0x2EEBD55C, 0xD1DA421F,
+0x462BC4E2, 0x1DEDE743, 0x3BD3EBF5, 0x2B4F422E, 0xE3E80C30, 0x3F3CADC7, 0x2444CA30, 0xC4091AC0,
+0x222DBB15, 0xCC2AFDD6, 0xD4352CCD, 0x03291233, 0xA73EDC22, 0x33D6CAD0, 0x2ED742D9, 0xC117CE2F,
+0x2C1221EF, 0x00C812DC, 0x4CE0CFD6, 0x17F234C3, 0xC9DCB32B, 0xCCCC1BA5, 0x2322D42E, 0xBED82250,
+0xD2CA5031, 0x2EE92411, 0x2F30DCD0, 0xCADA2925, 0xB42529A2, 0xD526E4D6, 0x2F171BC8, 0x322A2837,
+0xD6DD47D4, 0x172D12E7, 0xCCC526CA, 0xDEF43720, 0x28DDB219, 0x025BD0DD, 0x3CD7C7E3, 0xECC42AD4,
+0x342B34E7, 0xE329C1E5, 0xE700EB32, 0xD1ECAE41, 0x2ADACA0B, 0x1CC215E3, 0x29D5CF28, 0xD719D642,
+0xF9DAD2D2, 0xD3E4EA4E, 0xE03B1BC5, 0xEF31D23B, 0xE22B23F9, 0x2FD43443, 0xA9E228F8, 0x283C2EC0,
+0xED2A11C7, 0xECF1BE2B, 0xE3C5390D, 0x2D43EBD8, 0xE0222A44, 0x34D1D9DB, 0xBD1FCDCF, 0x28101F2B,
+0xC42BC3CF, 0x19DBEAC1, 0x47D72F45, 0xB5174435, 0xD4CCEB24, 0xE356E022, 0x38B333BB, 0x3BC73927,
+0xDFE3C627, 0xECC720CF, 0x1BE122FC, 0xFAC539C8, 0xD934D60E, 0xFF3BB81E, 0x32F7E51D, 0xF3FEEA40,
+0xD523F02A, 0xCACAD52C, 0xEB4330BB, 0x372B0FBE, 0xDD11353E, 0x1E24D0D8, 0xD83CCBD6, 0xCAD63818,
+0x120D2ACC, 0xCCA7C93F, 0xC53310B6, 0xFE222AC6, 0x3D26C300, 0x20C72923, 0xD06724CF, 0x34D8CE24,
+0x42AE08C9, 0x3C3DDDD7, 0xF2363225, 0x32CC3332, 0x2213CCC0, 0x27D0E22D, 0xD9D22517, 0x41B5D21A,
+0x3BFD1CDA, 0xD1D8CAC7, 0xD51CD8C2, 0xCE42D334, 0x3FC3E60D, 0xD63BD519, 0xC320CD2E, 0x35BDC63B,
+0xC21BE5D5, 0xCD324024, 0xD9C43FCE, 0x5CC2C1D5, 0x00E03011, 0xD923D9D3, 0xEEB92931, 0x24E536DC,
+0xCAB72344, 0x1E21B8DD, 0xD1D210BB, 0x2ED3EF2F, 0x3BE7DF27, 0xD5DDECCD, 0xCFE7D32D, 0x3CCE4F27,
+0xC512C9D5, 0x1B36F9CD, 0x1EE6C1D5, 0x402EB534, 0x1F1A2621, 0x482F35E7, 0x3B303031, 0xD8DC1EB6,
+0xCCC23338, 0xD92E14D8, 0xE818B353, 0xB2FAE6CC, 0x41D9382F, 0xCB00E0D2, 0xFF002A3E, 0xB9CAC8B5,
+0xA9F53F2B, 0xC7D6C336, 0x2641243B, 0xDC3D1038, 0xB8C2C6CE, 0x3637201D, 0xD03D2F25, 0x33B92EE7,
+0x2DD6CE2F, 0xDD56D31F, 0x29BB3F15, 0xE449CA35, 0x1CCBECD5, 0xC2C2CBC4, 0xE2412244, 0x30B6D42F,
+0x673B341F, 0x2321CF50, 0xC7C7EDC0, 0xC9F63F26, 0xD6D12C14, 0x2BDD30DA, 0x38C000D5, 0x17DA48CC,
+0xC2E2B83E, 0xD73ED9C1, 0xE131C12C, 0xC2FFBF31, 0x27D4DC39, 0x4828341C, 0xCCD5CD3E, 0xD4EEA83F,
+0xC446C5BE, 0x2E1C33C7, 0xEDCFC616, 0x2008DD37, 0x453CC9BE, 0x3538D42D, 0xCB3ACAE1, 0xC7D621C3,
+0xD0E5B6D2, 0x40461624, 0xE420D3C3, 0xC71D39F5, 0x2031D7F9, 0xAFF0D352, 0x3EB8B707, 0xD22D3000,
+0x33E02A28, 0x4026D2B6, 0xCED02235, 0xC3E1CD37, 0xDC3FCB3A, 0x31B3CFDC, 0x212DC7B5, 0xDFB236DD,
+0xBDE2C9EE, 0x2434312F, 0x372F359B, 0xE1AC3532, 0x3311EBBF, 0xB744CCD7, 0x2FC3BD6C, 0xC50537CB,
+0x1DBD2721, 0xA9C82DE8, 0x28CAC0CC, 0x5116211D, 0x3E331439, 0xDCDB10E8, 0x31CAD4B7, 0x00D5B32C,
+0x2BCAAFD9, 0xF54CCBCD, 0xE22BF32C, 0xE9D3354E, 0xC31444C9, 0xCB2F322F, 0xDD36CAEB, 0x1D2627D2,
+0x3DC022E3, 0xDEC3C9DD, 0x431B39D0, 0xF30A373D, 0x15C9F1E8, 0x2AD4D84B, 0x36504241, 0x36C203CB,
+0xCB15E43E, 0xDFF4C8C9, 0x17DD22D7, 0xBC2547CA, 0x24CB26D9, 0x3DE9D021, 0x39A921F0, 0xE0DC14E6,
+0xC500B423, 0x0CC318E5, 0x24DABDC0, 0x49B12C37, 0x20F2D523, 0x2F6924B9, 0x271935BA, 0xE3D6B1E2,
+0xFDC3E606, 0xC3E10A5C, 0xCC50C136, 0x25C4323E, 0x383BE3CF, 0x39E8D1C7, 0xD9342B2F, 0x9EED4137,
+0x2C2B1325, 0x31B5CAB0, 0xD1D6472D, 0xD924DC3C, 0x418EE537, 0x1B140B46, 0xBCDB1806, 0xD7C4B8CC,
+0x37EDCB1F, 0x28C0E1E6, 0xE124413D, 0x29D52CC8, 0xD7BDDF14, 0xB7D020FF, 0xD2DAE61C, 0x3F2D26DB,
+0xCEDB0ECF, 0xDA46EAEA, 0x26E31F2A, 0x0DDADD2C, 0xDFCDDE2F, 0x44BC2F30, 0x3C3CE9DC, 0x24B6DFC3,
+0xDFDA3729, 0x33EBF92C, 0xE620E3E2, 0x10A822E1, 0x28D12CD5, 0xC83ADFC9, 0xB746E025, 0xC23A3128,
+0xCA2AD4E4, 0x202CD518, 0xD51DCD00, 0xE8C517D9, 0xCFBFE2CD, 0xCCDD39DE, 0x1AC9C0E1, 0x18152622,
+0xF5283AB4, 0x223F33E2, 0xE72B1608, 0xD0CF27D7, 0x2D32BC29, 0x28C4CAD8, 0x303130D8, 0x3F15C2E2,
+0xBBE6303B, 0x25CC2EF5, 0x19D62458, 0xEDD21331, 0xCAE5D442, 0xE2C9322D, 0xCC3137CD, 0x2EA6D820,
+0x54C213CF, 0xDAD4DAC5, 0x0015E2F1, 0x2F453615, 0x4ECF1B3D, 0x1AC9CC3C, 0xD1D7AE26, 0xC72EF8C9,
+0x2CCB3C29, 0xCAD0D82C, 0x06533040, 0xB64DD6D5, 0xDC49E628, 0x44E2CCC3, 0xC940CF26, 0x372EE24D,
+0xBBE02948, 0x2A37CA35, 0xEA38E82A, 0x1BC9D0C6, 0xC4422BCC, 0x24C63E2E, 0xE3C3C22A, 0xDADD055F,
+0x3B39C61A, 0x13EFB4C3, 0xCECD3AD6, 0xD0002B22, 0x291A43D1, 0x12D5BCAF, 0x47E8272C, 0x23D21741,
+0x3E332E32, 0x3023ADB6, 0xD7D8D12D, 0xBA164DCB, 0xCCD4DBB5, 0x04232D2D, 0x4CC332BE, 0xD33FB819,
+0x31D02BDE, 0xC8163418, 0x402829CD, 0x373D1D26, 0xCB3439CB, 0xC129CF21, 0xC42E323E, 0x16C74614,
+0xCDD0DD3A, 0xF0C9D5F7, 0x21D938B9, 0x36C52327, 0xD3AA00C8, 0xCE26DD29, 0xD74DE03C, 0xC32BBB25,
+0xDEBB25CD, 0x4A483843, 0x2A35BFD9, 0x3B1940C8, 0xCBC71C2E, 0x47DF1DBE, 0x4437FA22, 0x36CDC148,
+0xC7D3D8E7, 0x33C6AF39, 0xD61DCCD1, 0x4C3D12EB, 0x20C5C5DA, 0x351A2C23, 0x36EB1A17, 0x3134C42F,
+0xF9B2E72F, 0xC64837DF, 0x464438CF, 0x1214D6D8, 0x10EA2F22, 0x9EB95900, 0x1B21C1E0, 0xCBD22E34,
+0x3137C536, 0x27B900EB, 0xDAC60E17, 0xC6BAC5CC, 0xE5D21DE2, 0x2ADDD132, 0x311342DA, 0xBFC4AC3E,
+0x0BD62C3E, 0xDF49CDDE, 0xE021E247, 0xCC2111C4, 0xD72DCD2B, 0xC4BABDBA, 0xE0C8082E, 0x171E30D5,
+0x1E44BD23, 0xB2D824E0, 0xE5D5CA1B, 0x1B26B917, 0x31EB173C, 0x001CEF39, 0x36C63F34, 0xD4EB14D9,
+0xC4251BBC, 0xBF3FB720, 0x3F4DEC00, 0xC6203232, 0xF741D825, 0x1BC31ED8, 0xBE30BF29, 0x2B2C21B7,
+0x2BC8B2D6, 0x1A3AE0DE, 0x3031253D, 0xF10929A3, 0x222EE535, 0xBE1521D6, 0x3734C4EC, 0x262A46EC,
+0x3B4211CF, 0xB429F148, 0xE03E342B, 0x24D2C612, 0x412D2233, 0xAF3BE02D, 0x2F00FA33, 0xCFC2D3C9,
+0x154AB434, 0xE2CEC811, 0xDF37CE34, 0xBF1B43AB, 0x49353E28, 0x3F330B1E, 0x33CC48E7, 0xA7D2DC58,
+0xCBD24C0A, 0xEC1038D8, 0x172DBFD9, 0x4DD51F56, 0xD14930C9, 0x1ECECDDE, 0x113E3649, 0x2D29BB20,
+0xCAD4D519, 0xC2CDD82F, 0xAA0E3BC3, 0xB42220C3, 0x3036F5B5, 0x2A12CB33, 0xD9FE2840, 0x3D2E13BB,
+0xD6BE30C2, 0x2C352ACB, 0xD9282D47, 0xDFDE40D8, 0xACDCDDCF, 0x13EB27CE, 0x45CBCBFA, 0xDF2D322B,
+0xEABC3C44, 0x04C6D9D6, 0x18CB1415, 0xCDDD1F52, 0xC0C7DE3C, 0x19393AD8, 0x39DF28B5, 0xC2DBFBDD,
+0x4E152DE9, 0x312D25D4, 0xECD1DF49, 0xC7C2DDC5, 0x1B3A2A3E, 0xD51FE8C6, 0xD827DDC9, 0xE0C934C7,
+0xBBD10000, 0xDAC6D9D2, 0xF92D1E42, 0x1E65CE2E, 0x3EE8C7F4, 0xD1D3DCC2, 0x17CA3BE0, 0x332A323E,
+0xD7362F0D, 0xE333CBCA, 0x24C750CD, 0xE22E2638, 0xD0BDCBCE, 0x18E12CD3, 0x442DD5BB, 0x362C33F1,
+0x3E152DBD, 0xD2D7E3DF, 0xD8354028, 0x35E533A8, 0xDC123432, 0xEBCE2326, 0xD035D2D0, 0xF4CA28C6,
+0x2BDD42D9, 0x23D82E1F, 0xBC3ACB33, 0xD43902CD, 0x1A293643, 0xB0B9020D, 0x37BECB29, 0x20423725,
+0xC6DC1635, 0xDD2116C7, 0x5612C503, 0x3843D9CE, 0xCD20DA2F, 0xE6D2C5E2, 0x33EB3E30, 0x391C183A,
+0xEECCD2D9, 0x50D0F3E9, 0x3428122A, 0x1D272C3E, 0x1DD0232A, 0xD3E340CB, 0xEA2AD333, 0xEE2422D6,
+0x25B624CC, 0x0000E237, 0xD4E3A330, 0x2C48F4E0, 0xD2B6D6C8, 0x2E2328C0, 0xBDBFE127, 0x3FE21830,
+0xB6360B23, 0xE2CECAE7, 0xDB26CACB, 0xF610C63D, 0xB9B7373D, 0x3DD2DC2D, 0xCC2E27BE, 0xE9EB30E5,
+0x4E3B4EDB, 0xD221E9F0, 0x40EABE42, 0xCAD019D8, 0xCFED3E3F, 0x233F37E0, 0x21BBBA29, 0x2BC205CE,
+0x220F4126, 0x1F33DCCA, 0x42C9FA44, 0x08D13533, 0xCE261FD2, 0x18F21A24, 0xBF39C732, 0x49362925,
+0x31C5EDDE, 0x1DCD12C8, 0x1EBECA2B, 0xDE4FC423, 0x2D24D73B, 0xE3CD2E29, 0x2F1D2114, 0x4D3ED124,
+0xDE264432, 0x3E1A4AC7, 0x1AE4D7E3, 0xCBB714D5, 0xE8C930D4, 0xDD4130DB, 0x3FF71706, 0xD21E380C,
+0xCF2821E7, 0xC4DCD6DC, 0xD4D12FD5, 0x0E2B0000, 0xB731D9E0, 0xD32E3CE0, 0x3F12D60F, 0x3ACC29C6,
+0x3F252128, 0xE3CD5139, 0x3033F445, 0xCFC424E3, 0xE824C624, 0xD641D523, 0x23DAD636, 0xD529F73D,
+0xCF524AB1, 0xC846CFD0, 0x3124EACA, 0xE2DED6E8, 0xE52DE303, 0xE61D33E1, 0x3AD8F00F, 0x24E4E32E,
+0x1BC81AD4, 0xCC1018E0, 0x24C4E826, 0xE033D93E, 0x09DADFE0, 0xDDCBD8CB, 0xD1D13ACF, 0xB816D348,
+0x30E0CAE9, 0x4EDF37A9, 0x0B0FCE1F, 0x49D1E3CD, 0xEF24DAFF, 0x34223BCA, 0xC9CBC641, 0xC1E3B3E5,
+0xCDEF2C3E, 0x3427DCD1, 0x532FDDD6, 0xB8F0F425, 0xDEE7C9C9, 0xC3DBD3C9, 0x26EB281F, 0x1310E0B8,
+0xC032EA30, 0x162A2E2C, 0x0DC7C131, 0x1AD81240, 0x0000E313, 0xDD1CF2DD, 0xDF2FC7EB, 0xD926C532,
+0xD2C31E0C, 0x3021CAC7, 0x3D3531D8, 0xCFCA272C, 0xAF17CFD0, 0x2EC91E4E, 0x483EC3D2, 0x26D1BE1B,
+0x01C832FF, 0xF8DB2BD5, 0x16272CD7, 0xCB3F46F9, 0xD6A43316, 0x1BCCF4E3, 0xC6D42546, 0xD7453106,
+0x11C336AC, 0x30F6B221, 0x34481FD0, 0xDC4CD91D, 0x4E40CE22, 0x3D26C421, 0x21EECCCD, 0xBD3219CC,
+0xEC25E136, 0xF6C7E4C4, 0xFF37E71C, 0x1827EACC, 0x190B3AB7, 0xD12F2ECA, 0x3E26DE25, 0xD1DA1C28,
+0xD4D7BDBC, 0xBB1D23E8, 0x2BAD1624, 0xE4CCDB33, 0x1A3AC8D6, 0x2E2F37D3, 0xCBCF3253, 0xE92F2E28,
+0x2E2E4FD8, 0xDB1A35D7, 0x2DF01EBB, 0x4AE9C6D4, 0xD007E02C, 0x1444C6D5, 0x2E0C0000, 0xC4DBEDAE,
+0x2FCEBFEA, 0x2C3B40BA, 0x142F47BC, 0x1CF00BD6, 0xE0DC27C4, 0xDDE239D5, 0xF9B5DF3A, 0xB5C82FC8,
+0xE0D93618, 0xD8E941CB, 0xDF27E3D2, 0x3CF4D533, 0x31CAE4D7, 0x24E8C738, 0xDA29D1D8, 0xF4ED30CB,
+0xC41C4434, 0xEC35D1D3, 0x231756D0, 0xE9C2272A, 0xD137CAE6, 0xCEBC2836, 0xD3E1D1DD, 0xABCF0B3B,
+0x41CC23B1, 0xD63B4C32, 0x171BDFC6, 0x4FD5CFEA, 0x2E4E50D9, 0xDEECB2DD, 0x233FE437, 0xB01B32D0,
+0x22252EF6, 0xCD2B1C3B, 0x28CDCE3E, 0xC5D82D2A, 0x33C7AA9C, 0xE3E8CE26, 0x591EDF30, 0x21C21ED5,
+0x2A34E8C5, 0xD22A24C1, 0xE0402F3E, 0xCFC0FBCA, 0x33164123, 0x203E3C1A, 0x3CBECCBD, 0x0000D237,
+0xD61ECBCF, 0x1DDFE3F7, 0xDAFC2A29, 0xCA2F2B0F, 0xAEACD72C, 0x3017D4BF, 0xC74F1EB4, 0x2E3FCB3C,
+0xD927BC18, 0xC43922D5, 0xDDEB13C4, 0xA32437B9, 0xEFE81FF9, 0xBAE82C0D, 0xC7E6C9DD, 0xB921D0AE,
+0x39D1E5D5, 0x2E361F3B, 0x2043C9D3, 0xC2011AD6, 0xB3133928, 0x31BCC938, 0xD2D7B6C4, 0x25C04D1C,
+0xC729CEC3, 0x22383E2E, 0x2EDF3323, 0xDBC4DDCC, 0xDFDFD551, 0xE531CA1F, 0xCAD1DFE9, 0x3EBACB2A,
+0x38CF3BDA, 0xDEEC142A, 0x0CDFDA28, 0x071ABBD2, 0x422557D2, 0x1D334039, 0xC5331AB2, 0x21E1D4C6,
+0xB630392A, 0xB6D8C0F2, 0x322E2548, 0xD8C7C3C1, 0xC2E4C6EE, 0xE6E8D3D3, 0xE019314C, 0xE9CC51E4,
+0xBD2EE4C2, 0xDFCC0000, 0xD9EEC634, 0xC137BECB, 0x263C3ADC, 0x11CB4ED2, 0xBB302CA8, 0x3347262A,
+0x2732ED40, 0x3126D9DB, 0xBE391CC2, 0x2B14B7E9, 0x19DBDBC1, 0x23D22EBF, 0xCD23C2BF, 0xB13D392A,
+0x4825ECD8, 0xB620E4F9, 0x373E38CA, 0xBE2FC3D7, 0x3AC1D32A, 0xCF26452F, 0x3B01D1CA, 0x44DA41BC,
+0xBE2EDDF4, 0x4ADECBD7, 0x08D9223E, 0x3BDCDCDF, 0xBDC336D6, 0xC8D7C237, 0x2ABED6C3, 0xEF38AF11,
+0xD5EDD5C9, 0x333A3D29, 0xEAD4DABE, 0x01F2BBDA, 0x3FD8CCEE, 0x3BDBBDBB, 0xC535E822, 0xD5E031C7,
+0xCD1E31CE, 0x30C04919, 0xC8D33AD3, 0xC71F3639, 0xCB2D2910, 0xC442B5BC, 0xC24110A5, 0x2430DD27,
+0xEE3D12DD, 0x2AE45124, 0xD4CA4C3B, 0x2ACC31D6, 0x3941E4BA, 0x39DAF13C, 0xAA98D351, 0xB1DDC0BD,
+0xDED4CBD2, 0x4C2DDBB5, 0xDACFF1DC, 0xDB24DC4F, 0xD3E3E033, 0x1CBF3DBC, 0xB8BB1C16, 0x293E26B5,
+0x223A2A34, 0x2AC5CE13, 0xD7C84002, 0xBF33C0B3, 0xE815D02B, 0xD7CF2DD8, 0xF20DC0CA, 0x3725CCDD,
+0x44C4E4B8, 0x2AC918B4, 0xD7EC4025, 0xD1C53EC6, 0xC0DADFC2, 0xE8C0DD45, 0xD3344C19, 0xDEC741E6,
+0x05302D55, 0xC128D64B, 0x2CB7E53B, 0xDC02E1BC, 0xFDC74612, 0x1F4B1521, 0x3CE9E219, 0x07C633D2,
+0x2836D0B1, 0x27E6D0D7, 0xDDDC3027, 0xEA3A2F16, 0xD226313A, 0xDCDD19E0, 0xCC5CD1DA, 0x412B2FDE,
+0x0E30C7C6, 0xD755DAEF, 0xC62DC85A, 0x40213CD1, 0x42CC0000, 0xE43230C4, 0xC43D22D7, 0x36CB31C2,
+0x3B2E2429, 0xD9D73DC0, 0x43DFD2E5, 0x41B9E2CA, 0x12C7E32D, 0xC6DE9BDF, 0xCBC136E5, 0x24262DE8,
+0x2D1AB81B, 0x0B31BDD9, 0x3EBA1A39, 0x0D322ABA, 0xCCD9B31C, 0xDBD1DE54, 0xDBE3F33E, 0xD3BD38E5,
+0x28272330, 0xCFDCC3E2, 0x153DB3C0, 0x2E2227C9, 0xF5CDCBCD, 0x2338C0B8, 0x2C30C92E, 0x2B4AEA32,
+0xE4E5BA42, 0x45C2F21B, 0xEFFD2D04, 0x3FF63A44, 0xED3DD7DA, 0x2BE4262B, 0x0D3AE8D9, 0xDAEDF922,
+0x263F4E45, 0x1DD0D5F2, 0x4039D7EA, 0x3DDFE309, 0xD021CD37, 0xEA4FC829, 0xDADDC4B0, 0x26E6E2D5,
+0xABDAC00C, 0xDF3945E4, 0x32E6223F, 0xD5D709DE, 0xEC3BECBD, 0x0000DDA5, 0xCB49E8C8, 0xD0F72E2E,
+0x2DE4451C, 0xCB35C4E1, 0xC929D024, 0xE0A839DA, 0x2018BE30, 0xD51E252D, 0x1DE218BB, 0xD4EF9DC5,
+0xC1D6CF15, 0xC6EC202F, 0xDEE0243A, 0xD0CB2437, 0xDB4137C8, 0x1FCCD0CB, 0x494BDCE4, 0x21DDEC3E,
+0x32BFC82D, 0xE312CCD4, 0x24E9E03A, 0x2A25D026, 0x4238E8B8, 0xC53CD824, 0x35CC2CD3, 0x30360D33,
+0x31441C1F, 0x3BC2BB37, 0xBEBFD8B1, 0xBED4432D, 0x15DF3817, 0x0F552C4C, 0x2C3229CF, 0x093131DE,
+0xEADAD0CA, 0x20DB1DE4, 0x36CA19D7, 0x452EC9E3, 0xFAC8F1DB, 0x2FD72035, 0x3ED2E34D, 0x2924363D,
+0xC038C2E9, 0x3AD83425, 0x12D730D9, 0x272326B8, 0xC51F36DE, 0xE8E92A3C, 0x31EACEDB, 0xCB190000,
+0x2C3D1DE1, 0x000029D7, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x6D6C0FC7, 0x695E19CA, 0x7EB05A2B, 0x097E1C19, 0xF638B020, 0x434867BF, 0xB2F7A7F9, 0xD5E4675F,
+0x1484C629, 0x6D2398C9, 0x2E9D9825, 0xF77207AB, 0x2298BE4E, 0x9F0348E7, 0x63F5E6D9, 0xFCED9D5F,
+0xC3156E03, 0x3DDED87F, 0x82A04AD8, 0x46830814, 0x0ABC6AF6, 0x8460B3FA, 0xA125DB70, 0xFD2E5A73,
+0xCCA0D482, 0xD24F74B2, 0xA165BF2D, 0x7AEB7769, 0xD2E8E792, 0x8074937C, 0x304C10C8, 0x04D042E6,
+0x6F6FB346, 0x3F0DF322, 0xC33CCB51, 0x945F718B, 0xDFFAED2E, 0xC6256C5D, 0xEC4EC0B3, 0x6D158698,
+0xFAF192F1, 0x1C1B11DE, 0x1E0516AC, 0xA3EA4F89, 0xB3160AED, 0xB8F5B07F, 0x83DA2542, 0xED25300F,
+0xE72E3F2A, 0x4D65C154, 0x4A4A5AB2, 0x8750C7C7, 0x9186FAF5, 0x40340A94, 0xC5051EB6, 0x9D817A5E,
+0x20FA4764, 0x9B9785E9, 0xAB3A74A7, 0x24780C31, 0x72E2728C, 0x4281C451, 0xC58214EE, 0x17A374BA,
+0xB32FB444, 0x5CEB53DF, 0xA4F9F01A, 0xE040A0D2, 0x5C8387C6, 0xC402D081, 0xEE12B765, 0x66DBDE72,
+0x57768125, 0xA622CA43, 0xE27FC00D, 0x813CCAE8, 0x6250F3BE, 0xBA33C25D, 0x066FA4BB, 0x5D45B957,
+0x693C22DC, 0x2F92B6BA, 0xED8195FF, 0x1A8FA7A2, 0xAA901FC3, 0x5D3D3B01, 0xF9B29B46, 0x264EC79D,
+0x626D3F38, 0x026FC327, 0xC3F162F6, 0x0764E575, 0x64434EDD, 0xB4005E0F, 0xC0C5887B, 0xFC61AFB1,
+0x051E5849, 0x7256EF9E
+
+e =
+4914
+
+k =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..f765d99
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
@@ -0,0 +1,1034 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x21000000, 0x2b3bd538, 0xb93735b8, 0xc7df202c, 0xdb3827e4, 0x24403757, 0xbb23e931, 0x4dc9d04b,
+0x33e84c40, 0xe7dac343, 0xc33ad6fe, 0x0937db31, 0xc1f1e52f, 0xca46d5da, 0xd1b8fcf8, 0xc552c5e4,
+0xffcbddc1, 0x34c414db, 0xcf233f19, 0x1a23d12b, 0xc01539e6, 0x1c2a3654, 0xb9fb1fdb, 0xce2e3d5a,
+0xd64d38cf, 0x4331dd33, 0x1fd1b830, 0x272ac0af, 0x2ec74548, 0x39edde48, 0xdce0e533, 0x162a281a,
+0xb026112f, 0xcee2ec3d, 0xccdad2d5, 0x1c252f15, 0xf4cec5c9, 0xf7d8dec4, 0x343a39f2, 0xbe37130a,
+0xd2d0df43, 0x09202c38, 0xde253c1d, 0x352c2f19, 0xd2e03824, 0x0f430bd3, 0x3ff526bb, 0xcac0483d,
+0x00c8cac9, 0xecd7e347, 0xce280821, 0x27561f27, 0x413c34ae, 0xdde745b6, 0x4030d24e, 0xe115e1cf,
+0xddd54dd7, 0xd147c5ce, 0xd01a2746, 0xd6c12942, 0xc92642af, 0xee28b81a, 0x37222933, 0xe4e121f8,
+0xd8c2211e, 0x43cac91b, 0xdacfc2d3, 0x3acfcbc6, 0xebbecbcd, 0x1c1af2c5, 0x39c0de3a, 0x3237e446,
+0x3d3e3f13, 0x24393bcc, 0xd13c19bc, 0x1dcd53d3, 0xaf14bcc6, 0xc13a3f22, 0xe2c1e6c7, 0xd118c932,
+0xb2152926, 0x1e21ce29, 0xcf2ac6d8, 0xc8232b0b, 0xba22d6d5, 0x25e2e6be, 0x35dcc72e, 0x3adddcc7,
+0x34c422f2, 0xb023bcc7, 0xcd13df34, 0x43c2262f, 0x1b0ccdc9, 0xcd2b1022, 0x25d8323e, 0xd5d9441f,
+0xeb29393a, 0xd2c5ed00, 0xcf13a7cc, 0x10c539e9, 0xf83a3d31, 0xd5d5e3d6, 0xd4dd2cd5, 0xc8cb0cbe,
+0x1c1418c9, 0x35c5112d, 0x2028ebce, 0xd93ac6ca, 0x4042ced9, 0xd7d232bb, 0xccccf528, 0xd522d3b9,
+0x15242128, 0xbf51d1d9, 0x22103826, 0x3a0325b7, 0xcf3ae830, 0x394510c1, 0xe0334744, 0xebf12b2c,
+0x57bb0fa8, 0xcb0f303d, 0xe5f3062e, 0xdf323a0b, 0x1d34bed2, 0x2a1be5b6, 0xc53bcbd9, 0xb04f2fc7,
+0xe736bf1f, 0x0fe9b6ce, 0x37222b25, 0xaae9ce1b, 0xb62fe0e8, 0xc13adc2d, 0xd23c2740, 0xa93de410,
+0x2eafdc3b, 0x2454f134, 0x23d63f45, 0xb1edbf0b, 0x44e83847, 0xcc40e231, 0x05d133c0, 0x08bccf24,
+0xcf49dece, 0xf12c0023, 0x19c8d6d9, 0xd8d03644, 0x4748c0cd, 0x20d03322, 0x1ce62bdb, 0xd02e1ad9,
+0x46391416, 0x30e9ea35, 0xd63ec7cc, 0x3fc9d4cc, 0x41e1c3bb, 0x1920ba18, 0x2d2d1317, 0x2a1bde1f,
+0x1fe1d4c7, 0xc638b2da, 0x2adce33d, 0xb6c6dec7, 0x9fdec6c6, 0x1f3d1add, 0x46192041, 0x38e44c34,
+0x2d2323e3, 0xc9e83ed4, 0xc1cfaac7, 0xc70fc918, 0x2b2bc3ef, 0x21c133d4, 0xc5f10a34, 0xbdc51620,
+0x3bc4383f, 0x3d2fd731, 0x3429caae, 0xd4c5e4cf, 0xd41f451d, 0x2a2837c5, 0x46e1d6d6, 0xd0cb2f2a,
+0xf616d434, 0xbe13293a, 0xcefac92d, 0xc1badc29, 0x1c2b1e37, 0xbd173ac9, 0x3332bfc8, 0xd3cf49d7,
+0xc7e9d0e1, 0xd60037f8, 0x32cf332b, 0xd8412ebd, 0xd9da3fca, 0x2220bb12, 0xc1e316d1, 0x2f4dc224,
+0x3840dc1d, 0x202adb3f, 0x36cdbfc2, 0x23c5d5e3, 0xbb41c025, 0xddcbae17, 0xdbd9c2c2, 0x462d1045,
+0xc3ccd03f, 0x2232312b, 0xcc25d2d4, 0xc90bcdd8, 0xc6d6dc48, 0xd95f28c3, 0xe02a26f1, 0xe125ded9,
+0xd9c049ee, 0x33283431, 0xd23c2dbe, 0xd4d826c9, 0xdb14f123, 0x3fcb3e4a, 0x3fc7c4cb, 0x2fede31c,
+0x372cd243, 0xb7c608e4, 0x33cd371a, 0xd84632b2, 0x3239c2c3, 0xd525f2d8, 0x17b724d9, 0x3f3729d6,
+0x39e3e125, 0x21db42bd, 0x1cb6bb3a, 0x38303a26, 0x3632e32f, 0x2e28ccbd, 0x321bcdd3, 0xca1cbab3,
+0xd636e535, 0x403d2d31, 0x2c262b49, 0xe0d25442, 0xc230e5f3, 0x292523ca, 0x260fe3dc, 0xc81420fa,
+0x0b2541fb, 0xddd95bd9, 0x3e3a48de, 0x212128c2, 0x44e02e30, 0x47d2d83d, 0xc92149c8, 0xd520cad6,
+0x3cc467ea, 0x3f31ebde, 0xe12bd8c1, 0xd8cb2dc4, 0xa6461a2d, 0x16be0dcb, 0x35d82bba, 0xce3653de,
+0xc7db1d20, 0x30b817c0, 0x2746e3c8, 0xdb12302f, 0xd0b93824, 0xdbd0d455, 0xd4d63b1f, 0x2fd0cb3a,
+0x3e26dfea, 0xe0521ec6, 0x3ddac146, 0xdd2b29c9, 0x3f0938d0, 0x3fc713c7, 0x261b21d9, 0xbfc8d3c2,
+0x35de3d34, 0x03fb0fbb, 0xd24bd619, 0xd0283634, 0xdd3add4f, 0x38dce12c, 0x5cd149b0, 0x3e51263d,
+0xb7e2d5cc, 0xca3222e1, 0x222b4f00, 0x46cf1837, 0x333021c6, 0xc33b331a, 0x303724d5, 0x2c4cbbdd,
+0x29e4d615, 0x58c7cc42, 0x3d44dd4a, 0xd010d4bf, 0x26291fd9, 0xb930f3b0, 0xce30ea39, 0x1bd74df1,
+0x23d82bd4, 0xcd25504b, 0xcfcae618, 0x3b351d3e, 0xba37c7d5, 0x33bcd7d0, 0xb4293adb, 0xd71dc6e7,
+0xe1222636, 0xcfee25b7, 0xadc44668, 0x26d332db, 0xce2c1440, 0xc5acbf1a, 0xb6d4d7df, 0x303c26cb,
+0xbd55d341, 0xd3cef3e0, 0xbb44a629, 0x2a36bba1, 0x0d37c70b, 0xd1e734d0, 0xc8cd33db, 0x273d4534,
+0xc5e33d0c, 0x323c21f3, 0x37c5c137, 0xd624c207, 0xeac5c828, 0x1618e022, 0xc332dccb, 0x133ccf40,
+0xb6d7b5ca, 0x275ccd30, 0xc0f40061, 0xc2dede26, 0x22d61ad2, 0xe224c231, 0x2334e63e, 0x13c7e2e0,
+0x33dbcddf, 0x3941b31b, 0x4924cc27, 0x3bd0ed2b, 0xddd91bc2, 0x402c2a17, 0x31373e49, 0xc4e433c9,
+0xde0a3e33, 0x48bcbec7, 0xb3de19de, 0x4c561f3a, 0xc8d9d020, 0xdc3128fb, 0x2e25d437, 0xe62833da,
+0x4fdbd815, 0xe734c0ea, 0x142c22e4, 0x4e37c5ee, 0xe9d7d042, 0xd9d4c623, 0xa4f929d8, 0x2a1f2e3c,
+0x65433a47, 0xc9d8ca3d, 0xf01cd531, 0x4dcbbc22, 0xc5d4e1f3, 0xd33f34c2, 0xc60d1f2f, 0xe1ba2312,
+0xefead314, 0xebbef445, 0xd2d32426, 0x1a41dd2d, 0xd4e3cdc9, 0xefcfd2dc, 0x25cc292e, 0xc3ecd0ca,
+0xf4cc2d28, 0x4de2c525, 0x3100334a, 0x3e12daee, 0xdfef340b, 0xc74938e4, 0xb228d1d3, 0x1348413e,
+0x1529c8f0, 0x482b2cc7, 0x04d8bf1e, 0x3e3bd637, 0xdae0cb50, 0x3334e20f, 0xd4c5e035, 0x52d33734,
+0xed3b2fcc, 0x30e62321, 0xd02633ed, 0x19d5e3de, 0x3821c3c5, 0xd309c7e4, 0xc3e430d7, 0xcb2b22d4,
+0xc6341bd6, 0xd5282638, 0xde2a2a1e, 0x3b3ce023, 0xdd48bdb8, 0x32272ada, 0xd84ae4df, 0xca2d48d0,
+0xd33dc931, 0xb53ed0de, 0x23cd35d6, 0xb216112b, 0xd4c83a41, 0xe9dd4fea, 0xc9d14bff, 0xeba82816,
+0x4ed62d13, 0x37eef1d6, 0xa4dc3110, 0xbcbe2c15, 0xdc354bc3, 0x2ed20d25, 0x131fcac3, 0x25e1dc30,
+0x24c3c416, 0x3035c527, 0x0020001b, 0xeee141df, 0x16ca2fc6, 0x1b2bbe34, 0xd60b322b, 0xee09d023,
+0x3243c423, 0x52c42eba, 0x242fe8c9, 0xe9d5b925, 0xb9211244, 0x272e13c4, 0xe9cdca16, 0xc1ddeb0f,
+0x1cb2252f, 0xc3ec48d7, 0x07ae39d1, 0xcfdbd1d6, 0xd0efd937, 0xdf44ce24, 0x1b1e153f, 0x12cfc6c8,
+0x382dbfc7, 0xcd39c4dd, 0xda1b2528, 0xbe1cd5d2, 0x39d94147, 0xba3a39a1, 0x4a17f0bf, 0xbcea2ade,
+0x063927c0, 0x29122abc, 0x360cd8df, 0xd0ebdfc3, 0x2a313cc2, 0xc7b241dc, 0xcc282ad0, 0xda5334dd,
+0xe848e2c4, 0x2ebb2f3d, 0xcd5bcd1c, 0x2e201eee, 0xcd2dcdbd, 0x2f3152d5, 0xe0160ec5, 0x493ac035,
+0xdf174427, 0xead72f3c, 0xd8cb2f37, 0xc8d72d00, 0x2fe6e039, 0xe8e32d1d, 0x2ec4dbc8, 0xe23a454d,
+0x3351bfd6, 0x09da3acd, 0xd1d7dcd0, 0xcb45cc4a, 0xd51a10d0, 0xd2c3aada, 0xcfbcd530, 0x27cebe26,
+0x3abed442, 0xd126d93a, 0x1d3fcb2a, 0xe247bfdf, 0xad3e1434, 0xcd4ab1b5, 0xdb38212c, 0xcb291f27,
+0x0adfc2ea, 0xd236d7d6, 0x4d3423eb, 0xccded207, 0x362ad71c, 0xe2ca2041, 0xc72cd2a5, 0xdad9cbfb,
+0x4f29da19, 0xf23826ba, 0xb6d0291d, 0xd23bd0e0, 0xdd16d02d, 0x41111a3b, 0xc6c83351, 0x30bdc934,
+0xd721ef3c, 0xd1152cb7, 0x2023be12, 0x07c2ece3, 0xd2be45ef, 0xd1d1d9d2, 0x2a432327, 0xd0c6ddc1,
+0x1def40b5, 0x263f1f2d, 0xdbd8e325, 0x1fd30014, 0xd5daeae0, 0x14d9cac2, 0x3fd23919, 0xecdad1e1,
+0xe829d3e7, 0x3a29551f, 0xee2f35e1, 0xcad018db, 0xe6cc4239, 0x2959d2d6, 0x2530d2d9, 0xd9c54744,
+0x23e7d0cf, 0x4d37dfd1, 0x0f2439c0, 0x402a3319, 0xc232d5c9, 0x1816d9ed, 0xdee5aedd, 0x3fd7dfe7,
+0xe02fb85d, 0x04d4bbe2, 0x1933c820, 0xee2630b8, 0xd831132c, 0x0fd71f24, 0xc0f234d6, 0x234c36ca,
+0x1f27143e, 0x2b2e284f, 0x4f3c2a21, 0x38dedc3c, 0x1e2f2ccb, 0xbc26444d, 0xc43e1d26, 0xd2371f1d,
+0xe4f1e3c7, 0xcdc452cd, 0xd52141cd, 0xc627d418, 0xbe330bd4, 0x43c24b40, 0x33ac4128, 0xb9cabdc4,
+0xbd2defb9, 0xe9043be2, 0x38cb27c6, 0xcc004247, 0x27c62b22, 0x33ccdb23, 0xbab84cd5, 0xb9d938e2,
+0xbb2e332f, 0x4fed3932, 0x50d5cebc, 0xc7e84425, 0xdcca2b2e, 0x2c3729d0, 0xd247dd28, 0x2cdf09cf,
+0xe12352d1, 0xd2372c51, 0xd517da26, 0xdce63bd7, 0xca3926d7, 0x0bd144c5, 0xef37d830, 0x38b73a22,
+0xe03f2936, 0x33c8d7b2, 0xbc2adac1, 0x3650c52c, 0xc84d2317, 0xdec2ef28, 0xdb29df20, 0x2bced846,
+0x2e452fde, 0xdf1c3ebd, 0x482d203e, 0x2537efb8, 0x2235e42f, 0xc3bb2ad6, 0xc4fe2f29, 0xd324313d,
+0x38bfddf5, 0xd6de3a2b, 0xda3a272f, 0x2bd6bbd3, 0x2c35bcc2, 0xcf2fd248, 0x4551b9e2, 0xadf0b1d0,
+0x4038c4db, 0xc71427f0, 0xe1e32f40, 0xe71b3dd8, 0xc73810dd, 0x3d4d223d, 0x3116e9d9, 0x44b0c7ca,
+0x5037ccd0, 0xe5d52a0e, 0xc644111e, 0x35272fd3, 0x361421d5, 0xc9cad2cd, 0xdd360cc9, 0xaddd2ce7,
+0x2aee4aeb, 0xbd0713b3, 0xf5f3c02e, 0xeec531cd, 0x20da0841, 0x2f09e526, 0x332e2628, 0x3bc81726,
+0x111bf6dc, 0xc0c4c718, 0xea2d49df, 0xe3ce2d40, 0x242640ea, 0x0ae5cd37, 0x3f39e1d5, 0x5031edd7,
+0x3018322b, 0xc7d6ccbd, 0xc94429f1, 0xc93a1f33, 0xd32dceb2, 0xdf3317d7, 0x2fd5c1c5, 0xd02f4130,
+0x42aebc06, 0xda2bdab4, 0x47c5c033, 0xdf2ed3e1, 0xbace19ce, 0xda1feac1, 0xe04a1821, 0xe7d6b9d5,
+0x10d2a41f, 0xe0e330c3, 0xc7ea3f34, 0xbccb22d2, 0xce2e1a00, 0x27c43a0e, 0x3321ef35, 0xf6cb3437,
+0xcd41d1da, 0x36eec4c7, 0xd93b5aed, 0x152125e5, 0x41ca3bdc, 0xc1eceac8, 0xc8ca0601, 0xd32dc440,
+0xbebe2042, 0x3039cec9, 0xc4371645, 0xd529cadf, 0x423ee1ea, 0xe2dc1bf1, 0xdbbbd443, 0x3ceefff0,
+0xc0362841, 0xe3dc26e7, 0x272de1fd, 0x58d2441e, 0x1820f554, 0x3acacd0c, 0x3fccc9d2, 0x22332dd4,
+0x32d6b939, 0xc4d03dd8, 0xb03ebfcd, 0xe6beecaa, 0xc95528c5, 0xd2e131d1, 0x34373842, 0x44da4bbb,
+0x431e3ac8, 0x26ccc93a, 0xd8dab0b0, 0x42dfc643, 0xd2d8d6df, 0x4132c042, 0x2935cf22, 0x2921bb02,
+0xe8e73e2d, 0xdfd829b8, 0xe4233637, 0x2cdccbd9, 0x212e003c, 0x1943c2ee, 0xddd5c0c4, 0x30ccd4d6,
+0xb42613c8, 0xd5c92440, 0xf24edec6, 0xd7d51d2a, 0x1dd0dd42, 0x2915e7b4, 0x4dddd445, 0xb1e636ce,
+0x17cf1c3d, 0xdb2dd7e0, 0xc438c118, 0xda4aeb25, 0xec24d04b, 0x27d4402e, 0x2eeee6da, 0x3aca41e4,
+0xd9d53824, 0xbd4735dc, 0xc9323fe1, 0xd2d0c02b, 0x2fe82c34, 0x47cf34e4, 0xed23523f, 0xc5223e12,
+0xea47b7e3, 0xcaca2b47, 0xd95c32ca, 0xdad423e5, 0x21c2b832, 0x3cdfcb31, 0x2ec5b3ef, 0x16d429ec,
+0xc5c7c93a, 0x3edacc1f, 0xd137dbaa, 0xbbd6d1df, 0xef3b3a19, 0xc0dd2bc2, 0x3c2430e1, 0x454ec7cc,
+0xc23ce234, 0xf3382a2c, 0x32e13f12, 0xcae6c4b6, 0x2900b70f, 0x2d1dca3e, 0xca20cde4, 0x2f3aead4,
+0xc53ecb3d, 0xe348c2ed, 0x3e43d9cd, 0xd4b21cca, 0x31d6d9da, 0x1cc2c936, 0x2537d5cb, 0xd2e5e7de,
+0x1b423012, 0xe537c5d5, 0x332bdb1e, 0xe41dd0ce, 0x3dcce6ed, 0xc3dcbed3, 0x3046e2d2, 0x2e193ad1,
+0x1e6549bc, 0x3820d03a, 0xf8d0affa, 0x371c211a, 0xdbe4d2d8, 0x24cc2134, 0xcd1ae0d8, 0x3913ce3a,
+0x281f3a4a, 0x22c53152, 0x3a11fd2d, 0xd82a33f3, 0xdbe91a46, 0xc71a1d20, 0xcbeabe1d, 0xc7c54632,
+0x344fcfbd, 0xc831211c, 0x19a227bc, 0x49c83ec8, 0xe02242bf, 0x40efbabc, 0xc94039dc, 0x22263acb,
+0x2b2634e7, 0xdf391d36, 0x49ce3038, 0x20152fe7, 0x003ff136, 0xd5231029, 0xc9232f1b, 0x22c7d42e,
+0xeb0ac538, 0x2fdcdd4c, 0xd7402336, 0xcae1d2d3, 0x16d1ba27, 0x4f263c40, 0xda203a35, 0x2b162ad4,
+0xcdd9281c, 0x362a28bd, 0x39c5a4d7, 0x27e9cfcc, 0x30231e21, 0xbac94dd4, 0x39341723, 0xbae563e0,
+0xbd1134c3, 0xec0f33ab, 0xcb2936dd, 0xf92d2ee0, 0x34dcc04e, 0xc5ef1b12, 0x1d3aeebe, 0x1af4e6e9,
+0x23dcd858, 0xc01f40d1, 0xc9c9c4d9, 0xd63e143e, 0x04bad9e5, 0x4bdecd22, 0xc042cccc, 0x285118e4,
+0xd548d326, 0xf5c5c224, 0x46afe1bd, 0x41d02d31, 0x3961433a, 0x392345d4, 0x30cb3c2c, 0xd5d00dcd,
+0xf22a2100, 0x14d2333e, 0x22bcd334, 0x3a2dcfa5, 0xe80bc1c5, 0x264b1f00, 0x13d12bbf, 0xc8d9442c,
+0x353b382a, 0x234341ca, 0x2d352ebf, 0x41cfde43, 0xd63120cf, 0x3cc734e8, 0xd036e825, 0x3d3c1fce,
+0x041e373b, 0x091e2c30, 0xbc29e235, 0xc0e42cc7, 0xa7252b39, 0xc63b25cb, 0xc23b1a2a, 0x2936c337,
+0x3f2ac9cc, 0x0a1cd9ae, 0x1dd233e0, 0x2bc21dc0, 0xa6e2c62c, 0xdee544df, 0xca3329c0, 0xe0c43942,
+0x1ca739d2, 0x241633d6, 0xb826de18, 0x33cb1935, 0x1a37ca2d, 0xc90fd1e3, 0x20262fc7, 0xc34cd3c4,
+0xcb4fcbb4, 0xe5d32f2d, 0xe1c3331b, 0xd0c1c833, 0xd52e33ba, 0x33d8352a, 0xe3472a24, 0xd01a31e3,
+0x4026f4c7, 0x1dcc1dc4, 0x36ca47c2, 0x41bee407, 0x02e33a39, 0xefcd00b8, 0x08cdb333, 0xde2d2528,
+0xbf2038e1, 0x27d9c636, 0x2c9e2620, 0x311fefb4, 0xddc0e2da, 0xf0ec291a, 0x47ca3ae8, 0xe9e8b8bd,
+0xc7341ec8, 0xcbdb2f4f, 0x2efe005b, 0x3338db40, 0x313ec7e8, 0x1cceeb2d, 0x372b3cd9, 0x39d5d1d4,
+0xc9b22450, 0x265e2325, 0xb6bedbee, 0x2c2e07cd, 0x1dcb29ce, 0x2539b7c9, 0xcdb263d4, 0x4fced731,
+0xdee0c2d7, 0xfe2e49af, 0xc82eefb4, 0x4be5d6b9, 0xf0eb13f8, 0xe6ceaedd, 0xafe21fcd, 0xe52ac125,
+0x2ee00523, 0x30db3fda, 0xd0e6fd14, 0xc51e4f33, 0xe0fd0fd5, 0x3c194ae6, 0x241ea923, 0x343e1f21,
+0x22d5dcc8, 0xd2411033, 0xbbe939e4, 0xb5dc40cb, 0xc3ddf617, 0xe800ca33, 0xd03cce1c, 0x2fcb2def,
+0xd1cdd3f2, 0x113ec74c, 0x3d10373f, 0xec2538d9, 0x28c3d733, 0xe74916f3, 0x37cef6f5, 0x3532bc0d,
+0xdec3cc2f, 0xdcdcf4dd, 0xdbe1c3d4, 0xc32e212b, 0xc12155cb, 0xed5ad9b2, 0xb43847ab, 0xc2dc4acc,
+0xd2223b28, 0xcd25dd31, 0x3fd7b6d9, 0xdee1f8e5, 0x3cb337eb, 0xdf19d333, 0x3344ebd3, 0x32eb22f0,
+0xdfb3262e, 0xaedc41bb, 0x25d7dfd6, 0xaa13401f, 0x2eceedc6, 0xc02e36c9, 0x28da38df, 0xc41c34d1,
+0xc8442bdb, 0x48c9332a, 0x3acae6ec, 0x271bbe3f, 0xf121e2c7, 0x3edc1edd, 0x2bbe35b0, 0xe03c42cd,
+0xcbe84331, 0x1428cf17, 0x1cdce821, 0xe4351ad8, 0x38284ed8, 0x263e19bb, 0x182bbc10, 0xf438d2da,
+0xe4f3b8ed, 0xd63bfb1d, 0xc1cae51e, 0x36194bcb, 0x19cd21fc, 0xea322e41, 0xd5146635, 0xc8f9e1e7,
+0x48423123, 0x42c4331c, 0xe1d04141, 0xdac0e12d, 0xdce73f25, 0xbec6d0cf, 0xe52a41d2, 0x452ae9d2,
+0xc9e7bfd5, 0x3f033022, 0x21d21b44, 0xe335332e, 0x40ebbd29, 0x2bdf2cdd, 0xf336e53f, 0xe54b2b13,
+0x4d12243c, 0x31b9c5db, 0x111ccc18, 0xd5d31315, 0xd2f9dfb7, 0x3f4b1ecc, 0xe5e3db46, 0x27cd2c59,
+0xbfd10ac0, 0x25c33252, 0xe1293553, 0xdb1635c2, 0xd62db8bd, 0xd8daca35, 0x49d8daec, 0xc951ded1,
+0x2e2ce7e3, 0x1321d4d8, 0x33ee3a37, 0xe1ef3d2a, 0x12932fd0, 0xcad0de3c, 0x20c3e300, 0x36ed3adb,
+0xddcdbb39, 0xe7184dde, 0x564cb8b1, 0x41ea2ae8, 0x3ad6c619, 0xc722d34a, 0x4bc52c36, 0x27df1bda,
+0xc9e2bb64, 0xd5394036, 0x1b3b30d7, 0x12d71cca, 0x233d432d, 0x2ec6d2c1, 0xeb26242f, 0xd2ffe5c7,
+0xc6d9dbcf, 0xea3329d2, 0xd129ebbc, 0x1e39193d, 0xc6ecdcd6, 0xe64ac331, 0xdfd6c413, 0xc8c8eb1b,
+0x26bfc3ea, 0x2bea33d7, 0xecd10bd8, 0xba3c27d4, 0xacdadcd2, 0x2bcd2ddc, 0xd141dbe1, 0x2ecec0dc,
+0x272fd8f9, 0x0bc3e8e1, 0x47e5e91a, 0x24152c15, 0x2927d5d8, 0x28b8dc2e, 0x28e4c5de, 0x26202ed3,
+0xc734eb0f, 0x2e53cdd7, 0xce2b1f48, 0xc11ae321, 0xbb343531, 0x3f2128d1, 0x2c4a001e, 0x23d13c12,
+0xf4d3432e, 0xd62a3d30, 0xfdac20d6, 0xc32d1fd9, 0x3bcfc9e2, 0xc2d50dab, 0x310c46b9, 0xd12eb92a,
+0x3739c436, 0xdbd3e6cb, 0x39d52cd3, 0xccbb3e28, 0x47ec4326, 0x5fe1d645, 0xdb15d716, 0x223b3dc9,
+0x25de3d2d, 0xdfe4e244, 0x3b2daf28, 0xd62acb34, 0x1c42f1d5, 0xbece4217, 0xc3d03928, 0x4dbdd6d2,
+0x2eeb1617, 0x32bbd2e9, 0xc2bcdadc, 0xebc424d1, 0xcba8c820, 0x2ae6533b, 0xee3f1ee8, 0x30d4dd2a,
+0xdb3120c9, 0xced82d2e, 0x35e32f1f, 0x1031d711, 0xcec5d3ca, 0x3400dedc, 0xc32c342a, 0x3ae2d43f,
+0xb2c9b4f7, 0x4ec7ffda, 0x281e43ea, 0xf12641c7, 0x33474ebc, 0xc414372d, 0xc9003ba5, 0xe949ca30,
+0xc82fe4cb, 0xd222cd1d, 0xdddce1de, 0x3ccd2530, 0x44273c36, 0xdbedc2c4, 0x352e3ece, 0xb5d641be,
+0xc9cbe347, 0xdf282fe4, 0x1b232338, 0x26c4ecc6, 0x2fcccb1c, 0xcc391cd5, 0xcc46ffe9, 0x3d28b724,
+0xc949cb0c, 0xc03deb26, 0xc9c01f28, 0x24ca3cd3, 0x2f1acf47, 0x4fd72ad5, 0xd339cf1f, 0xd7d4be34,
+0x3d1f0abc, 0xe5373935, 0x3a2b3219, 0x3cc9dab7, 0x1eafc313, 0xe53cd2ee, 0x18d2e8cd, 0xe5d3c519,
+0xe9dfcc3e, 0x2836c6c6, 0xd8ebe638, 0x3ed9dadc, 0x2a45d3c0, 0xc3263bcb, 0xc428dec1, 0xd6dbdf28,
+0xd517272a, 0xbb26bd0d, 0x3814da33, 0xd8d0ca31, 0xc00fc5dd, 0x28d49e21, 0x00401518, 0xafcece36,
+0x383ce72d, 0xdb131a2d, 0x3327da10, 0xdac2a82c, 0xd8302d18, 0x39c4212c, 0x1a352fc9, 0xdfbf2332,
+0x21331428, 0x170145be, 0x29ee1dc9, 0x3233a2c2, 0xc9d7b43f, 0xdd4129c1, 0x27c91bd5, 0x1925173c,
+0xb0e3023a, 0x48e63bca, 0x37c000e6, 0x132c23c6, 0x2e24d22d, 0xd7c2ce3d, 0xce4213f8, 0xbed82ede,
+0x1cdcd6e4, 0xcccc1033, 0x27cf1120, 0x29dd37b8, 0xc7e53bc1, 0xbf2f3849, 0x443845e0, 0xdaac1c26,
+0xce093720, 0x422c4036, 0xccfb38e1, 0x1fd425bb, 0xc733ea10, 0xec1534d4, 0xded22ac4, 0xe42c1d25,
+0xca28d7b8, 0xc14bd845, 0x341bccb8, 0xbd1e2230, 0xf3d9d631, 0x1dd9d921, 0xca23d50a, 0x22343f00,
+0x35e0c7ad, 0x22d522dd, 0x342cdac0, 0x315c0a19, 0xde5634b8, 0xd5b8b5d0, 0xd24135b2, 0xbfbecc29,
+0x3dd12bd0, 0x2fc2ee29, 0x3ed4dfca, 0xcc0cc3f3, 0xdd3a23ca, 0x2fc316c4, 0x343036f1, 0x14db430b,
+0x35d6c2cc, 0x37bfdae3, 0x2d19c4f5, 0xbdd03129, 0xd42fc7b8, 0xe9d6deb7, 0xf12fd3ed, 0xcada19cf,
+0x1bace9d9, 0xcdbecacb, 0xd2d5273a, 0x40c63522, 0x3628d34a, 0x36e803c2, 0x332c42c7, 0x2eb1352c,
+0xbed4c3eb, 0xc21d42d2, 0xd430c85a, 0x2bd538d1, 0x21de45d1, 0x1bdbc34c, 0xd9ce3dc1, 0x1b46bdb5,
+0x3ad92c22, 0xbd2b202a, 0xc342eaec, 0xdabd561e, 0xd52ec801, 0xb3211923, 0xd825360e, 0x37130018,
+0xe7f04ed0, 0xcdd8ea30, 0xe230c7af, 0x38134f36, 0x2dd93139, 0x36c549d4, 0x1ed2e5d9, 0x3c2d39f4,
+0x23cad716, 0x3f03371c, 0xf61ed0c9, 0xdd25c83a, 0x2320d52a, 0x4a22313c, 0xedc43d2b, 0xce492bbd,
+0xd0ce2b4c, 0x3b1933e1, 0xdfd02940, 0x3dcbda3b, 0xcfcdbf2d, 0xe0b1b5bb, 0x1a2aee5d, 0x441c1e44,
+0x313a2c3e, 0xdfdcdc3f, 0xd72349e9, 0x261e3619, 0xda05ca32, 0xe6e12ddd, 0x47371f2a, 0xc3e2bcd3,
+0x4934c1db, 0x0f331e30, 0xbcf02906, 0x553ec733, 0xdc29203f, 0xca37cc47, 0xd3d93c3b, 0xdfbae42e,
+0x3dd31c1d, 0xe6da2a2b, 0xdcbcc234, 0x37f3c6dd, 0xce152725, 0x1b2b2ce4, 0xe4e64c39, 0x390046ce,
+0xba3730d4, 0x2e3224c7, 0x36cf3aaf, 0x31cc184d, 0x3e5cec43, 0x28391a31, 0xcfe4ce20, 0x2cc22918,
+0xf0e611c7, 0x48fa302f, 0x1edd2ad1, 0xe1b6caf2, 0x3b1fd815, 0x2a26d9ce, 0xc1ce2ec8, 0x3e3d1dcf,
+0xc246dec8, 0xd3f839c3, 0xdbedbf19, 0xd8eac1bf, 0xd5d71add, 0x283eb4dc, 0xe331cccd, 0xcdb8c1eb,
+0x372526cb, 0x2e281436, 0x2f2e39ca, 0x49bac623, 0x28dee328, 0x3431c4cd, 0x2fdf4d45, 0x353ce7c0,
+0xc82edb47, 0xb8193e35, 0x2ada22d9, 0xdbcd3fd6, 0x1e19e43f, 0x13c3c5f3, 0xd9d53b47, 0xe62531d5,
+0xb91b21d9, 0xdb4ba1c9, 0xd036e20d, 0x23171eec, 0x2e3e53d3, 0xe4e9cc1a, 0xf0d3412e, 0x31c1292b,
+0x24bbe2d9, 0xc527d531, 0xd4c04149, 0x09e038dd, 0xd3cfe3bf, 0xde3d442d, 0x2af1c438, 0x213328c6,
+0xd616342a, 0xdbd2e5d5, 0x21cb393c, 0x2d331e47, 0xbcd5e436, 0x20d2dbb5, 0x2b2f2fde, 0x412fd5c7,
+0x2f2422c2, 0x3de9dcc2, 0x5cbf2816, 0xbdda1f25, 0x2c483930, 0xecd0c7da, 0xeec5e2d3, 0x23d4d325,
+0x6e282d24, 0x38173029, 0x2b222f1f, 0xdbe2edcd, 0xd71018c7, 0xdbe3c9b7, 0xce42d837, 0x18d33d37,
+0x2eb6f515, 0xceccf822, 0x4cd63db8, 0xf5e3c7d6, 0x361819e1, 0xd6bfbd0f, 0xe1c2e1cb, 0x3d3b33e6,
+0xcbd34c20, 0x0640369e, 0x39c82c17, 0x3eb542c5, 0xd52e3dc3, 0xdd26cfce, 0xae29d138, 0x38b4c0dc,
+0x1d350000, 0x162eea1f, 0x21432923, 0xd534dcb6, 0xe4eada29, 0xecced02b, 0x2a2c30da, 0x2dc735fd,
+0xcac1cecb, 0x23c93eca, 0xd73d2037, 0xe80c43bf, 0x522824ba, 0x17ce1e26, 0x5e33e53f, 0xd5e9d4ba,
+0xe5cb1ecb, 0xd737d255, 0xb7e3db38, 0x410a2eb4, 0x3be4253d, 0xdffd4216, 0xbf18f018, 0xced2d9d3,
+0x4a23d0d3, 0xe4ebcf39, 0x1bd0cc2a, 0x39c7da35, 0xe24128d4, 0xe2cd313a, 0xdc20ea53, 0x2df0cd26,
+0xc7db42f5, 0xccd4d9c6, 0xe5dcdb34, 0x3b2909ce, 0x4218e450, 0xbdd5cd2e, 0x421ae9c3, 0x40262fe6,
+0x3800d33b, 0xd5c5c52e, 0xd6dc3727, 0x4cdb2ccf, 0xcbaabada, 0xc2d125c2, 0x41e236d8, 0x36ba20e2,
+0x2bd2ce3b, 0xb9e401e3, 0x073ac323, 0xcdda311c, 0x35c1b7c6, 0x31e54930, 0x33315330, 0x47403db6,
+0x0dc9ddb9, 0xd7cc1fc2, 0x35ea4532, 0x252915e4, 0x4f13d9a4, 0x1d22f3dd, 0xe8c3c2b1, 0xe9b336fc,
+0x0b231ad2, 0xc532c7e3, 0xcc0fc31d, 0xc1d6ea13, 0xe4193daf, 0x46d3da14, 0xc310da46, 0x36140ecd,
+0xf9b521cd, 0x3dd2bd13, 0xd539f7c5, 0x093f3ce3, 0x0f352cdf, 0x29412fe2, 0xccd4d732, 0x1e35b5e8,
+0xd8d250df, 0xda32242d, 0xdecaf62b, 0xbd53b43e, 0x024d2b2b, 0xd4e3d434, 0xbcd33334, 0xcc19340e,
+0xdd212a38, 0xd62b432f, 0x3fcdc4d2, 0xda4d4ad1, 0xf3d6dc2b, 0xa4d72fdf, 0xd0c5392d, 0x2d29b8d3,
+0x0000273c, 0xd73f08cd, 0x202ad7e8, 0x3fcbe634, 0x25c6cec6, 0x3b5815cd, 0xc82ad7d2, 0x28e5e6c3,
+0x260e451f, 0x49d830eb, 0xd2cf4cc7, 0xd122d1b4, 0x0bc82b33, 0xcc2fe53e, 0x41d5d9ec, 0xd0d0cd31,
+0x4c39d7c7, 0x163c23cf, 0xd53639de, 0xc352cfd3, 0xe0e323c2, 0xd1423716, 0x302b1c3b, 0x29d02fec,
+0xeaccddd5, 0xc13137d4, 0xd4bd394a, 0xc11ae6c5, 0x4dd5bea1, 0xd5df323b, 0x3b26a74b, 0xabd7402a,
+0x2cb4301e, 0x2027f735, 0x2713f5df, 0xe3d3b327, 0xddee3124, 0xce23bf32, 0xb3c9260e, 0x3e46da32,
+0xcc3cd5e0, 0x392dd02a, 0xd5d52822, 0x3235b2c6, 0x36e0f522, 0x202bcbcb, 0xc6dd54be, 0x2b3b39d8,
+0x311fd9e5, 0x32c7dcd1, 0xd81bbdd3, 0x26434fce, 0xc6ba392c, 0x212ee515, 0xc5d8efdf, 0xdfe62930,
+0x1c1a2f4f, 0xc91a2e32, 0x30d01357, 0xf02e1c20, 0x5bb93a20, 0xf0e9bd31, 0x243ee036, 0xe139c7b9,
+0x21463b1f, 0x412bec29, 0x3015c6e0, 0x3925d411, 0xbb13d939, 0x2b50c1c9, 0xc92ae71e, 0xc0d61a49,
+0x20d2e542, 0x0f3216d4, 0xc8d4da44, 0x4cee380e, 0xb5b8ce1a, 0x4731353c, 0x413fe1e0, 0x0ac939d9,
+0xe109c4d0, 0x3534c019, 0xcd213bc9, 0x1729f730, 0x252b4955, 0x02d01f33, 0x2536d123, 0xb3b3e947,
+0x4ba9c924, 0xba1d2440, 0x2d29b910, 0x21294ab9, 0xf124cd2d, 0x2ed723c6, 0xc01ebe31, 0x1da6cbad,
+0xce2ad830, 0xc32b0000, 0x15ebe1da, 0xdf2c3852, 0x3218262d, 0xd0a3e05d, 0xd6b8c3b8, 0xd421c622,
+0x0fe039cb, 0x2314d7c2, 0xcbe02dec, 0xd9d11424, 0xd03dc750, 0xd12a3835, 0x09ed00ba, 0x20281dc2,
+0xdddcbc3c, 0xe3c05037, 0x043ac03c, 0x480de436, 0x229eebba, 0x42193947, 0xd02ed3db, 0x123ccbfe,
+0xc8372d41, 0x222b49ca, 0x1128d9e7, 0xb2d04637, 0xbb1ce931, 0xd4d04226, 0x2f3cb534, 0x642fdef4,
+0x1923f02b, 0x50b22619, 0xd3b84031, 0xcb412737, 0x1ec9e227, 0x26dd1430, 0x3831211c, 0x32d043c7,
+0x2ee6bca5, 0xd33629c9, 0xf5282b1e, 0xc73c2d18, 0xcad52336, 0x31dee3c0, 0x2025d231, 0x4321cf47,
+0x24c7c0cc, 0x410dbfce, 0x4502cfcf, 0x2d41182a, 0xf01e1bb8, 0x37c94512, 0xd32a4fbb, 0x23b0cae9,
+0x29f52adf, 0xd02729c0, 0xb71ef6bc, 0x2a1f1633, 0xc64aba1e, 0x322fb9f4, 0x09242ff5, 0x20dcd9cb,
+0x35c0e12d, 0xc2d2ca21, 0x20a2bfd3, 0xb5d82cd9, 0x37e7d642, 0x2ae639c2, 0xe1364a3e, 0x2615d12c,
+0xd62c2127, 0x2304b12d, 0xd21cedec, 0xdf34d829, 0x2d1acde7, 0xe01e2534, 0xd333c8d2, 0xe2e0d410,
+0xd0df4930, 0xd231293b, 0xd4d33617, 0x1d4344bb, 0xddd1de20, 0xcaf4272e, 0xb72f46dd, 0x172e2920,
+0x2a27c742, 0xd4e01a30, 0xca35b7e8, 0xdc1d0c3b, 0xd02fc71c, 0x3ee13ee3, 0xd53db622, 0x4bd33127,
+0x4ad7c6f2, 0x0000d9ef, 0x14161a3f, 0x28e8dfc4, 0x2c1e38d1, 0x23b91206, 0x22d8dcd2, 0xcecc3a15,
+0x1bb4f5b1, 0x3cd0e3cf, 0xfdc3dbe4, 0x54300b36, 0x09c8e2df, 0xc7ec1bfd, 0x1d0fae40, 0xcf343bd5,
+0xb929d337, 0xd4c224f9, 0xac2a3437, 0xde261ebe, 0x2e20c032, 0xd3c1c0c5, 0x18e0cad5, 0xe417ebc0,
+0xef2a4ddb, 0xbde4e334, 0x2d32cdc6, 0xbd1ee8c1, 0xd834c3d5, 0x46e327f0, 0x353cc5b3, 0x3c20c1af,
+0x00000000, 0x00000000, 0x42dd3028, 0xd8c424d5, 0xe9d54729, 0xb325de29, 0x00000000, 0x00000000,
+0x44d5bdbe, 0x45c0bff4, 0x2219c22a, 0xcf30dce3, 0x00000000, 0x00000000, 0x2ed822fa, 0x3220d4cb,
+0xd437be3f, 0xcfd452e2, 0x00000000, 0x00000000, 0xc72e411a, 0xe923cbcd, 0x15e1dd36, 0x28cbe3d2,
+0x00000000, 0x00000000, 0x2225b73b, 0xd92bcb1f, 0x23bbd2dc, 0x3f34b0e5, 0x00000000, 0x00000000,
+0xdb44d7d4, 0x1ceb4040, 0x0cd3cfa8, 0x36d41d28, 0x00000000, 0x00000000, 0xc8091dcf, 0x2544de1d,
+0xc81c2e43, 0xe317252b, 0x00000000, 0x00000000, 0x22c6cfe0, 0x2a461c3b, 0x51dda630, 0x233f20ee,
+0x00000000, 0x00000000, 0xb9bd2c27, 0x23d5202c, 0xe23ac304, 0x4a3ddd1d, 0x00000000, 0x00000000,
+0x301b35e2, 0x0efb413f, 0x3c2d1cc2, 0xaedb2a24, 0x00000000, 0x00000000, 0xe7dbda13, 0x3cbbcbf6,
+0xafc1c830, 0xe7433323, 0x00000000, 0x00000000, 0xc7e80000, 0x292b33d8, 0xc4322cd3, 0x31163946,
+0x0000e2cb, 0x00000000, 0x253c0000, 0xfd30e7e6, 0x04c04dd7, 0x3fc918e0, 0x0000d2da, 0x00000000,
+0xcda70000, 0xe3d730c1, 0xc533d624, 0x1834d633, 0x0000eae3, 0x00000000, 0xb4bb0000, 0xe5d0dc2b,
+0x1c272b33, 0xef243c2d, 0x00002948, 0x00000000, 0x20210000, 0xcbfb1e42, 0x3749cf29, 0x442f1b10,
+0x0000b944, 0x00000000, 0x43dc0000, 0x42d9282f, 0x10cebc35, 0x3ed42cd5, 0x00002336, 0x00000000,
+0xe3e20000, 0xc230d923, 0x33ccc61a, 0x27e22ad2, 0x00003ed4, 0x00000000, 0x2bc10000, 0x051d0432,
+0xd310d9dc, 0xba331c3f, 0x00003030, 0x00000000, 0x20430000, 0x45b8cdce, 0xe515231c, 0xe9cc1931,
+0x00002b23, 0x00000000, 0x42140000, 0xd2dd2fcb, 0xee2eb7f9, 0x3e493028, 0x00002a2c, 0x00000000,
+0x20340000, 0x3d02491c, 0xe231a8ec, 0x0a270727, 0x000029c2, 0x00000000, 0xdbb90000, 0xc7dccd2c,
+0x0f203d37, 0xcbda00c2, 0x00002319, 0x00000000, 0xe51b0000, 0xd943d3c9, 0xbe1fd6d5, 0x423b53c7,
+0x0000d9e9, 0x00000000, 0xcebf0000, 0x19393427, 0xc3223fb8, 0xf431c6c5, 0x0000f5d5, 0x00000000,
+0xeb310000, 0x21f4e3c8, 0xb7d826ca, 0xae06b824, 0x00002345, 0x00000000, 0x562c0000, 0x21c33209,
+0xbf40c6dc, 0xe73dddd3, 0x000045f5, 0x00000000, 0x00000000, 0x27e31bee, 0xd02d24b8, 0x26e4cdc8,
+0xd331c72f, 0x00000000, 0x00000000, 0xd4261e28, 0xd337d4da, 0x3fdb2432, 0x1e474dc4, 0x00000000
+
+input1 =
+0x00000000, 0x48ddd534, 0x31cecfbf, 0x32e44edc, 0xb121dfdf, 0x00000000, 0x00000000, 0xf2232324,
+0xdb26cdde, 0x2cec2011, 0x2b2421d4, 0x00000000, 0x00000000, 0x19c71129, 0x55d50bd3, 0x2fd2ce41,
+0x3abeefd0, 0x00000000, 0x00000000, 0x1bef29c6, 0xd2d5d9ec, 0xe4b51b34, 0x2529d5e3, 0x00000000,
+0x00000000, 0x0cd1c825, 0x13d5ddd3, 0xbe252dbd, 0xb7434ed2, 0x00000000, 0x00000000, 0x46c82c33,
+0x1a171fcf, 0xc3c32fd4, 0xe64d2dd4, 0x00000000, 0x00000000, 0x37af330f, 0xd0e8f326, 0x59201fdf,
+0x19e9c153, 0x00000000, 0x00000000, 0x1bf81fb7, 0xbd19bbd9, 0x3043cd22, 0x39cdb9cc, 0x00000000,
+0x00000000, 0x1dc5de57, 0xd5c8f118, 0xcca7dc2f, 0x45da1c24, 0x00000000, 0x00000000, 0xe42f4036,
+0xf22de61c, 0xdfd4353c, 0xdb1c2fbf, 0x00000000, 0x00000000, 0x2722b4f6, 0x123f3cc7, 0x43cc37da,
+0x23d949be, 0x00000000, 0x00000000, 0x3233cf48, 0x34d4c8d4, 0x1b2c352c, 0xdfb7fa3c, 0x00000000,
+0x00000000, 0x343d28cc, 0xc1ca2dab, 0xd8330d32, 0xcab1b4e2, 0x00000000, 0x00000000, 0x1acf3435,
+0xfceddc39, 0xd7d5112b, 0x13ceec3f, 0x00000000, 0x00000000, 0xc32b0000, 0x45e24430, 0xc916ca3e,
+0x32132dd3, 0x0000d9dd, 0x00000000, 0xe1e60000, 0xce060018, 0x38401be2, 0x0ec83821, 0x0000ee52,
+0x00000000, 0xe4c90000, 0x1a313f14, 0x26dfc4e7, 0x23eb4df9, 0x0000e1bc, 0x00000000, 0xd4190000,
+0x37e5d4ae, 0x33cdcd50, 0x39d64a48, 0x0000e51a, 0x00000000, 0xc82d0000, 0xc6cc40bc, 0x501bbb22,
+0x2b293dd4, 0x00002f38, 0x00000000, 0xbbc10000, 0x2b3fc838, 0xce29dd5a, 0xd7de23e4, 0x0000d42b,
+0x00000000, 0x14d50000, 0xfac320fd, 0x35eccdc1, 0x1c3239b8, 0x0000bfb9, 0x00000000, 0x39e80000,
+0x0c21cdef, 0xbddad53b, 0x4b6337cf, 0x0000d03e, 0x00000000, 0x1e2c0000, 0xbfe6d50e, 0x1d1ebffb,
+0x50d734d1, 0x00004fe1, 0x00000000, 0x10280000, 0xb8d62f29, 0xb3b4d82f, 0x22cfc836, 0x0000df2d,
+0x00000000, 0x2f300000, 0xc7ced138, 0xbb3c46d6, 0xc71fe43b, 0x0000dddc, 0x00000000, 0xbcc60000,
+0x191937ca, 0x432fcae9, 0xdef5d12d, 0x00004e2e, 0x00000000, 0x2d580000, 0x4bcc26fe, 0xb6cd39ec,
+0x27c0c8df, 0x00003e2f, 0x00000000, 0x44b60000, 0x26bfb03c, 0xf1b7d523, 0xcec82ff6, 0x0000240e,
+0x00000000, 0xb1d20000, 0x21383bc5, 0x29282c14, 0xc9bcc2d8, 0x000012ed, 0x00000000, 0xdcbf0000,
+0xc125d023, 0x4b40d936, 0xd6e9d1f9, 0x00002ffe, 0x00000000, 0xc6290000, 0x1be1deda, 0x25cdd3e7,
+0x432acc2e, 0x0000ccd9, 0x00000000, 0x35d30000, 0xd7d623dc, 0xd328cec8, 0xe92144d4, 0x000033db,
+0x00000000, 0xd8440000, 0xd5c3c213, 0xd8f1d240, 0x37ce13ca, 0x0000aa3d, 0x00000000, 0x3ecf0000,
+0x311e42dc, 0xe7e33237, 0x2dcd3aa5, 0x0000342b, 0x00000000, 0x24c40000, 0xd2374134, 0xe2bd141c,
+0x2e4d2ab1, 0x0000c54d, 0x00000000, 0xf22e0000, 0x291c3f12, 0xe738d61f, 0xcf38d12c, 0x0000252c,
+0x00000000, 0x1d490000, 0xd12fccc7, 0xbed13c4a, 0x3d2f3624, 0x0000072a, 0x00000000, 0x12c60000,
+0x3fd6a7b8, 0xb5ea2830, 0x54d813b8, 0x000029dd, 0x00000000, 0x48d10000, 0xefd138e6, 0xe5e1dbe5,
+0xd72a2dda, 0x00004b34, 0x00000000, 0xca370000, 0xb6d540e2, 0x0fd1cec1, 0x31ac46b1, 0x00003adf,
+0x00000000, 0xb6d80000, 0x202716cb, 0x162c23c3, 0x44ecfec8, 0x0000c4eb, 0x00000000, 0x16ab0000,
+0x2fd72645, 0x41c038cc, 0xd9d334c9, 0x00002832, 0x00000000, 0x12cc0000, 0x34ce26f8, 0xd22bc6d0,
+0xb5594315, 0x0000c636, 0x00000000, 0x102e0000, 0xcbd3291c, 0xdfdce5dd, 0x22e422ac, 0x0000c411,
+0x00000000, 0xddc80000, 0xd3d4bff9, 0x331f3ee1, 0x1dd9132e, 0x0000e30f, 0x00000000, 0x20e90000,
+0xd53ad8bc, 0x293941d0, 0x19e1db28, 0x0000e33c, 0x00000000, 0x00000000, 0xcc16bb42, 0xc2dbfadc,
+0xd7c7262c, 0xd932d13c, 0x00000000, 0x00000000, 0xd3c91ebe, 0xbed241db, 0x483820eb, 0xbd1b30da,
+0x00000000, 0x00000000, 0xd31fc61b, 0x352938ef, 0xcc1bcc16, 0x1dc12300, 0x00000000, 0x00000000,
+0xc626c507, 0x45e6d739, 0x261abb29, 0x2833cb2e, 0x00000000, 0x00000000, 0x2db1cdce, 0xdd4a3cf3,
+0xd229d6b8, 0x381ad738, 0x00000000, 0x00000000, 0x14183f43, 0xc6ed2eda, 0xcdafcada, 0x38e5e2c2,
+0x00000000, 0x00000000, 0xbb52c63f, 0xd7fe3add, 0x3935cee8, 0x34c6c82f, 0x00000000, 0x00000000,
+0x363113d9, 0xcde61f44, 0x2f29d3ee, 0xddf6d1c1, 0x00000000, 0x00000000, 0xeb253223, 0xc8de3553,
+0xbbdbdd47, 0x44d23e38, 0x00000000, 0x00000000, 0x0ad82cca, 0x34c3c94a, 0x2e35fbe0, 0x2145d82c,
+0x00000000, 0x00000000, 0xd72bea45, 0xcb1720df, 0xc5c537fa, 0x1c0cd6d8, 0x00000000, 0x00000000,
+0xe7d9d145, 0xd14fd1c9, 0x3a153154, 0x3bccc8c6, 0x00000000, 0x00000000, 0xbc28262c, 0x32dbc8ca,
+0x2924eac8, 0xff21cfdf, 0x00000000, 0x00000000, 0xe8ddc921, 0xc1cc2507, 0xccdbc728, 0x2b10332e,
+0x00000000, 0x00000000, 0xd81eee18, 0x3223452b, 0x292dd7b9, 0xb8c3dbab, 0x00000000, 0x00000000,
+0x4615243f, 0xd23425dc, 0xe6c73815, 0xe9e43dd3, 0x00000000, 0x00000000, 0xd8250000, 0xd14b591a,
+0xe52bd2c7, 0xe548e0c4, 0x0000c9d5, 0x00000000, 0xfbd20000, 0x1ee1e71a, 0xc2c23913, 0x44cee6d3,
+0x0000d906, 0x00000000, 0x24cc0000, 0x5ef4c337, 0x12beb725, 0x493fd6de, 0x00001e2b, 0x00000000,
+0x2ec50000, 0xd1e1c6ca, 0xcbc93015, 0xd5442622, 0x0000d202, 0x00000000, 0xd3230000, 0x44b61729,
+0x12c524d2, 0x1f343811, 0x0000c4c4, 0x00000000, 0xc9e00000, 0xe3be23b0, 0x42133425, 0x28d8b3d7,
+0x0000bc49, 0x00000000, 0xcde70000, 0x3be1d9fd, 0x37a805f8, 0x2ff92839, 0x0000bb33, 0x00000000,
+0x52420000, 0x311fefd8, 0xc8ab1ec3, 0x23ddc7ca, 0x00004011, 0x00000000, 0xb4500000, 0x21324929,
+0xe03d38c8, 0x152b2acb, 0x00001edb, 0x00000000, 0x05340000, 0x2d3e3e49, 0xcfd0c9cf, 0x1528d6f2,
+0x000024a6, 0x00000000, 0xc5b70000, 0xd9d2becf, 0x282f1ed9, 0x36b72133, 0x00004b05, 0x00000000,
+0xca400000, 0xd7cae8d2, 0x30ef28da, 0x26c1d730, 0x000051d5, 0x00000000, 0x22170000, 0x421edd28,
+0xddc5421e, 0x1ed93420, 0x00002825, 0x00000000, 0x33280000, 0x45ce3eec, 0xddf6313b, 0x2ad6cec1,
+0x00001f1c, 0x00000000, 0xd9e60000, 0xd7dbe937, 0x283029eb, 0x0bdfbe3c, 0x0000c92d, 0x00000000,
+0x5de40000, 0x154ad3d6, 0xcc3c2f1e, 0xf039caf8, 0x000032d3, 0x00000000, 0x00000000, 0x49c4dfec,
+0x33c05518, 0x37d8261b, 0xdbf8c6cc, 0x00000000, 0x00000000, 0xd7efe223, 0x1b38d73a, 0x24cdd342,
+0xe4280843, 0x00000000, 0x00000000, 0x22c41232, 0xc0374543, 0x402ec542, 0xb53312e6, 0x00000000,
+0x00000000, 0xd8e0f726, 0xa62e3fd9, 0x1d12c749, 0xef413c47, 0x00000000, 0x00000000, 0xc7353e27,
+0x2844c82b, 0x0330c2cc, 0x27e035fa, 0x00000000, 0x00000000, 0x40d732bc, 0xd62cd8cc, 0x2e35ee39,
+0xf11dd413, 0x00000000, 0x00000000, 0xd3ddcec2, 0xeabf1ce9, 0x27beb0dd, 0xd2ccdc0a, 0x00000000,
+0x00000000, 0xe92c43c3, 0xddc143e2, 0x36bfef1b, 0xe4b8b936, 0x00000000, 0x00000000, 0xb1e3ecd6,
+0xc1183ae6, 0xab443ee5, 0x20d126c9, 0x00000000, 0x00000000, 0xa1e9cee0, 0x33363f4f, 0x45d51612,
+0x4cf81238, 0x00000000, 0x00000000, 0x1b1abfd6, 0xd1cb4336, 0xc747b939, 0xe0e4ce24, 0x00000000,
+0x00000000, 0xcec6b8de, 0x32d89d25, 0xeb2ebfcd, 0x39e7e23e, 0x00000000, 0x00000000, 0xe224c8d7,
+0xc035ebbf, 0xd4d5d52c, 0xbb15bab0, 0x00000000, 0x00000000, 0xcb2a23c0, 0x3831eadb, 0x4c3dd83d,
+0x2ddb13d7, 0x00000000, 0x00000000, 0x41cb4c30, 0xbed5be10, 0xddda3f25, 0x240e4233, 0x00000000,
+0x00000000, 0xf136323b, 0x17cce231, 0x4bd3aac5, 0xc7d9e340, 0x00000000, 0x00000000, 0x3f230000,
+0x36d327d8, 0xc1d3d9dc, 0xd5dcdc1e, 0x000038ec, 0x00000000, 0xac1e0000, 0xc44224e2, 0xdbb32b28,
+0xcc621fe4, 0x00004ce6, 0x00000000, 0x2f2e0000, 0x2cd748d6, 0xd0c5e1c2, 0xd7dfdccb, 0x00002acb,
+0x00000000, 0xc0d90000, 0x152d1dbb, 0x2822c117, 0xf335192b, 0x00003fae, 0x00000000, 0xc2e60000,
+0xd3cf3a2e, 0x38e7dfe1, 0xc6c54e21, 0x0000edd6, 0x00000000, 0x38cc0000, 0xc53a0ec4, 0xe04628cf,
+0x353f3716, 0x00003bec, 0x00000000, 0x3b310000, 0x3df3d535, 0xcac7cfd8, 0x431f42c1, 0x0000d434,
+0x00000000, 0x223e0000, 0x45302bd5, 0x41c32b1b, 0x3a22bc1f, 0x0000b938, 0x00000000, 0x281a0000,
+0x3fccdb1f, 0xf4c3d6d7, 0x3f1f34e3, 0x00002bc8, 0x00000000, 0xe9e50000, 0x2dd63d2c, 0xd9e6ddea,
+0xd8ec412d, 0x00003921, 0x00000000, 0xc6d70000, 0xc8332913, 0xe4e1e742, 0xcec43fd8, 0x0000c9c3,
+0x00000000, 0xfcd80000, 0xbedc2cdb, 0x3bd2e3e5, 0xbacf190d, 0x0000cdc0, 0x00000000, 0xbeb50000,
+0x53e82f31, 0xdc2e20c3, 0x320e3ad4, 0x0000393b, 0x00000000, 0x31cc0000, 0x43251346, 0xd3a8ef2f,
+0xddb735d3, 0x0000ea1d, 0x00000000, 0xcbb80000, 0x2ca9c6b7, 0xd1203c22, 0x20e3b523, 0x0000d92d,
+0x00000000, 0x25d70000, 0x1d283e31, 0xecdcd0d5, 0x376321d7, 0x0000a8e1, 0x00000000, 0x00000000,
+0xdfdc094a, 0x45ee2238, 0x173edc18, 0x5327b7d1, 0x00000000, 0x00000000, 0x2be32c21, 0x2fbdfcc5,
+0x4729c6c6, 0xdf31c632, 0x00000000, 0x00000000, 0x463fcf17, 0x3d30eaf4, 0x503f2a3b, 0x20d3e211,
+0x00000000, 0x00000000, 0xddda3410, 0xdc40211c, 0xba4a33fc, 0x38dc2d2d, 0x00000000, 0x00000000,
+0xcbd04829, 0x44db2828, 0xd7401dbd, 0xfb2ee3b5, 0x00000000, 0x00000000, 0x203ae222, 0x2e5f33d4,
+0x35c29e1b, 0xebd8473a, 0x00000000, 0x00000000, 0x392d2c3b, 0xeee31727, 0xbce82a29, 0xc8d64ad1,
+0x00000000, 0x00000000, 0xc72638bb, 0x0f1d2e48, 0xd1d6d041, 0xe52b3429, 0x00000000, 0x00000000,
+0xdf2054d2, 0xce124a32, 0xc7ce2337, 0x2d1c3e5b, 0x00000000, 0x00000000, 0xa2373ec9, 0xe5d42730,
+0x1b37ae20, 0x34e63823, 0x00000000, 0x00000000, 0xb8152f30, 0x14cf3128, 0x1fcb3323, 0xaf10c72a,
+0x00000000, 0x00000000, 0x14c3cde0, 0x06c0c833, 0x39edda0e, 0xe1242f02, 0x00000000, 0x00000000,
+0xd92b2b3b, 0xccdd2d2d, 0xdf48bf0c, 0x6524211d, 0x00000000, 0x00000000, 0x42dac1b9, 0xebd43232,
+0xe8f3b63c, 0xf1c03acc, 0x00000000, 0x00000000, 0xcbbec923, 0xf835cc24, 0x27ced912, 0xb736df3b,
+0x00000000, 0x00000000, 0x3b26c92a, 0x203b26cb, 0xb041211b, 0x20cc2d3c, 0x00000000, 0x00000000,
+0x1a220000, 0x3d2a37e1, 0xd8ddd54b, 0x16dcc63f, 0x000022d0, 0x00000000, 0xd0e00000, 0x42e8c7d9,
+0x2c1cdae0, 0x363bb432, 0x0000bfd3, 0x00000000, 0xd5eb0000, 0xce42e5be, 0x0834241c, 0xe41d3047,
+0x000021b6, 0x00000000, 0xf5240000, 0xd6ceba2c, 0x451c1c1d, 0x58134d20, 0x00002c2f, 0x00000000,
+0xcd3f0000, 0x25e7201b, 0x1fcb46b5, 0xf2d1352d, 0x0000b01c, 0x00000000, 0xd7490000, 0xd4e7dfb8,
+0xb5d0dfe3, 0x2cd6c4cf, 0x0000dc2f, 0x00000000, 0xe64a0000, 0xdec73927, 0x2c36c4f5, 0x304722d4,
+0x0000cae8, 0x00000000, 0xc3d00000, 0x5215dd30, 0x30c9c0df, 0xb42cd90e, 0x0000f4f7, 0x00000000,
+0xc0cb0000, 0xb0334857, 0xee45d220, 0xbdc7e815, 0x0000e3e1, 0x00000000, 0x3f140000, 0xcee8db3b,
+0xea42d02c, 0x161f24c4, 0x0000cabd, 0x00000000, 0x1ab80000, 0xd52f3130, 0xd7ece6e9, 0xdac9fbd0,
+0x0000ecc5, 0x00000000, 0xc6ec0000, 0xe327cc44, 0x53b01d36, 0xdad6c725, 0x00001d26, 0x00000000,
+0x23c90000, 0xb4d0d227, 0x3c43ebd9, 0x3141d2da, 0x00004130, 0x00000000, 0x1a2d0000, 0xc82e120f,
+0x2ce6d836, 0x2fe3f239, 0x000047d2, 0x00000000, 0xadbe0000, 0x4ed1d9dc, 0x3ad3cf2a, 0xbbe6e340,
+0x000034d6, 0x00000000, 0xd5c20000, 0x35d51ee3, 0xe424e3c9, 0x20db2a18, 0x00002106, 0x00000000,
+0x00000000, 0x33d035bf, 0x2c2bc0d1, 0x26cd2dbe, 0xd5fa3cb2, 0x00000000, 0x00000000, 0x17413ef1,
+0x492e20da, 0xcae7092d, 0xd723cab9, 0x00000000, 0x00000000, 0x24dacb26, 0xec0dd6c3, 0x1aeee31e,
+0x5fc3da15, 0x00000000, 0x00000000, 0xd70b66b3, 0xdc26d42b, 0x3bc544e5, 0x0335e832, 0x00000000,
+0x00000000, 0x333a362a, 0x38dfbc05, 0xdad50ec0, 0x4dcb44af, 0x00000000, 0x00000000, 0xe3afb626,
+0x0ee4e8bd, 0x082d16e1, 0xdad9bb2d, 0x00000000, 0x00000000, 0x37cfbeca, 0xe9c8282d, 0xc8322bb4,
+0x46ec2618, 0x00000000, 0x00000000, 0x2b47bdca, 0xc724cae7, 0xcdd25cc4, 0x1f1ec6ce, 0x00000000,
+0x00000000, 0x2c3e38ac, 0xca3728c5, 0x3801ebc2, 0x19e62637, 0x00000000, 0x00000000, 0x34c5dc2b,
+0x191b2f16, 0xaf352fbc, 0xe3d5b7c5, 0x00000000, 0x00000000, 0x1c242dd5, 0xd6db38c6, 0x2bc32535,
+0x26e13a09, 0x00000000, 0x00000000, 0xf4b630b9, 0xe4d6dc3b, 0xec2024d3, 0xabd226d4, 0x00000000,
+0x00000000, 0xdca0cdd0, 0xd939df53, 0x1f2721b9, 0x3aba0714, 0x00000000, 0x00000000, 0x233d334e,
+0x4cacbb25, 0xd618330e, 0x2fca3a19, 0x00000000, 0x00000000, 0xccb1294a, 0x2224dc38, 0xc53ce349,
+0x17e2df49, 0x00000000, 0x00000000, 0x44f8d61c, 0xea28e21d, 0x39bea820, 0x32d5d143, 0x00000000,
+0x00000000, 0x1943081c, 0xded6d128, 0x4b06c5c2, 0x35e0263e, 0x00000000, 0x00000000, 0xdd30d723,
+0x50d024e3, 0x40cf5315, 0x39c8d92e, 0x00000000, 0x00000000, 0x23d3d9e3, 0xbacb3154, 0x2cd720db,
+0xd7da3d40, 0x00000000, 0x00000000, 0xb2be1611, 0x4006db40, 0x311f361b, 0xd42e2e36, 0x00000000,
+0x00000000, 0x17c4b2d2, 0x3bceed46, 0x18443a33, 0xe4ce27f6, 0x00000000, 0x00000000, 0xe6e206e1,
+0xde2826d2, 0x4ed8c805, 0x1de1cdc6, 0x00000000, 0x00000000, 0xde34e7d3, 0xc83dc5e5, 0xe1132742,
+0xd5bf41d9, 0x00000000, 0x00000000, 0x34441a3f, 0x40e249b9, 0xf3381e30, 0x26e5c517, 0x00000000,
+0x00000000, 0xd9dcc9ef, 0x402f37d4, 0xc3273ce4, 0xc9cfd8e6, 0x00000000, 0x00000000, 0x2fb806f1,
+0x2130decf, 0x0cc0312d, 0x29452842, 0x00000000, 0x00000000, 0x2ed7c130, 0xdf3bf23f, 0x38dab6b2,
+0xd3444746, 0x00000000, 0x00000000, 0x3c0bd01f, 0xc833e8cd, 0x4824403e, 0xaee34927, 0x00000000,
+0x00000000, 0xdcf1cfc2, 0xd534ce26, 0xc8c32a1f, 0xc242c923, 0x00000000, 0x00000000, 0x1ad2cc2d,
+0x0d2223d1, 0x32253641, 0x1c35c4cd, 0x00000000, 0x00000000, 0x1ddc1dbd, 0xde3cc0dc, 0x0b2c2325,
+0x3eeb3621, 0x00000000, 0x00000000, 0xd3d7db33, 0xcb16d0ed, 0xdf1af232, 0x3132042d, 0x00000000,
+0x00000000, 0xe6420000, 0x252ecc43, 0x443aa42b, 0xd5db293e, 0x0000e632, 0x00000000, 0x1ec00000,
+0x0d25cb24, 0xd4ebcfc6, 0x14030ab1, 0x0000d8ba, 0x00000000, 0x13340000, 0x1b31df31, 0xcb301e44,
+0x564920cc, 0x000049d9, 0x00000000, 0x34250000, 0xebf121f5, 0xd2cab33b, 0xc926cec9, 0x00002b21,
+0x00000000, 0xb62a0000, 0x11ededbd, 0x10e246c8, 0xbbd63e1d, 0x0000d840, 0x00000000, 0xca4f0000,
+0xcdbb4044, 0x3320e6dd, 0xcee3cbea, 0x0000f048, 0x00000000, 0xf3270000, 0xc545c8ca, 0xd91b4240,
+0xdf1dc4c8, 0x000044b6, 0x00000000, 0xe4380000, 0x34c7d2c3, 0xccd9e522, 0x37d4e4e7, 0x0000b4cf,
+0x00000000, 0x44da0000, 0x44e03cd8, 0xd5533017, 0xfbd838ed, 0x0000c037, 0x00000000, 0x3d2e0000,
+0x1ad632dc, 0xf6f84de8, 0x2ab01bcf, 0x0000c5ce, 0x00000000, 0x33e00000, 0xbf242f42, 0xfb2605c2,
+0x3cdd23c0, 0x0000ef39, 0x00000000, 0xd6dc0000, 0xde2a1323, 0xcd30bf30, 0xd43b1ae3, 0x0000c714,
+0x00000000, 0xd6d40000, 0x18c0ca3e, 0xc01c1bc0, 0xdeb1b836, 0x00002dd2, 0x00000000, 0xe9450000,
+0x35d31c42, 0xdd381b15, 0xbf3cdd15, 0x00002428, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x62ea8129, 0xc91aa231, 0xbb44af54, 0xefaed019, 0xf253b128, 0x31da7d4f, 0x222e8558, 0x3c649282,
+0xb08f0fd5, 0xd6fdf6e9, 0xd44465e1, 0x91f63859, 0x28e43bd0, 0x552b2bbc, 0x22cd876f, 0x663ac13f,
+0xe8218f45, 0x278584b0, 0xad13a4f4, 0x2b82f157, 0xd0a6245e, 0x2a4586cd, 0xd08f9e08, 0x4527b024,
+0x1e4358b3, 0x8c24f783, 0x77f1991c, 0x5c7afd54, 0x5b15252b, 0x664d25ba, 0x3c897601, 0x88364e8c,
+0xe86430ca, 0x6ad0d1a5, 0xc3cc3e08, 0x9bffbd0f, 0x703ae95e, 0xa0a91cfd, 0xe0c26f76, 0xee9de372,
+0xd70ebb79, 0x4012352d, 0xf9edae2d, 0xb851949a, 0x89e5b526, 0x52753020, 0x07d12a87, 0x9ef89ae9,
+0x65dd3a22, 0x7be8ada4, 0x22de9d16, 0x3acc1377, 0x24e3ecdc, 0x051faabb, 0x2710ddd0, 0xe10cd952,
+0x0769aae0, 0x04565d9a, 0xeeaaec2c, 0xcb9f12ed, 0x93f32d65, 0x10740ff9, 0x9b424cd6, 0xca25ec6c,
+0x4662ab6e, 0x9af71ed2, 0x6e99e78b, 0xa6081e2d, 0x98f414c1, 0x3af017d5, 0xfb846775, 0xeb7eb09b,
+0xcddf798f, 0x8a029645, 0xadbc2b4f, 0xa699505f, 0xfdf5d3ca, 0xf99b0e86, 0xa958a001, 0x3c33c3bb,
+0x3fdc4b11, 0x0ad413a8, 0x4246342f, 0x745971ce, 0x56b03202, 0x7bf76e9c, 0x78fd9536, 0x346b743d,
+0xb6ca3ef5, 0x1bfcd131, 0xc132b053, 0x37c6b1da, 0x40bd5ab1, 0x0417ccc6, 0xe472551b, 0x431854f8,
+0x8b5d2f2d, 0xa2d9f0a3, 0xc547fbcb, 0x8703550a, 0xcdadb145, 0xe5c89707, 0x0328ce29, 0xd8e29825,
+0x7eab16cd, 0x94167a25, 0xfda9fc22, 0xc34be08d, 0x6aeba18a, 0x7e465273, 0xe53732fa, 0x08f5e8d3,
+0x874ba296, 0x40ef331f, 0x43d92943, 0x5ed88d8f, 0x9f0df290, 0xdc350034, 0x5d94cbbd, 0x4d89b9fd,
+0xd2610a7f, 0x984557e9, 0x40c4a3d7, 0x0d5a1007, 0xc70fc77e, 0x46f623c7, 0x54b1a106, 0xf886e71d,
+0x72c4ecab, 0x5e4b9028, 0xf73869ff, 0x93c759df, 0x4e1f3f63, 0x4ce818a5, 0x81073d1c, 0xcd2e5f51,
+0x86fecfb3, 0xe0d383f0, 0x028ed120, 0x0a10c677, 0x5b6dd641, 0xbc9b2c97, 0xc188fd1a, 0x1f541bd6,
+0x4bbdab31, 0x2cee799b, 0xad70c922, 0xa6e51b28, 0xe60e2e44, 0x7f9a5de4, 0x2c55e1b8, 0x133f269d,
+0xa92bd0f5, 0xf84f575e, 0x6ecde27e, 0x819756b2, 0x1977a95d, 0xf2fe95b5, 0x49205968, 0x33e83acd,
+0x1e12bf67, 0xb877646f, 0x20ac05cc, 0xc9c32771, 0x931503be, 0xab5cb678, 0x04376062, 0x8b036000,
+0xb673afef, 0x912ba442, 0x4cb7f1c3, 0x55475211, 0x7b5b51a7, 0x19b28678, 0xb0e113e0, 0x362468b2,
+0x3022a822, 0xe2b47894, 0xe4e3b327, 0xa942f3e4, 0x4002151b, 0x75efe93c, 0xfd99131d, 0x03100e6a,
+0xc4fec172, 0xe542c4c2, 0xab841397, 0xca3689ed, 0xf4bea8b6, 0xd56568bc, 0x9209be50, 0x4f144878
+
+soft_output0 =
+0x7f817f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x817f7f7f,
+0x81817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x7f818181, 0x81818181, 0x7f818181, 0x81818181,
+0x817f8181, 0x7f7f7f7f, 0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f7f8181, 0x7f7f7f7f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x81818181,
+0x8181817f, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f7f, 0x81817f7f, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x81817f7f,
+0x7f81817f, 0x81818181, 0x7f818181, 0x81818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x81818181, 0x817f817f, 0x817f7f7f,
+0x7f7f817f, 0x817f8181, 0x817f7f7f, 0x817f8181, 0x7f818181, 0x7f81817f, 0x7f818181, 0x7f817f81,
+0x817f8181, 0x817f817f, 0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f7f,
+0x81818181, 0x81817f81, 0x7f7f817f, 0x81817f7f, 0x81818181, 0x8181817f, 0x8181817f, 0x7f7f7f7f,
+0x817f817f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x81818181, 0x7f817f81, 0x817f7f7f,
+0x7f817f81, 0x817f7f7f, 0x7f7f817f, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f817f7f, 0x81817f81,
+0x7f7f8181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x7f817f81,
+0x8181817f, 0x7f7f7f81, 0x81818181, 0x7f7f7f7f, 0x7f817f81, 0x7f817f81, 0x7f7f817f, 0x817f7f7f,
+0x81817f81, 0x8181817f, 0x81817f81, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x81817f7f, 0x81817f81,
+0x817f817f, 0x81817f81, 0x81818181, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f817f7f,
+0x81818181, 0x817f8181, 0x8181817f, 0x7f817f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81,
+0x81817f7f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f817f,
+0x817f817f, 0x817f8181, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x7f817f7f, 0x81818181, 0x7f818181,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f81, 0x81818181, 0x7f7f7f81, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x7f818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f7f81, 0x8181817f, 0x81817f7f, 0x7f817f7f, 0x8181817f,
+0x817f7f81, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x817f8181, 0x7f7f817f, 0x81817f7f, 0x817f817f,
+0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f8181, 0x817f817f,
+0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x7f7f817f, 0x7f818181, 0x817f8181, 0x7f81817f,
+0x7f81817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f7f817f, 0x817f7f81, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x81817f81, 0x7f81817f, 0x7f7f817f,
+0x81817f81, 0x7f7f817f, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f7f81, 0x817f817f,
+0x7f817f7f, 0x7f7f7f81, 0x7f817f81, 0x81817f81, 0x817f817f, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181,
+0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f81817f, 0x7f81817f,
+0x7f7f817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f81, 0x817f7f7f,
+0x8181817f, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f7f7f, 0x81817f81,
+0x81817f7f, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x81818181, 0x7f7f7f81, 0x817f817f, 0x81818181,
+0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x817f817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f, 0x81818181, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f81817f, 0x81817f7f, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x7f817f7f, 0x817f7f81, 0x7f817f7f, 0x817f8181, 0x81817f81,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x81818181, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f818181,
+0x7f817f81, 0x817f8181, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x7f81817f, 0x817f7f81, 0x81818181, 0x7f818181, 0x817f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x81817f7f, 0x7f7f7f7f, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f7f,
+0x817f7f81, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x8181817f, 0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f817f, 0x81817f7f, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x8181817f, 0x7f81817f,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x817f7f7f, 0x817f7f81, 0x817f7f81, 0x817f7f7f,
+0x817f817f, 0x817f8181, 0x7f817f7f, 0x817f7f7f, 0x7f817f81, 0x7f817f81, 0x817f817f, 0x7f81817f,
+0x81817f7f, 0x7f7f7f81, 0x7f7f8181, 0x81817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x817f8181,
+0x81818181, 0x81817f81, 0x7f817f81, 0x7f7f7f81, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f817f, 0x7f818181, 0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x7f81817f,
+0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f7f81, 0x7f817f7f,
+0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f7f, 0x817f7f81, 0x817f7f81,
+0x81817f81, 0x7f81817f, 0x81817f7f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x81818181,
+0x817f817f, 0x817f8181, 0x81818181, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x7f7f817f,
+0x817f8181, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x81818181, 0x7f7f817f, 0x817f7f81, 0x81817f7f,
+0x817f8181, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x817f7f81, 0x7f7f817f,
+0x7f818181, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f7f7f7f, 0x8181817f,
+0x817f817f, 0x81818181, 0x7f7f8181, 0x817f817f, 0x81818181, 0x7f817f81, 0x817f7f7f, 0x81817f7f,
+0x7f81817f, 0x8181817f, 0x817f7f81, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x817f7f81, 0x81818181, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x817f7f81,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x81817f7f, 0x81818181, 0x8181817f, 0x7f817f7f,
+0x81817f81, 0x7f817f7f, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f817f81, 0x7f818181, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f7f817f, 0x817f817f, 0x7f81817f,
+0x7f818181, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f81, 0x8181817f, 0x81817f81, 0x817f817f,
+0x7f7f7f7f, 0x817f817f, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x81817f7f,
+0x817f7f7f, 0x7f817f7f, 0x7f7f8181, 0x7f7f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f8181, 0x8181817f,
+0x81817f81, 0x817f7f7f, 0x8181817f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x7f7f817f, 0x7f818181,
+0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f81817f,
+0x7f817f7f, 0x81817f7f, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f7f7f7f, 0x81817f81, 0x817f7f7f, 0x7f818181, 0x7f7f817f,
+0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f7f817f,
+0x8181817f, 0x7f81817f, 0x8181817f, 0x7f7f7f81, 0x817f817f, 0x81817f81, 0x817f817f, 0x81817f81,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x817f7f7f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x7f7f8181,
+0x817f817f, 0x8181817f, 0x817f7f81, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f818181,
+0x7f818181, 0x817f817f, 0x81817f81, 0x817f8181, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f7f, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f817f, 0x7f818181, 0x81818181,
+0x7f7f8181, 0x817f8181, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x81817f7f, 0x8181817f, 0x81817f81,
+0x8181817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f7f7f81, 0x81818181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x81817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x817f817f, 0x817f817f,
+0x817f817f, 0x7f817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x8181817f,
+0x7f817f7f, 0x7f817f81, 0x817f7f7f, 0x817f7f7f, 0x817f8181, 0x81817f7f, 0x817f7f81, 0x81817f81,
+0x7f81817f, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x8181817f, 0x7f81817f, 0x817f8181, 0x81818181,
+0x817f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f7f, 0x81818181,
+0x7f7f817f, 0x817f7f81, 0x81817f81, 0x7f7f7f81, 0x81817f81, 0x81817f81, 0x817f7f81, 0x8181817f,
+0x7f7f8181, 0x817f8181, 0x817f7f81, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x817f7f81, 0x7f818181, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x7f817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f817f, 0x817f7f7f, 0x7f817f7f,
+0x7f81817f, 0x7f817f7f, 0x7f818181, 0x8181817f, 0x7f7f7f81, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x81817f7f, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x817f7f81, 0x817f817f, 0x7f7f7f81, 0x8181817f, 0x817f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x81817f7f, 0x81817f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f8181, 0x7f817f7f, 0x7f818181, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x817f817f,
+0x7f7f7f81, 0x81818181, 0x81817f7f, 0x817f7f81, 0x7f817f81, 0x8181817f, 0x7f7f8181, 0x8181817f,
+0x817f7f81, 0x81817f81, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f7f8181, 0x7f7f817f, 0x817f7f81, 0x81817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f817f7f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x817f817f, 0x81817f7f,
+0x817f8181, 0x7f7f8181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f817f7f, 0x817f7f81, 0x7f817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f7f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f818181, 0x817f817f, 0x817f817f, 0x81817f7f, 0x817f7f7f,
+0x8181817f, 0x7f81817f, 0x817f7f7f, 0x817f7f81, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181,
+0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f81, 0x81817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181,
+0x7f81817f, 0x7f7f7f81, 0x7f818181, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f8181, 0x81817f81, 0x7f81817f, 0x81818181, 0x817f7f81, 0x817f8181, 0x7f818181, 0x81817f81,
+0x81818181, 0x81817f81, 0x817f817f, 0x7f817f7f, 0x7f817f81, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f7f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x7f817f7f, 0x817f8181,
+0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x81818181, 0x7f818181, 0x81817f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x81818181, 0x7f7f817f,
+0x81817f81, 0x817f7f81, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x81817f7f, 0x817f8181,
+0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f8181, 0x817f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x7f817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x7f818181, 0x7f817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81818181, 0x81817f7f, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f8181,
+0x7f7f817f, 0x7f817f81, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x8181817f, 0x81817f81,
+0x7f7f7f7f, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x7f817f81,
+0x81818181, 0x817f8181, 0x81817f81, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x8181817f, 0x7f7f817f,
+0x81818181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x8181817f, 0x7f817f7f, 0x817f7f81, 0x817f7f81,
+0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f817f, 0x817f8181, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f818181, 0x8181817f, 0x7f818181,
+0x81817f81, 0x8181817f, 0x81817f81, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f7f7f,
+0x81817f81, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x7f7f7f7f, 0x817f817f, 0x7f7f817f, 0x7f81817f,
+0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x81818181, 0x817f817f,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x8181817f, 0x817f8181, 0x817f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x81817f7f, 0x7f817f81, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x817f7f81, 0x81818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x817f8181, 0x81817f81, 0x817f7f81,
+0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f7f81, 0x7f817f7f, 0x8181817f, 0x81818181,
+0x7f7f7f7f, 0x81817f81, 0x8181817f, 0x81818181, 0x7f7f817f, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x817f8181, 0x817f817f, 0x817f8181, 0x817f817f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x81818181,
+0x7f7f7f81, 0x81817f81, 0x8181817f, 0x817f7f81, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f7f81,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f8181,
+0x7f818181, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x8181817f, 0x7f818181, 0x7f7f8181, 0x817f7f81,
+0x817f8181, 0x8181817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f81817f,
+0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x817f817f,
+0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x817f817f, 0x7f7f7f81, 0x81818181, 0x81817f7f,
+0x7f7f817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x817f8181, 0x7f7f7f7f, 0x7f7f7f81, 0x7f818181,
+0x81817f7f, 0x8181817f, 0x7f7f8181, 0x7f81817f, 0x817f817f, 0x817f817f, 0x7f81817f, 0x81817f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f81817f, 0x817f7f7f, 0x8181817f, 0x7f7f817f, 0x81817f81, 0x81817f7f,
+0x7f81817f, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f818181,
+0x817f817f, 0x7f818181, 0x817f7f81, 0x81817f81, 0x81817f81, 0x7f81817f, 0x7f81817f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81818181, 0x8181817f, 0x81818181,
+0x7f81817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f817f81, 0x817f7f81, 0x7f817f81,
+0x81818181, 0x7f7f7f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f817f, 0x81818181, 0x7f7f817f, 0x7f7f817f,
+0x7f7f817f, 0x817f817f, 0x81817f81, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x817f817f, 0x8181817f,
+0x7f7f817f, 0x81817f7f, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f817f81, 0x7f7f7f7f, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f8181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x81818181, 0x7f817f81,
+0x7f7f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81,
+0x81817f81, 0x817f7f81, 0x817f7f7f, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x7f7f7f7f, 0x8181817f,
+0x7f817f7f, 0x81817f81, 0x7f817f7f, 0x7f817f81, 0x81818181, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x7f818181, 0x81817f7f,
+0x817f7f81, 0x817f7f81, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x8181817f, 0x81817f7f,
+0x7f817f7f, 0x7f818181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x81818181,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f81, 0x81818181, 0x817f817f,
+0x7f817f7f, 0x7f81817f, 0x8181817f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181,
+0x7f7f7f81, 0x81817f7f, 0x7f7f7f81, 0x7f817f7f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x7f818181, 0x817f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x817f817f, 0x817f8181, 0x7f818181, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f818181, 0x817f8181, 0x817f817f, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x817f817f, 0x8181817f,
+0x81818181, 0x817f7f7f, 0x817f8181, 0x817f7f81, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f,
+0x7f817f81, 0x81818181, 0x817f8181, 0x7f818181, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f,
+0x817f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f818181, 0x81817f81, 0x7f818181, 0x7f818181, 0x7f817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f,
+0x81817f7f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f7f, 0x81817f7f, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81817f7f, 0x817f817f, 0x817f817f, 0x7f818181, 0x817f817f, 0x817f7f81, 0x7f81817f,
+0x7f817f7f, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x81818181,
+0x7f817f7f, 0x7f7f8181, 0x817f817f, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f7f817f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x81818181,
+0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x7f7f7f81, 0x817f8181, 0x7f818181,
+0x7f7f7f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f817f7f, 0x817f817f, 0x7f818181, 0x8181817f,
+0x7f7f8181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x81817f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f81,
+0x81818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x7f818181, 0x81817f7f, 0x7f7f817f, 0x81817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x8181817f, 0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f7f817f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f, 0x81818181, 0x81817f7f,
+0x7f7f7f7f, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f, 0x817f8181,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x817f817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x8181817f,
+0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x817f7f7f, 0x81818181, 0x817f8181, 0x7f81817f,
+0x81817f81, 0x7f817f7f, 0x7f7f8181, 0x817f8181, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f7f7f,
+0x7f7f8181, 0x817f8181, 0x817f7f7f, 0x81817f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x7f7f7f7f,
+0x7f81817f, 0x81817f7f, 0x7f7f7f7f, 0x817f8181, 0x7f7f817f, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f, 0x81817f81,
+0x7f817f81, 0x7f7f817f, 0x7f7f817f, 0x7f7f817f, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x8181817f, 0x7f817f81,
+0x7f817f81, 0x8181817f, 0x7f7f817f, 0x817f7f7f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x817f7f81, 0x81818181, 0x7f817f81, 0x817f8181, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x817f817f, 0x81817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x7f7f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x81817f81,
+0x81817f81, 0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f817f,
+0x81817f81, 0x817f7f7f, 0x817f7f81, 0x7f7f817f, 0x81818181, 0x7f818181, 0x817f8181, 0x817f7f81,
+0x8181817f, 0x7f7f8181, 0x817f8181, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f7f,
+0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x81817f7f, 0x817f817f, 0x7f818181, 0x7f7f817f, 0x7f818181,
+0x7f818181, 0x7f7f817f, 0x817f8181, 0x7f81817f, 0x7f7f7f81, 0x7f817f81, 0x7f7f8181, 0x817f817f,
+0x81817f81, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x7f818181, 0x817f7f81,
+0x7f7f817f, 0x7f7f817f, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181,
+0x7f817f7f, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x817f7f7f,
+0x817f7f7f, 0x817f8181, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f,
+0x7f7f8181, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f81, 0x81817f7f, 0x7f817f7f, 0x817f8181, 0x8181817f, 0x7f818181, 0x8181817f,
+0x817f7f7f, 0x81818181, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f817f, 0x81817f7f, 0x8181817f,
+0x7f7f7f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x81817f81, 0x81817f7f, 0x7f7f817f, 0x7f818181,
+0x817f8181, 0x817f817f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81,
+0x7f7f817f, 0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f817f81, 0x7f817f81, 0x8181817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f817f81,
+0x817f817f, 0x7f817f7f, 0x81818181, 0x7f7f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f7f, 0x7f817f81, 0x817f8181, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x81817f7f, 0x7f7f8181, 0x8181817f, 0x8181817f, 0x7f81817f, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x8181817f,
+0x7f817f81, 0x817f8181, 0x7f7f817f, 0x81817f81, 0x7f818181, 0x7f7f7f7f, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x817f817f, 0x817f8181,
+0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f818181, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f,
+0x7f7f7f81, 0x7f7f8181, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81817f81, 0x7f817f81, 0x81818181, 0x81817f7f, 0x7f7f8181, 0x7f7f817f, 0x817f8181, 0x7f81817f,
+0x7f818181, 0x817f7f81, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f817f7f, 0x8181817f, 0x7f7f7f81, 0x7f81817f, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f7f81, 0x7f81817f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f817f, 0x817f7f7f, 0x817f817f, 0x81817f7f,
+0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f817f81, 0x817f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x8181817f, 0x7f7f7f81,
+0x81817f81, 0x817f7f7f, 0x81818181, 0x7f7f8181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x817f817f, 0x7f7f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x8181817f, 0x7f7f7f81, 0x7f7f8181,
+0x81817f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f7f8181, 0x8181817f, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f,
+0x7f818181, 0x817f8181, 0x817f7f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x81818181, 0x7f817f81,
+0x81818181, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x81817f81, 0x81817f81, 0x817f7f7f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f817f81, 0x81818181,
+0x81817f81, 0x7f7f7f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f7f7f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f7f7f, 0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f7f, 0x7f818181,
+0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f,
+0x7f7f8181, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x81817f7f, 0x7f817f81,
+0x817f817f, 0x7f817f81, 0x81818181, 0x7f81817f, 0x7f81817f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f8181, 0x7f818181, 0x817f7f81, 0x7f7f817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f818181,
+0x7f7f7f81, 0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x81817f81,
+0x7f817f7f, 0x7f7f817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f, 0x8181817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f818181,
+0x7f817f81, 0x81818181, 0x7f81817f, 0x7f817f81, 0x81818181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f817f, 0x7f81817f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x7f818181,
+0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f81817f, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f81,
+0x7f7f8181, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x7f7f7f7f, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f81, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f81817f, 0x817f7f7f,
+0x817f7f81, 0x81817f7f, 0x81817f81, 0x817f817f, 0x81818181, 0x81817f7f, 0x817f817f, 0x7f817f81,
+0x81817f7f, 0x81817f81, 0x81817f81, 0x7f7f7f81, 0x817f7f81, 0x8181817f, 0x7f7f817f, 0x817f817f,
+0x7f7f7f81, 0x817f817f, 0x7f817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x7f818181, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x817f8181,
+0x7f817f81, 0x7f7f7f7f, 0x81817f81, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f81, 0x817f7f7f, 0x7f7f7f81, 0x81817f7f, 0x7f7f8181,
+0x81818181, 0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x8181817f, 0x7f817f7f, 0x81818181,
+0x817f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x817f817f,
+0x817f7f81, 0x81817f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x8181817f, 0x817f8181, 0x7f7f7f7f,
+0x7f818181, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x817f8181, 0x7f81817f,
+0x7f7f7f81, 0x8181817f, 0x81817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x81817f81, 0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x8181817f, 0x7f7f817f,
+0x81817f81, 0x817f8181, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181,
+0x817f817f, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x81818181,
+0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x81817f7f, 0x817f7f81, 0x81817f7f, 0x7f817f7f, 0x81818181,
+0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f7f,
+0x817f8181, 0x7f7f7f7f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x8181817f, 0x81818181, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x8181817f, 0x7f818181, 0x817f7f81,
+0x7f817f81, 0x7f81817f, 0x81818181, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x7f81817f,
+0x7f7f8181, 0x7f817f7f, 0x7f7f7f81, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x817f8181,
+0x7f818181, 0x817f7f7f, 0x817f7f81, 0x7f817f7f, 0x7f81817f, 0x81817f81, 0x7f7f7f7f, 0x8181817f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x7f818181, 0x7f817f7f, 0x7f817f7f, 0x81818181, 0x817f8181,
+0x7f81817f, 0x8181817f, 0x7f7f817f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f817f7f,
+0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f7f81, 0x817f8181, 0x8181817f, 0x817f7f81, 0x7f7f817f,
+0x817f7f7f, 0x7f7f7f81, 0x817f7f81, 0x817f7f7f, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x81817f7f,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f7f, 0x81818181,
+0x81817f81, 0x7f818181, 0x8181817f, 0x8181817f, 0x7f817f81, 0x817f7f81, 0x81817f81, 0x7f81817f,
+0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x817f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f817f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x817f817f, 0x7f7f8181,
+0x81817f7f, 0x817f817f, 0x8181817f, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f81817f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x8181817f, 0x817f8181, 0x817f8181, 0x8181817f, 0x817f8181, 0x7f7f8181,
+0x8181817f, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f817f7f,
+0x8181817f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x817f7f7f, 0x7f81817f, 0x7f818181,
+0x8181817f, 0x7f817f81, 0x817f7f81, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x7f818181, 0x817f8181,
+0x81818181, 0x7f81817f, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x817f7f81, 0x7f817f7f,
+0x81817f81, 0x81818181, 0x7f818181, 0x817f7f7f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f7f7f7f,
+0x7f81817f, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181, 0x7f7f7f81, 0x81818181, 0x817f7f81,
+0x7f81817f, 0x7f817f81, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x81817f81, 0x7f818181, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x817f817f, 0x81818181, 0x817f7f7f, 0x81817f81, 0x7f818181, 0x7f817f7f, 0x7f81817f,
+0x81817f7f, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f817f, 0x81817f81, 0x7f7f8181,
+0x817f817f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x81818181, 0x7f7f7f81,
+0x81818181, 0x7f7f817f, 0x7f81817f, 0x7f7f8181, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x81818181, 0x7f7f7f81, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x817f7f7f, 0x81818181, 0x81818181,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f81, 0x81817f7f, 0x7f818181,
+0x81817f7f, 0x817f817f, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f817f7f, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f81, 0x817f8181, 0x7f81817f,
+0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f81817f, 0x81817f7f, 0x7f7f817f, 0x817f7f7f, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x817f7f81, 0x7f7f7f7f, 0x8181817f,
+0x817f7f7f, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f7f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f81,
+0x7f81817f, 0x817f7f81, 0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f7f, 0x81817f7f, 0x817f817f, 0x7f7f7f7f, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x81817f7f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x817f7f7f, 0x8181817f,
+0x817f817f, 0x7f81817f, 0x817f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x817f7f7f,
+0x7f817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f81, 0x7f817f81,
+0x7f81817f, 0x81818181, 0x81817f81, 0x817f7f7f, 0x81817f7f, 0x81818181, 0x7f7f817f, 0x81818181,
+0x7f7f817f, 0x7f7f7f7f, 0x7f81817f, 0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x8181817f, 0x81818181, 0x81818181, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x81817f7f, 0x817f7f81,
+0x8181817f, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x817f817f, 0x817f817f, 0x81818181, 0x817f817f,
+0x7f7f817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x81817f7f, 0x817f7f7f, 0x81817f81, 0x7f7f7f81,
+0x8181817f, 0x81818181, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x7f7f817f, 0x817f7f81,
+0x7f7f8181, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81, 0x81818181, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f,
+0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x817f7f81, 0x7f817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f,
+0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f81, 0x817f8181,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f817f81, 0x81818181, 0x7f81817f,
+0x817f8181, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f817f7f, 0x817f7f81, 0x817f817f, 0x7f817f81,
+0x7f7f817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f, 0x81817f81, 0x7f817f81, 0x81817f81,
+0x7f818181, 0x8181817f, 0x7f818181, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f817f, 0x7f818181,
+0x81817f7f, 0x817f7f81, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x7f7f8181, 0x817f8181, 0x81817f81,
+0x7f7f8181, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f,
+0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x81817f81, 0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x817f7f81,
+0x81817f81, 0x7f818181, 0x81817f7f, 0x81818181, 0x817f817f, 0x7f7f7f81, 0x7f81817f, 0x7f817f7f,
+0x81818181, 0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f81817f, 0x817f817f, 0x7f81817f,
+0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f818181,
+0x81817f7f, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x7f817f81, 0x81817f7f, 0x7f7f817f, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x81817f7f, 0x7f818181, 0x7f81817f, 0x7f7f7f7f, 0x81817f81, 0x817f817f,
+0x817f8181, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x7f818181, 0x7f818181, 0x7f818181, 0x817f8181,
+0x817f8181, 0x817f7f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x81818181, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f817f7f, 0x7f7f7f7f, 0x81817f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f817f, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x817f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x817f8181, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x8181817f, 0x817f8181, 0x817f817f,
+0x7f7f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f7f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f81, 0x81817f7f, 0x7f818181, 0x81817f7f, 0x81817f7f, 0x8181817f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f817f7f, 0x7f818181, 0x817f8181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f817f, 0x7f817f7f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f817f7f,
+0x7f817f81, 0x7f7f817f, 0x81818181, 0x81817f7f, 0x817f8181, 0x81817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x8181817f, 0x7f81817f, 0x8181817f, 0x817f8181, 0x8181817f, 0x817f7f81, 0x81818181,
+0x81817f81, 0x81817f7f, 0x7f817f81, 0x7f817f81, 0x7f7f7f81, 0x7f81817f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f81, 0x81818181, 0x81818181, 0x7f7f7f81,
+0x7f81817f, 0x7f81817f, 0x817f7f81, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f81817f,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x7f7f817f
+
+e =
+12248
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
new file mode 100644
index 0000000..8ec0ec0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
@@ -0,0 +1,647 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7fb2e1, 0x467f05ef, 0x3cabba6a, 0x1f826cac, 0xbe817fe7, 0x584dab0f, 0xdcb55f81, 0xe47f915f,
+0x37b1a534, 0x4b478145, 0x9db5727f, 0x7fa6943f, 0x819550ea, 0xd18eb72a, 0xa0ba9c10, 0xcf7f817f,
+0x915a957f, 0x2c699d0a, 0x89815c0f, 0x7f569358, 0x1002587f, 0x54314130, 0x817f1b7e, 0x81a85e2a,
+0x5981bdf2, 0x0c81b00f, 0x6781be0e, 0x297fb17f, 0xfd811fb3, 0x7f077fdb, 0xd37fc2ab, 0x817f1024,
+0x81817f7f, 0x3d848ec6, 0x4486cd9c, 0x7f6d7f81, 0x1d7ffa93, 0x813648ca, 0xdc7f125e, 0xaa81a798,
+0x60838ef4, 0x815fcdbd, 0x81cb9d93, 0x817f8188, 0xc8c3d697, 0x817af2d6, 0x36888781, 0x818117ee,
+0x37a67fbf, 0x89f464b2, 0x7f1e7f81, 0x7fe5c17f, 0x8ca1effc, 0xed7f82cf, 0x4a7f5ac6, 0x7fffb8d6,
+0x427f7f73, 0x747f7f06, 0xdfcd22a9, 0x7fb99981, 0x76f77381, 0x2cd70f12, 0xd8b138e1, 0x81a4ea29,
+0x222db281, 0xc3a07fd2, 0x217f8177, 0xd1cd87c4, 0xd181679f, 0x7f7fdee2, 0x7c81a72f, 0x6e7f5a7f,
+0x77b0c96d, 0xff7f8110, 0xe8c6ad46, 0x376ade0a, 0x447f687f, 0x5916d238, 0x88816b81, 0xda7f6d88,
+0xe2b2b55f, 0x750f7fc8, 0xc624d47f, 0xc6837f79, 0x81de5272, 0xd0847f29, 0x81ad587f, 0x3e7f7f61,
+0xc803e070, 0x237ff600, 0x8c01815e, 0x814e0e81, 0x81657eef, 0xab2a62bc, 0x73d42cb4, 0xaaf03a8a,
+0x817fa57f, 0x5e7fe2c3, 0x6deda37f, 0x6e87818d, 0x767f6e4d, 0x5c76819a, 0x8182b6f0, 0xdcd3037f,
+0x81184c7f, 0x7ff1501c, 0x22c7f159, 0x45a6817f, 0x9b53c5e7, 0x57966a5e, 0x0a7f7f81, 0x4a5c155e,
+0xf37fff81, 0xad97f8f2, 0x052f397f, 0x79638181, 0x7f7f7f7f, 0x81e3fae4, 0x7659cf03, 0xbd7a5a81,
+0x46bcab7f, 0xa57f69a1, 0xba818186, 0x38a347a2, 0x91a88ec0, 0xd76087fc, 0x81818b8c, 0x7fa3424e,
+0x7f89ef7f, 0x81ac183d, 0x3aa8912a, 0xc4937da6, 0x7a4c136b, 0x81568e05, 0x8182812b, 0xebb17f1d,
+0x84b87f4c, 0xf4eab6c9, 0x81034197, 0x8183bd0a, 0xa1b92676, 0xceca2ef1, 0x9b7f7f7f, 0x5d813181,
+0x817fea35, 0x0a6c81b0, 0x9a559b4f, 0x93987691, 0xad819510, 0xa47ab324, 0xfa577f7f, 0xbba8ac3e,
+0x6694b753, 0xee63c4d7, 0x17b4ce81, 0x83c0dc81, 0x6a7f4481, 0x81d87fe0, 0x7f5cc5c0, 0xf828ea77,
+0xbb817fa3, 0x3e816619, 0x817f6aab, 0x26417f7f, 0x0c40817f, 0x9cf01834, 0x32b37f7f, 0xe74fd0a7,
+0x7f7f4167, 0x0e7f6ae0, 0x813d81b2, 0x8172027f, 0x4ea6c275, 0x814525de, 0x46817f7f, 0x7fcb2cd1,
+0x7f8198ca, 0x3d7f60aa, 0x8d7fac81, 0xe2c081ed, 0x656f8181, 0xb2ae9365, 0x6ddd8d81, 0x86e0be65,
+0x5495ec58, 0xcb981829, 0x429ee669, 0x81445fc5, 0xd3435724, 0xce51b323, 0x92b16972, 0xf0137f8e,
+0x7f199a7f, 0x81be813c, 0x8155817f, 0xd481037f, 0x167f8181, 0x5ad131d4, 0x7fbc4149, 0x81046d60,
+0x87174b9c, 0x94bc63ba, 0x68817c7f, 0x12ef7f8d, 0x7a81f4f6, 0x7f7f6db9, 0x4823417e, 0xa4989a48,
+0x7e4c787f, 0xa47f8123, 0x819afb20, 0xbf7f447f, 0x8d95af5c, 0x33a6812e, 0x07c75cd5, 0x337f8151,
+0xa2e5e15a, 0x847f7209, 0xf9f4b934, 0x72a77f2f, 0x1a9f2f7e, 0xac224bb2, 0x81467f0c, 0x3f8fd28d,
+0x4a78b07a, 0x5269a71e, 0x4fd57fb2, 0x0b5262bf, 0xea39ca0a, 0x577f3d1e, 0x509481d7, 0xb7816b48,
+0x35c31d7f, 0x818bdc1d, 0x24087fb9, 0x7fe27f07, 0x55866481, 0x7f9edd28, 0x07811ed1, 0x1b317fb2,
+0x8cb19dee, 0x396920a6, 0xd965dd85, 0x9ed5ff47, 0xc97f7f7f, 0x7f8c1d55, 0x06a69701, 0x9e348881,
+0x7f6cb281, 0x388181d1, 0xd07d61ac, 0x7fdef7f1, 0x08177f7f, 0xd87fa1c0, 0xfe9ebeb5, 0x813d3430,
+0x2181811e, 0xf4dab306, 0xa36bbb7f, 0x05e87f7f, 0x957ff3cd, 0xe4814219, 0x7fbf3f81, 0x818a7fab,
+0x43e081d9, 0x87c08729, 0x0db52785, 0x8181b0da, 0x4c94697e, 0x817fa9b2, 0x7f7f81d9, 0x8bda8193,
+0xb6811781, 0x81796220, 0xdb082ac1, 0x2c7f5d3b, 0x8c8103f3, 0x4dcbd01e, 0x7fc1a87f, 0x457f7f23,
+0x5e26bad6, 0x7f8174f3, 0x30109f08, 0xef8526cc, 0xe8690849, 0xd2b981b0, 0x7f7f7fb5, 0x8156ef7f,
+0x921a7f98, 0x7fe6681e, 0x244e497c, 0x5ef68149, 0xbfbcaa7f, 0xf5011204, 0xfe7f8163, 0x8cd08f31,
+0xc88a6b43, 0x7c8105b6, 0xf6d881aa, 0x074c2c2d, 0xd6815c7f, 0x1d15d265, 0xce816f0c, 0x14c77f2e,
+0x9a7f08c4, 0x1a8b8ed2, 0xbe9637ed, 0xb59fac5a, 0xa4d07f91, 0x7f847fab, 0xd981597f, 0x7328575d,
+0xb83af760, 0xb536b941, 0x81c1937f, 0x16b7814d, 0x3f7fb081, 0x7f41e102, 0x727f77ea, 0x9558c381,
+0x48ac819e, 0xa87f99f2, 0x819e7f05, 0x92816eb0, 0x59447f81, 0x4f6cb056, 0x818163a8, 0xe00a64e2,
+0x81bb7fa3, 0x7f816de7, 0x86ac6a50, 0x48a277b0, 0x8e37cd81, 0x7f88e646, 0x023351d8, 0x1ee7a64b,
+0x8145f239, 0x81810859, 0x557f7f7f, 0x6971d292, 0x813d7fdf, 0xe86cade7, 0xdab67f7f, 0x6d4f247f,
+0x9df2297f, 0x1e8172ec, 0x3f81a56d, 0x907f02d3, 0x45663970, 0x817f46a4, 0x817fd1ce, 0x9843b181,
+0x7fdf817f, 0x784881da, 0xd8a281c2, 0xd77f88d8, 0x8c81817f, 0xeb625633, 0x73fe4eae, 0x57787f19,
+0x7f81ea7f, 0xca8143c8, 0x767cbf1d, 0x7fbc81e1, 0x7f9bbeb5, 0x7fea8a12, 0x7f5c7fde, 0xb5fe1685,
+0xa4da81c8, 0x7f6b542e, 0x81814b7f, 0x6252f7d3, 0x55eebb81, 0x6a0824cf, 0x586128f0, 0xded58181,
+0xe32a819b, 0x79c67f20, 0xf2812781, 0x7f58c369, 0x7ffa2d7f, 0x817f81f4, 0x7ffc2c07, 0x457f9981,
+0xff4281c7, 0xd78e6955, 0x3e10e57f, 0x632b817f, 0x7f0197d1, 0x813e7feb, 0xf981ac81, 0x8f81317f,
+0xc37f137d, 0x01918101, 0x81b007a4, 0xaab059ad, 0x7f7f81f7, 0x6ac590a9, 0x817f81a0, 0x68816067,
+0x0ae08182, 0xb47fb268, 0x33d94a7f, 0xbf43d243, 0xccff8e4e, 0x44ebe23f, 0x0d4cfd2e, 0x7f81947f,
+0x81d1cee8, 0xda0e16a3, 0x34a74376, 0x117b81ae, 0x1d853f6b, 0x81d6d2ed, 0x8d7f5be6, 0xcf1fb4a0,
+0x3e1ec13a, 0x7fed0cf4, 0x65d3817f, 0x0a1fec83, 0x7fc4811f, 0x666381c1, 0x8147c754, 0xa9cf7f53,
+0xa076cf81, 0x4c7a4712, 0x1a814ff5, 0x9e7f8175, 0x8181698b, 0x7f1a7f63, 0x8191f19f, 0xb1037fa8,
+0x7f52aa2e, 0x42b65c09, 0x94afab7f, 0xbda37dda, 0x81f2d66b, 0x3e737f1f, 0xcb816031, 0xd56181ef,
+0x2c6ffb81, 0x44852329, 0x1b4b81cc, 0x055a7bb7, 0x4c6f2e1d, 0xb14ae1b7, 0x7f43c2c4, 0x2368b80d,
+0x7f7ffb9f, 0x990b0523, 0x74b33ea5, 0xd64c8199, 0x98ed81a2, 0x311bc8e9, 0x599963cf, 0xb0eeed4c,
+0x8181ed70, 0x42023428, 0xd00270bc, 0x812a7fd3, 0x7fc4101a, 0x3448d8db, 0x068814a8, 0xfeb5701c,
+0x46db1481, 0x3cc5b001, 0x8181c2b3, 0x9c3d7f7f, 0x7f13e346, 0x2b75819c, 0xf57fcfe1, 0xfdaac581,
+0x7f814c6f, 0x7f186b39, 0x7f818150, 0xea7f5b7f, 0x816776b0, 0xb8657f57, 0x7f447f5e, 0xc3628122,
+0x84849d7f, 0x7f8cb914, 0x92813dd5, 0x81557a3a, 0x6b4cbf7f, 0xc6818b94, 0x7fbb7f98, 0x3c88812d,
+0x8de4267f, 0x8dee81fd, 0x37f98131, 0x3d8164d2, 0xd97f8181, 0x3ccaebf9, 0x8165cb7f, 0x63cb81d3,
+0x817fea94, 0x48817fa1, 0x4ea0b16b, 0x3cb5ab6f, 0x3148f975, 0x8c7f1ab5, 0x7fae5a87, 0xad06c881,
+0x0681c187, 0x81a5a11b, 0xe29ea383, 0xf07f536d, 0x81b0e702, 0xc37fbb59, 0x9e6167e8, 0x3f55c9be,
+0x819a40a9, 0x6450b823, 0x15927b65, 0x72a149d4, 0x6c280b5c, 0x5d7fd8f3, 0x998d831a, 0xbb7f817f,
+0x10ab3f81, 0x96f65101, 0x257f743a, 0x7f04a024, 0xe0c981b4, 0x81163a22, 0x8e197481, 0x21addfdc,
+0x7f2dcdaa, 0x787f4407, 0x6b7f81ce, 0x9fd252c5, 0x85e8979b, 0xb049819d, 0x8f7f7f4d, 0xbe284c7f,
+0x78135181, 0x5d33db0a, 0x8123817f, 0x81496a7f, 0x81889281, 0x8145bf37, 0x2e9f7fdf, 0xe4543a2d,
+0x811e6024, 0x7f62e6ba, 0xaad07f1f, 0x4f73894f, 0x4c7f8181, 0x57817f06, 0xd27feb81, 0xcf1a815c,
+0xa57fbe7f, 0x684f7fdc, 0x81f6cbc0, 0xb72bf82f, 0xda6d448f, 0xc6157f36, 0x7f81407f, 0x9a8c4719,
+0x5fdf81dd, 0xaf817f0f, 0x813c11da, 0xd7ec1181, 0x570186e7, 0x8181f41e, 0xe5b8a2bb, 0x819051f3,
+0x2a7fd68f, 0x37a13ac3, 0x5b81fd38, 0x6342817f, 0x84697f6e, 0x7f5eddfa, 0x6abc81d1, 0x8151d9d8,
+0x3e5c6c53, 0x2b397fc6, 0x60d58548, 0xc540b213, 0x67815781, 0x89983030, 0x767c7f81, 0x71effe3a,
+0x817feb42, 0x05818897, 0x810ea318, 0x99bb0e8a, 0xf1dd4b7b, 0xae6dcbae, 0x8155adc0, 0x15b4c0c1,
+0x81ac9b14, 0x895057be, 0x9599d781, 0x38968fcd, 0x8171e981, 0x7a62d80c, 0x8681509a, 0x7f5d489b,
+0xa381467f, 0x7fa12952, 0xa07f8109, 0x5acd5d7f, 0xbb7fc77f, 0x531f3429, 0x7fb77f5a, 0x566d89f6,
+0x817d4c23, 0x406a81e6, 0x1381c99c, 0xad89d258, 0xa67f0cad, 0x510b916e, 0x7ffa81a1, 0x0b6a11e1,
+0x2be02284, 0x7f4e4338, 0x817fd023, 0x058174bf, 0x677f950a, 0x97a6a01d, 0x81817f81, 0x136881da,
+0x717f7f9a, 0xbf811404, 0x6714c965, 0x51828181, 0xcaf329a1, 0x8881bc0a, 0x7f7d8305, 0x2c7f5a7f,
+0x7f7f63e9, 0x797fced4, 0x818154f5, 0xf13681c4, 0xc04b1d81, 0x0e81d244, 0xbf3f66bf, 0x5a3f2d7f,
+0xfa931714, 0xce485844, 0x263ae55b, 0x7fd37f81, 0x79477ee4, 0x7f8187e0, 0x81ab8144, 0x7f8d7f7f,
+0x6f715068, 0x7f5577f6, 0x7f487f41, 0x81813b84, 0x33431981, 0x81a181c6, 0xca1b667f, 0xe75a7f71,
+0x168128b0, 0xe0a092d5, 0x6e8164de, 0x2e817f61, 0xc4b1818d, 0xea7f8a32, 0x1098817f, 0x14a18156,
+0xdd568862, 0xd3176a4b, 0x81308181, 0x697b3faa, 0xe256cecb, 0x697f1691, 0x4e228c05, 0x7fa6682a,
+0x7449816e, 0x4558a15f, 0x9f513638, 0x7f7f819c, 0x7fb77aa1, 0x5eaf4912, 0x14817f7f, 0x0853817c,
+0xa47fbe41, 0xdfd77f0e, 0x81371d7f, 0xc9cd7299, 0x81d0673a, 0xb133492f, 0xfd7f4003, 0x897f7f1c,
+0x1990d405, 0x9f3ee2bd, 0xc168817f, 0xc6f57fa4, 0x83ee483e, 0x90f781f6, 0x81dcb39d, 0xd37fe881,
+0x28819181, 0x83da81d4, 0x7251dc7a, 0x7928ffc3, 0x7bca8181, 0x7f7f817b, 0xf6fa907f, 0x37916bd4,
+0x0d3fbc7b, 0xde81bdd0, 0xa0147fdc, 0xbf0f7f0b, 0x25958132, 0x7f6c9931, 0x7f44812c, 0xd4868181,
+0x6d9622ad, 0x817f30b6, 0x3c7f817f, 0x81238823, 0x7f2d5c81, 0x6f81531b, 0x947faff2, 0xa5ea038c,
+0x4268817f, 0x814f8cfc, 0x81481809, 0x814d7f1a, 0x3c87507f, 0xa47f1219, 0x4f65f27f, 0x5d7f2c21,
+0x7f4631a5, 0x5a81475a, 0x7f81ef60, 0x73aaa890, 0x327f7f7f, 0x81b614c1, 0x7fc6477f, 0xe5b7a6be,
+0x55816e73, 0x7ffaffb1, 0xb93d1b81, 0x3ce80fe2, 0x37ec6194, 0xe681e2db, 0x81c1d37f, 0x33a2bad3,
+0x582b8181, 0x7fdc7f25, 0x81978169, 0x9733486f, 0x3de13ef3, 0x247fd5cf, 0xa91d817f, 0x606a7f56,
+0x817f8178, 0xe61d7b08, 0x7fa08181, 0x058bd29b, 0x28237fbf, 0x4f81b057, 0x488d8103, 0xe1817fa5,
+0x81666297, 0xfabc75c8, 0x7ff75edb, 0x4a62fab5, 0x687fad84, 0xa7221c28, 0x773a5a6e, 0xf27f8581,
+0x7f7f9569, 0xa31d812f, 0x81d48457, 0x7f88bcfe, 0xd743b981, 0x7f608102, 0x18de2185, 0x81d77fc4,
+0x937f337f, 0xe67fe52e, 0x95d481da, 0x887f6071, 0x81301872, 0xd9088132, 0x7f7f5a81, 0x8181aba8,
+0x7f9a7fcd, 0x7f7f4136, 0x3d87d3a8, 0xd581d381, 0x5d306ed0, 0x615b98dc, 0x812b3281, 0xdbe5c443,
+0x817f7fe9, 0x815462da, 0x8122da0a, 0xb5817d81, 0xe12bd56c, 0xfa819a68, 0x907f8183, 0x236aa83f,
+0x1b576c9b, 0x5b6424ab, 0x3f3e3953, 0xec81507f, 0xddb43aa9, 0x818134f1, 0x81c37fb0, 0xbf4a7fcf,
+0x810b7f7c, 0x705b81d5, 0x23636581, 0x3caf7f9d, 0xbe765d81, 0x189a11ae, 0x8194cabc, 0x6063c5b0,
+0x0e3c5353, 0x388235bb, 0x81904632, 0x2b9781d3, 0xd78db758, 0x953fe437, 0x7423f22d, 0x81ad9c95,
+0x7fd74748, 0x329b582d, 0xe0e07f7f, 0x7f81ae8e, 0x962fe50c, 0x3b7faf1d, 0xcaeb8e37, 0x7f54276a,
+0x927f6c9a, 0x828143c1, 0x90456105, 0x7f757ff6, 0x796681eb, 0x7478b225, 0x70d852bb, 0x7f280bdb,
+0x56597f47, 0x51e6fff8, 0x1e7f818d, 0xdc4a8175, 0x10712985, 0x2ee6daa1, 0x81c7d046, 0xa1a36e79,
+0x9adf7f7f, 0x812ee70d, 0x91bc1062, 0x443b7fa9, 0x818f47b3, 0x7f817f3b, 0x7981a09c, 0x7f9c817f,
+0x1b46d2cc, 0x786179de, 0xd97f61f2, 0x81b4f213, 0xd381874a, 0x7f4f7fc4, 0x9c81c3d5, 0x17d59842,
+0x7fc9a8fc, 0x996840b5, 0xd5a79281, 0x88378181, 0x7fd4ca81, 0x81ba7fee, 0x5dae297b, 0xc8fa0e5c,
+0x987a5757, 0x5debc016, 0xa64eb973, 0x61a51b81, 0x66509c7f, 0xeb7ad965, 0x7ada817f, 0x4d5bf7bc,
+0x8876b8a4, 0x7d73b4d0, 0x762cb5ad, 0x6ec14d66, 0x6bfdad7f, 0x7f7f810e, 0x81bc2b15, 0x0f817f9c,
+0xc72fe940, 0xc9168b0c, 0x7f6e8d79, 0x7f81fadd, 0x706181f6, 0x678181e7, 0x3f68c5e8, 0xa06d8195,
+0x78d73d7f, 0x7295109a, 0x05897f55, 0xbdc07281, 0x81817fe3, 0xcd157f30, 0x489ca757, 0x53468119,
+0x3f6a81b8, 0x03fe7c43, 0xb511cda3, 0xe581a17f, 0x5e3e3ec9, 0x7f507f96, 0xbe12a481, 0x81006ddd,
+0x49322cb4, 0x27f7a81e, 0xc6085618, 0x8148d270, 0x68668181, 0xec5ed498, 0xa011833a, 0x81475300,
+0x071d3a63, 0xa2c55142, 0x7fe9767f, 0x6e3c21fe, 0xeb63814a, 0x7fd57ffd, 0x9f91630b, 0x475f219f,
+0xbbb5c7bc, 0x686de142, 0xb652909f, 0x6b8e5a7f, 0x7f885858, 0x7f027ee1, 0x7f818191, 0x818881d4,
+0x1b7c017e, 0x8581aac9, 0x627fa790, 0xaf837f7f, 0x69064681, 0x311d32e9, 0x6f7f0ba1, 0x7b81a1c5,
+0x7f4f8144, 0x81e38144, 0x528daa3d, 0x1c098175, 0xba6b0ac7, 0x732614ab, 0x5b2c5d7f, 0x81815ce8,
+0xb37f7fbb, 0xc87f8ec5, 0x81b08181, 0x5bcb8136, 0x7f2524c5, 0xf5e881d8, 0x50ceaf7f, 0xf72387a1,
+0xd4c74e74, 0x663f7fe8, 0x26ae4a7f, 0x5d7f6358, 0x8178bbdb, 0x46f38102, 0xb0327f53, 0xa019f297,
+0xeff57f12, 0x7f7f79e2, 0x8120817f, 0x73e4b322, 0x999c6349, 0x92ba973e, 0x7f7fbc5c, 0x81946449,
+0xaf4b817f, 0xca523d00, 0x81817fbf, 0x3b145a81, 0xec54886e, 0x81cb173e, 0x5f02667f, 0x967a8181,
+0x8a817f81, 0x3cb93c41, 0xfa811336, 0x74feb5a9, 0x821b9081, 0xaea865af, 0xf17f4e71, 0x52810059,
+0xaebc3b36, 0x6a8f7fd2, 0x109de3eb, 0x4c555f48, 0x8166cc78, 0x7f4c7b48, 0xc7d1d381, 0x1381537f,
+0xa0ab5c1f, 0xa00d0039, 0x81157f81, 0x2f206f81, 0xacb45b81, 0x2ec382f3, 0x7ff0383e, 0x44dc5aeb,
+0xc37f81cd, 0x43553306, 0xa63d7f81, 0x7f7f8140, 0x7f7f818a, 0x7d82bd27, 0x817f8b7f, 0xa3579535,
+0xc2e47871, 0x81815a0b, 0x49977081, 0x724cc372, 0xc681c27f, 0x2b7cabf0, 0x3081a6ac, 0xec7f964e,
+0x7fda3ad3, 0x422671a4, 0x60008158, 0x7f738e7f, 0x538e6f81, 0xb73e0ab0, 0x796a6551, 0x81ad178b,
+0x19731c7f, 0x1bf8c26a, 0x4acb7fd4, 0x5121b547, 0xda547fff, 0x7e505ff7, 0x817fff48, 0xa0813934,
+0x3d4f77d1, 0x83f327ef, 0xc7937f6b, 0x357c4a84, 0xc183ca7f, 0xbd6081db, 0x30e0d783, 0x492aa57f,
+0xbba6671e, 0xb062baef, 0x7f817f20, 0x7f267f58, 0x7fb94b3f, 0x447f5b21, 0xb864997f, 0x7fb057f8,
+0xb1401a7f, 0x7fb57f9d, 0xefbb8175, 0x66892581, 0x7f06fa7f, 0x817a90f0, 0x7bd5793b, 0xc37ead24,
+0x6feaa4be, 0x3a548cde, 0x8e81f98c, 0x81b78199, 0xe6c11940, 0x4d647f2f, 0xbc5c8181, 0x8175fa91,
+0x8188864b, 0x85591890, 0x47ce5d57, 0x38a4efb7, 0xce5e739f, 0x81737fd4, 0x6d7f635e, 0x9c861774,
+0x89818262, 0x45bc8114, 0xd1552a89, 0xc68174f8, 0xaf9081d8, 0xcb08e35b, 0xf5c404b2, 0x2ce96576,
+0x11895a36, 0xcf20e0ea, 0x2548e7dc, 0x8f774c59, 0xf85a8f56, 0x7f81ddae, 0x7f7f627f, 0x1481491c,
+0x7f97661b, 0x787f81e0, 0xa2192f7f, 0x6cb37fb0, 0x8181ae27, 0x3f7fafec, 0xce7f5a86, 0xae067f7f,
+0x3c1c8181, 0x817eb443, 0x8e741041, 0x5a4ef2ba, 0x61029de4, 0x9d637e34, 0x819d7fca, 0x8181cd7f,
+0x8175b96c, 0xbc4f6ecf, 0xf826aead, 0x567fa36d, 0x81968197, 0x9f9dcf3e, 0x265c8131, 0x81d9deab,
+0xc21cf772, 0x7f6bd907, 0x313f795b, 0x817f197f, 0x09ecfe43, 0x6114402f, 0xe0995a81, 0x5f263281,
+0xbe7f8158, 0x7f7f26dd, 0xfd7f7f7f, 0x3da2c609, 0x6ce3810d, 0x7f81cd1b, 0x81d68809, 0x42be9c6c,
+0xf3d37f5c, 0x7f81e031, 0x774e0c30, 0x7f8f468f, 0x9ebb42b2, 0x7f817fc0, 0x1376817f, 0x25f78181,
+0x7f8eb3be, 0x20228505, 0x229fe181, 0x81ac277f, 0x4f308129, 0xb8818111, 0x81d47fc7, 0x818181f0,
+0xc27fd34a, 0x9dbc810a, 0x8481d981, 0x61817581, 0x8a2c817f, 0xe7815625, 0x96a7946f, 0x3a7f5d5d,
+0x835f2fc1, 0xb6082dd7, 0x567f687f, 0x838181b6, 0xc663e9ad, 0x517f7fbb, 0xa570adb0, 0x12cfc2b4,
+0xc1587f39, 0xbd8140ba, 0x7f814366, 0xd00981ec, 0xc27f217f, 0x5cd1b2ad, 0x81992c7f, 0xb1b57f62,
+0x3bb9b1de, 0x9213cd8a, 0x814f136e, 0xa5c27fc3, 0x947f7f59, 0x8ef30ddd, 0xd3f290e9, 0x39bc7f8c,
+0x7f814e81, 0x5381ff22, 0x7f81f04f, 0x0adde113, 0x5b93867f, 0x687f8111, 0x7f7f1c60, 0xb856814f,
+0x7f8e8196, 0x5cfb66fc, 0x20310ab4, 0xa2599964, 0x973f0065, 0x817f95d6, 0xa43b7f7f, 0x816bb1c3,
+0x7c7581e9, 0x521770cf, 0x81456be1, 0x5e26818d, 0x3b54057f, 0xd4e231d6, 0x977f0346, 0xe777814e,
+0x81b6095a, 0x7b337fd7, 0x18bb202b, 0x219b7cf9, 0x2bdeaa81, 0x55dcd1d2, 0x8123905c, 0xe463fd74,
+0xd16ec17b, 0xd90f4e3b, 0x817fd97f, 0x817f7f7f, 0x816afd35, 0x3dd87f51, 0xa62f0e5f, 0x9f4766ce,
+0xa933c505, 0x81049129, 0x627f3e7f, 0x025ea181, 0x7b5e4119, 0x0d11aff9, 0x817faaa2, 0xe3bc817f,
+0x7fb27f81, 0xc07bc500, 0x9451c181, 0x1fc6811e, 0x7f9f9e3b, 0x7f4c1a91, 0x7f1f7148, 0x8358819a,
+0x81119a81, 0x16d55f0c, 0xc07f7f2e, 0x467f9991, 0x237f8c7f, 0x81638101, 0x2aacb9ae, 0x4f439f32,
+0xc65e96aa, 0x7f826508, 0x7fa86ab6, 0x602ddbc4, 0xd07fd00a, 0xb0e381dd, 0xca81cc2e, 0x7f7b7f15,
+0x7f81b9bd, 0x21627f38, 0xa481ed5c, 0xeee8d79b, 0x64369481, 0xb97f81b1, 0xf443d7e8, 0x50a410b8,
+0xd87ffbbe, 0x18589760, 0x814998d5, 0xc1814b2f, 0x7fc33b7f, 0xd25b7335, 0xb6b2987f, 0x988a7f48,
+0x9aa4fb81, 0x597fd920, 0x7f4e7f9a, 0x7f819892, 0x81daeac9, 0x7f538fcf, 0xac7f8198, 0xd2529c90,
+0x0ff00ba8, 0x765cb53e, 0x7f0fd3ab, 0x0d81cb33, 0x81989961, 0xc13c7f25, 0x20d6a6bf, 0x7f817fd0,
+0x6f6594db, 0xec8c68eb, 0x638194a0, 0x3b89815c, 0x81734c65, 0xaeb69ec3, 0xd20b6440, 0x2f71b6dc,
+0xc990816e, 0xb6077fda, 0x7f4cc48a, 0x816aa8e8, 0x817f397a, 0xfb8181b7, 0xe64d11e2, 0xe97f1576,
+0x10706f7f, 0x9b935d4c, 0xaf7f3547, 0x7f175ec9, 0x7632a981, 0x2f61d4f4, 0x7a597f81, 0x499e7f00,
+0x7f81315e, 0x81c4230c, 0x8cb66a2e, 0xe76a8105, 0x81817fc6, 0x7f0e50bd, 0x83ba337f, 0x81009281,
+0xcac68465, 0x617fd326, 0x893981e4, 0x7f8ed9b3, 0x59467f7f, 0x0181e258, 0x7f81b281, 0xc9816629,
+0x7fbc8181, 0x08e1cadd, 0xa8328181, 0x76b6e071, 0xb36d7feb, 0x505490d7, 0x09d5dd31, 0xba81632d,
+0x7f7f6fd0, 0x9e45813c, 0x7c4c4f70, 0xd97f5090, 0x247f335c, 0x357fbb4d, 0x267fd5c8, 0x26d08181,
+0x51447fa8, 0x81358efb, 0xb9197f52, 0x40aadca1, 0x7f6781aa, 0xaf272a09, 0x8177a4b2, 0x497fb515,
+0x819b7f7f, 0x8b817f41, 0x257f7f92, 0xa8d2244e, 0x477af9ef, 0xa8817f36, 0x5ca681f5, 0x7f1a76cb,
+0x8181c5f1, 0xc4ddc7aa, 0x81a1c2bc, 0x7f466fa2, 0x625c237f, 0x3ddd1f44, 0x4f54fdde, 0xa281f2d5,
+0x95d14e95, 0xf26e7fd4, 0x9a813a90, 0x8154361c, 0x327f7f42, 0x7fa2983b, 0xd9c28197, 0xf00d1898,
+0xb95848d4, 0x387f81f0, 0x9f8e7f4a, 0x1c5cb9ec, 0x1f63b5fc, 0x187f7dcd, 0x7f1c7f05, 0xa855e2cc,
+0x5a747f98, 0x7fa1b4ee, 0xe8e51aaa, 0x7f81ec81, 0x38818175, 0x81815f07, 0x84888181, 0x81810852,
+0x316e0060, 0x819b1c6e, 0x3d814577, 0x5ecc5d81, 0x5e81814c, 0x7f76914d, 0xfc7f814b, 0xd2819d96,
+0x70a34ad0, 0x7fd544f3, 0x71e51581, 0x817d45a4, 0x7f479a68, 0x42447fae, 0x9a974f7f, 0x817fbbd2,
+0x989f367f, 0x78fa30c0, 0xbb902e75, 0x7fda7f02, 0x7f82c5b8, 0x33c325c4, 0xdf89815c, 0x81c37f33,
+0x52f37ffc, 0x7fcc4702, 0x81488124, 0x7f548196, 0x4214a4a3, 0xa034b302, 0x6a817e04, 0xc67f795e,
+0x17a98157, 0x7f7f7f5b, 0x7f7f4c56, 0x7fe0b181, 0x7f907fba, 0x42f82fd9, 0x223ea236, 0x3d2025d1,
+0x097f81b1, 0x81a35969, 0x373cb170, 0x44a57c3b, 0x26bc5a7f, 0x34657ff6, 0xc83b3d3f, 0x99be6c2c,
+0x1c811f7f, 0x5c7f81ac, 0x33fa49f6, 0xa5c38181, 0x81ed8144, 0xc88a652a, 0x7f817fe3, 0x953cfc91,
+0x466681d3, 0x366f16d6, 0x187f2ff5, 0x077ff351, 0xbe1b817f, 0x3884ec81, 0xb17f8181, 0x9a39437f,
+0x476fac61, 0x7f911514, 0x24b0038f, 0x5647567d, 0x8143c7ae, 0x81b03a31, 0xec7f085e, 0xc10d7f55,
+0x0a50b9f6, 0x7f1fd244, 0x7f81a1c7, 0xc48148ca, 0x877fc97f, 0x81115e37, 0x827ffdf3, 0x48b741c2,
+0x7f9fc5c0, 0xf87f81ce, 0x43a1029c, 0x2a78427f, 0xff9a164d, 0x7ff981f6, 0x1b7f81aa, 0x6f48ca6a,
+0x547f7f2a, 0xa9ce5cf0, 0xc07f7f7f, 0x7f6fa54d, 0x58817fbb, 0x7f96fa32, 0xfdc18381, 0x7abd7e7f,
+0xc604b981, 0x64217ffe, 0x8893bd7d, 0x7f140281, 0x7759b9e3, 0xcc648129, 0x81c981c6, 0xaf2ba351,
+0x9ecd819f, 0xac816ff2, 0xb516672e, 0x4157ab81, 0x81d21796, 0x35643433, 0xf13d5a7f, 0x9881d003,
+0x5081bbd0, 0x7d7fbdcc, 0x6ba50d3a, 0x8170677f, 0x85b29f81, 0x8aa72210, 0xfbaaa381, 0x7f0e8f34,
+0xcf367b7f, 0xe60399ab, 0x7f7f7f01, 0x817f7f11, 0x81818932, 0xe39a6e31, 0x8d3b8181, 0x107d2bc1,
+0x908164f7, 0xe41a7fc5, 0xe944503a, 0xeb4b6559, 0x22817f81, 0x816ea8ff, 0x1557e37f, 0xaa7f701c,
+0x817f828e, 0x738106c4, 0x7e0e7f05, 0xac768181, 0x17898158, 0xc081ea33, 0x827f9958, 0x3b7fd4fc,
+0x16181f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x0c7f3a86, 0x7750813d, 0xd2b385bc, 0x6f7f7f72, 0x7d487fa8, 0x7f7f8d65, 0xb6578196, 0x4d93815a,
+0xf9a54748, 0x317d6469, 0xe0466f8a, 0xef869693, 0x3da5a9e2, 0x7f7f05a1, 0x14c68157, 0xc2148135,
+0xad9ed181, 0x7a7f6081, 0xf10d659b, 0x4a38dce0, 0x114d7f2a, 0x2bc7f79f, 0x0f7881f1, 0x423e5553,
+0x9c2b817f, 0xde7ffb85, 0xe18117ca, 0x67fd7f7f, 0x3fbbf57f, 0x9b34ad7a, 0x487a543f, 0xf06322f8,
+0x9ce93023, 0x3581818a, 0x6a7f4d69, 0xad3d627f, 0xbd812c92, 0x8be4cc7f, 0x23b47fc4, 0xc87f819b,
+0x104d6e7f, 0xcfcb8134, 0x0d8152cf, 0x467f7f19, 0x113f1ec5, 0x589bff9e, 0x457fa8c8, 0x2a1246d0,
+0x731e257f, 0x40e460e8, 0x13d3057f, 0x817c8de1, 0xc09dc798, 0xab81d4f1, 0xa1a49d8c, 0xbf50df7f,
+0xbc8192f7, 0x73aa4d5a, 0x1c817f43, 0x428fd6fc, 0xc282884e, 0xb9f67fd8, 0xd7777f4d, 0x1aa2d89a,
+0xa5537f81, 0x8878b631, 0x4bdfd881, 0x7f21b57f, 0xcd7f7f7c, 0x4d2aa1d0, 0x3e138144, 0x3c7fe433,
+0x146e5fe3, 0xa53b7f85, 0xa9537ffd, 0x819eda1c, 0xf93e2881, 0xc3814f7f, 0x018d69b4, 0xf87fa19f,
+0xb09f9144, 0x6ec23f94, 0xdf7f39c6, 0x48087f7f, 0xfc818184, 0x18815bc3, 0xc764598b, 0x11ed68c7,
+0x81df81bd, 0x7feceb38, 0xc90a473a, 0x81817f81, 0xef3a537f, 0x7f4d3873, 0xf45c846f, 0xfeb68afc,
+0xd326d181, 0x7fe4ae7f, 0x3e817fb5, 0x81c95de9, 0xbebdcd7f, 0x23053726, 0xdd8d8181, 0x1d545233,
+0xe37c933d, 0x81e52c1d, 0xc0ab2d81, 0x81e2667f, 0xcf2e70db, 0x9370319c, 0x21add116, 0xe6c34081,
+0x076912e7, 0xa781aca0, 0xd6f5a5d0, 0xa9af5d7f, 0x2e817c77, 0x81e1661c, 0xd5308181, 0xae7f6ec4,
+0x45815295, 0x2dbc2581, 0x50bde53d, 0xcd8cb1bc, 0x2e67977f, 0x32fc789f, 0x2b81ca3f, 0xef7f7f61,
+0x19a7d611, 0x81427f81, 0xe98181fc, 0xd4397d7f, 0xd9ab7fb7, 0x819c8c92, 0xd5478339, 0xf0555aae,
+0xfe09f481, 0x8128527f, 0x337f1081, 0x6dae3aa2, 0xccb67f81, 0xb1d8d87f, 0xc2d3dd02, 0x97af814d,
+0x812f1c5a, 0xc50c8181, 0xcd70610a, 0x7f555df4, 0x567f7f23, 0x0a0d917f, 0x4b81815c, 0x184a5b8e,
+0x5054c67f, 0x7f7f8ced, 0xf0b31f7f, 0x11698131, 0xe0ac5442, 0x57ffc57f, 0xb681cc02, 0xb78c8193,
+0xa629b48c, 0xf2a8d43b, 0x59167d37, 0x81818bf2, 0xc87c817f, 0xbf7f8e7f, 0xcdbc2243, 0x2ed78e74,
+0xfe817d61, 0xa3613c01, 0x25e281af, 0xbd6a7f36, 0xe57f4b7f, 0x81898161, 0x2a415081, 0x50b07fb6,
+0xe77f9c72, 0xd43681aa, 0xd07fb648, 0x3c7fbd5b, 0xa555c475, 0x8169dc64, 0x09106247, 0xf9b660ab,
+0x389542ac, 0x7fa22c4e, 0x81304e71, 0x29208c90, 0x317fa43a, 0x8281819d, 0x7f212065, 0xc0682681,
+0x3f2b5dc7, 0x87d86d81, 0x5c7f4192, 0x7f54332b, 0xc564a449, 0x7f817f58, 0x3c6576aa, 0x147f816d,
+0x4957d091, 0xbdaba3a7, 0xa17fa381, 0x49628138, 0x372f815b, 0x81676748, 0x8dba817f, 0xc89e8129,
+0x866fc855, 0x43ba4a81, 0x8f4b7ec2, 0xa47f054d, 0xc3b07185, 0x7f8d3ad0, 0x2c7f9f8e, 0xc17f27d3,
+0x33956381, 0x8e12a081, 0x7be52e32, 0x44b28122, 0xe4947f6d, 0x6eae4f7f, 0x34df816a, 0xd7938168,
+0xa7a9528b, 0x7f81ec45, 0x41857f6f, 0xbc28817f, 0xcbd67c06, 0xaeb678d2, 0x529a547f, 0x44813b6e,
+0xd44f247f, 0xbe1b9879, 0x877f4996, 0x5b9a8dcd, 0x2e558281, 0x1d817f84, 0xda7f8186, 0xdda9f4a6,
+0xe698ae70, 0x7fb54c8a, 0x0aae8550, 0x857ff8fb, 0x1ac42e8e, 0x3f27814b, 0xe27fdc2d, 0x2db1eb81,
+0xca817e5a, 0xec7f62e2, 0xc7dea079, 0x7f7a7f26, 0x7fdfbf81, 0x7fe89da8, 0xa9187264, 0xf98192c9,
+0x6af88181, 0x667e3981, 0xf97f3c48, 0x7fdf817f, 0x3b9bbc81, 0x55bfbc81, 0x096fa6e1, 0x1b75a67f,
+0x357f83ed, 0x7f7f6f7f, 0xf3b43812, 0x9d4c0d92, 0xa8817f4d, 0xb96c877f, 0x34818178, 0x5d7f997f,
+0xdb7f5c7f, 0x39b056a4, 0x33bcffaf, 0xb398b57f, 0x285a4bf1, 0xb181574b, 0xc1e56d31, 0x4b717fd2,
+0x56337f81, 0xed938157, 0x7f4b7f47, 0x49a3812b, 0x2e667fcd, 0xcd817240, 0x8b5470e6, 0xf693814e,
+0xd3e07f7a, 0x7f7a4781, 0xf44cd60c, 0xfd546281, 0xef995981, 0x81e70628, 0xd3b97f47, 0x07819aa8,
+0x707f447f, 0x9181c079, 0x72ae8173, 0x988d2a78, 0x7f814478, 0xb57fa076, 0xde7fb260, 0x17817f3b,
+0xf045c31b, 0x7f7feb13, 0xbee5d07f, 0x5f8192ae, 0x0c9381f7, 0x28817f7b, 0x985964d5, 0x81817d81,
+0xb381b799, 0x38b0817f, 0x3a887f0f, 0xf353fe81, 0x53817fdb, 0x5c814d56, 0x39b415ff, 0xc9c78c59,
+0xb2817fad, 0x5884bec5, 0xd629b07f, 0xb67f81cb, 0xcb81abe9, 0xab7f9b7f, 0x35815781, 0x85878181,
+0xb0b2177f, 0x86223495, 0x32cd7f69, 0x3c664743, 0x1d7981c2, 0x817f817f, 0x16cadc06, 0x03786a7f,
+0x03818107, 0x5a8dd1d1, 0x58e57f20, 0x7f818152, 0x444c50f0, 0x3d81810c, 0x66ae7f62, 0x39d01614,
+0xbd817f81, 0x789b7fa6, 0xadcd819c, 0xd37f8171, 0x291ebf81, 0xd5923ac9, 0xc37f63bf, 0x1c7981ae,
+0xda5e969d, 0x248c5899, 0x8fbdc4b3, 0x6c50d2cb, 0x2a5fab0b, 0xc42d818d, 0xa4776781, 0xaa6281fd,
+0x20534bc6, 0xb729727f, 0x6481de5c, 0xffc8a5e9, 0x707f25f2, 0xc674ba57, 0xe2ff9cb8, 0x02433e79,
+0x108e223b, 0x617f9cd7, 0xb5507f81, 0xa6f63ee6, 0x09b45856, 0x7e7fe581, 0xe4f8417f, 0xe11d98be,
+0x44817f7f, 0xc9c581df, 0xf7817fb0, 0xac6da566, 0xc681ed7f, 0x3249810f, 0xab55b281, 0x35e64c81,
+0x61e9b982, 0x8d8c4781, 0x4eafd663, 0x7fb8302e, 0x40a9bcb1, 0x17b17f9e, 0x817f92c0, 0xe35d2fb3,
+0x4ca815dd, 0x817086b9, 0x389b817f, 0x3c0d955f, 0x447f7f1a, 0x7f11307f, 0xada0815a, 0xafca7f7f,
+0xce48b124, 0x7fd94e81, 0x2edc81a4, 0xaa098a97, 0x14030263, 0x97813a7f, 0x8181d97f, 0x2581c9e6,
+0xe57f7f05, 0x16880f81, 0xa6e88184, 0x818490a2, 0xd5a87f94, 0x8b81a081, 0x38813781, 0x14a59a5a,
+0x486b8c40, 0x893449c7, 0x1f03d659, 0x81bb2831, 0xe0d8c66b, 0xa1bb7066, 0x1b7f8c71, 0x07815581,
+0x3820cb84, 0x8d3926b5, 0x81f27fd2, 0x46ff3a84, 0xfddc057f, 0x16d21ad1, 0xdbc27852, 0xf9817f34,
+0x7f81397f, 0x6c0f8101, 0xf22a100c, 0x7c998171, 0x4b68bad6, 0x7f588114, 0xc3465c81, 0x439e037f,
+0xd9817f52, 0xf1bd5594, 0xf93f9f81, 0x39447f7f, 0x46dca006, 0x93f30f7f, 0x6e215e81, 0x092ffdc3,
+0xad49e8a0, 0x7f4e7fba, 0x9b9c4fc6, 0x8131f77f, 0x0700b27f, 0xf0de61ab, 0x258181fb, 0xd8e8bb56,
+0x36932155, 0x9c7f2981, 0xb2bfe055, 0x7f0095b9, 0xaf73327f, 0x70817fbb, 0xb3a281d6, 0xfac08a53,
+0x24e4727f, 0xcbb5dbbb, 0x38be99fa, 0xbcb94e7f, 0xdf2653d0, 0x93df5efe, 0xfcdc697f, 0xe754909d,
+0xc6810060, 0x7f0ce4d1, 0xaec4a5ca, 0x4a7f81bd, 0xc17f817a, 0x7feecc3f, 0x2981285d, 0x3e0e6e81,
+0xab81814f, 0xbf27187f, 0x12409322, 0x1c9dc451, 0xc48e03e7, 0x64013b81, 0xb5847aa7, 0x350a1b84,
+0x27458181, 0xa1237f61, 0x9714287f, 0x817f8170, 0x1a7f7f09, 0xf07fecc7, 0xd686d4c9, 0x9abd7fa9,
+0x449dc0bc, 0xc1177f9d, 0x7f547f9a, 0x7fbd7fe3, 0xcab19d2b, 0xc981b27f, 0xdc8ba548, 0xe95304a6,
+0x22225820, 0xd29262ec, 0xf27f9f78, 0x1b94427f, 0x4738a436, 0x7f814fe0, 0x52817f7f, 0x1d818181,
+0xf8d92d89, 0x24817fa3, 0x66d6aadb, 0x4e55b9ca, 0x7f81de8c, 0x7f814e64, 0x24141e31, 0xa5232778,
+0x34e27f81, 0xdc87c78f, 0xc016dfb1, 0xce91829c, 0xe662c230, 0xda74e681, 0xcfb57bb8, 0xf18179ff,
+0xcc818481, 0x4736ed45, 0xcc6ee881, 0x3a815a81, 0x81b77fb2, 0x56816f2f, 0xe82bcb89, 0x3875ad5f,
+0xe05197e1, 0x1a7bc17f, 0x31a3f841, 0x7f90a77f, 0x1df3b910, 0x583f815b, 0x257f814c, 0xee7f7f8e,
+0x7dbdc37f, 0xb6810a1c, 0xce816d85, 0x459bf72d, 0xd4fe0481, 0x0d49024c, 0xbfa3a055, 0xed9baf30,
+0xf27f7f7f, 0x7dd24f9b, 0xc481817e, 0x7f899052, 0x074d5bdb, 0x2335c3fe, 0x00759f7f, 0x251bacbb,
+0x147fc935, 0x0b180994, 0x9f7fa637, 0x387ff150, 0xcbac8967, 0xf37f60cb, 0xe4c216be, 0x7829816a,
+0xd7b89981, 0xf8ae2592, 0xbeca818c, 0xf3817a81, 0xc681017f, 0x2f2f2e8f, 0xfe577f1b, 0xd503d778,
+0x2d7f7f67, 0xb281c0f0, 0xf7d7812c, 0x817f9598, 0x1af6fb36, 0x157f3781, 0x5e31a27f, 0x038181ae,
+0xf9fb81ad, 0x7a8eec81, 0xc8652e7f, 0xc67ba487, 0xbfce7f7f, 0xdf02a27f, 0xf9c1813d, 0xcaac0f90,
+0xdc448181, 0xb17f921f, 0x99be8181, 0x7fc09993, 0x11ad1bc3, 0x5c7532bf, 0x25a8ce28, 0x0ab6a823,
+0xc3c29055, 0xad55b6ea, 0xed81e0dd, 0x8caa6553, 0xff817fc8, 0x7f70d513, 0x433671dc, 0x5db37f6d,
+0x7f318170, 0x55bd4dd5, 0x00c181b7, 0x41c3bb90, 0x441a818e, 0x84e78140, 0xad8a2c81, 0x2bc38158,
+0x82654c81, 0x29d6600e, 0x227f7fc8, 0xa43d577f, 0x2b8364a3, 0x144e2a57, 0x07817f1c, 0x4a8171cd,
+0x47d5a981, 0x3c7d0781, 0xba636c7f, 0x2c7a7f7f, 0x90cf187a, 0x6b4c3671, 0x3a2c436d, 0xef81de81,
+0x4a828117, 0x814dabc0, 0xf930e17f, 0x4c3265c0, 0xe5ef7a7f, 0x819b8504, 0xd5427f81, 0xd881e992,
+0x946a45fe, 0x310162a7, 0x14819c81, 0x7f817f4a, 0x552fcf42, 0x7f707f18, 0xb9dc4881, 0xa17f81c2,
+0x9e476d98, 0x7f7f7ff0, 0x37662d4e, 0xdb7f99cc, 0xf9fe8cc1, 0x1f4c7fd1, 0x3588817f, 0x547abea9,
+0x356e7f7f, 0xab1e857f, 0xda0e7f5c, 0x9d777f7f, 0x451f1bb6, 0xa82e087f, 0xb71d347f, 0x0916d881,
+0x177e817e, 0x7f5a66a4, 0x237f2e6e, 0x816dafde, 0x2f8124c1, 0xcee67158, 0x067f667f, 0xe1258187,
+0x3a3165f7, 0x1f7fac81, 0xf636364d, 0xf2818e36, 0x0b9e207f, 0xed2d7e81, 0xaa6e2281, 0xcb50b6a3,
+0x237f72c6, 0x95819fa0, 0xd7d0c888, 0x39988141, 0xc8b07f8d, 0x5a43c942, 0xf3cd687f, 0xa2e77aec,
+0x9909bb1b, 0x7ff8e681, 0x5d39837c, 0x5625817f, 0xa9738110, 0x8b604bb2, 0xf3ffa881, 0x5f359eb5,
+0x07bf7f49, 0x7f63c67f, 0xc9db7fcb, 0xa65881c5, 0xf2818130, 0xa5817f81, 0x26b4174f, 0xc06f817f,
+0x3b8181c2, 0xbfeb4d6f, 0x9e857f91, 0x58a9a1b7, 0x67147fdc, 0xcd257081, 0xb78d4081, 0x3749ebb8,
+0x22ac7f89, 0x4af84134, 0xe3f97943, 0x2d8187c6, 0x027c8181, 0x81c1bfef, 0xc32b2267, 0x42257f81,
+0xb49b3eb3, 0xa3d47fc2, 0x27ff4d81, 0x69b4a46e, 0x81818181, 0x7fd5817f, 0x00a97d91, 0x10897f7f,
+0xd87f0d3b, 0xcbec8b7f, 0x7f814de6, 0x8286209d, 0x06e2bf7c, 0x81e28881, 0xae64afdd, 0xabc5667f,
+0xee22bee0, 0xe157d171, 0xb39a5bd6, 0xabb6d1c0, 0x53c19d81, 0x447fdb81, 0xfc086996, 0xd65f0481,
+0xc87f4d35, 0x313a12db, 0x5d81a1a0, 0x01231072, 0x327f81d6, 0x7eb1ba7b, 0xe9485dad, 0x5781767f,
+0x047f2481, 0x817f5b50, 0xda064bd7, 0x7ff07b3c, 0xfde4a68a, 0x7f83816b, 0xe67f7f34, 0x1a56f181,
+0xe2bbb681, 0xe4687f74, 0xd5a20bd8, 0x81d581a6, 0xb2395342, 0x977f0fa3, 0x81e3b5dd, 0xf1cd8147,
+0xe34f48a1, 0x258142c3, 0xe24d510b, 0x46d6816a, 0x2a608ae6, 0x5781ef81, 0xcce97f0d, 0x677f7f81
+
+input1 =
+0xaa2381bc, 0xbde77f4d, 0xefa38185, 0x81a67f75, 0x6cceb856, 0x4976bb25, 0x3efc977f, 0x86cdf691,
+0x13497f81, 0x7fe7730a, 0xd71d8163, 0x8c7f7fbd, 0x1bec817a, 0x8154b897, 0xc71e45b6, 0xbed568c3,
+0x256c6514, 0xd481af7f, 0x19ad697f, 0x817f745f, 0xd27fa187, 0xd5e769d9, 0xd816cf7f, 0x1aa4815b,
+0x035e7ff6, 0x85de810b, 0x3ea73657, 0x216281b2, 0xe48144b7, 0x3277dfe8, 0xf8c57f20, 0x907f5091,
+0xf481b081, 0x9d8152cf, 0x0e6a81c0, 0x7fff7f06, 0xf8884d81, 0x687f81b3, 0x2657ba35, 0x527fc24c,
+0x9945694c, 0x1faa4e5b, 0x37819334, 0x57f52a7f, 0xec7f817f, 0x817fa0a8, 0xe3a8818a, 0x16beacdb,
+0x2ad2b97f, 0xb981245b, 0x359a8181, 0x7f97265e, 0x9de4387f, 0xed7f058a, 0x0e817f81, 0x4e69bdb5,
+0xc5e38552, 0x77482e81, 0x6c817542, 0x447f2990, 0x07b1f9dc, 0xc4247f82, 0x077f7f81, 0xe58bdca6,
+0x55e07f74, 0x0e7fe47f, 0x04883e81, 0x4981f87f, 0x7d7fce29, 0xe07f7d7f, 0xee817fa6, 0x7262da81,
+0xe158813b, 0xe35e41b9, 0xf17f6d65, 0xef7560ea, 0xae408493, 0x97812300, 0xf29f816e, 0x557fd5aa,
+0x328bb778, 0xa27f7f25, 0xde7fb5cb, 0x03577f0b, 0x577f18a5, 0xb9816d20, 0xe28d2a7f, 0x248c7fb9,
+0xff5fb965, 0x93b27f9c, 0x2d817581, 0x41958195, 0x3a7ff044, 0x7f7f6faa, 0xdb81b784, 0x5081603d,
+0x363ff38d, 0xc747d8b3, 0x537f812b, 0x8176a97f, 0x1d8181d3, 0x81811929, 0xe893d4c7, 0x3c7fcf7f,
+0xf6385c81, 0xaa63b42e, 0x81c3a781, 0x488142a7, 0xcbef89be, 0x3f748159, 0x50c52932, 0x298198d7,
+0x14c68e7f, 0x7fd8a798, 0x085a632f, 0x7f1d7f7f, 0xb2e34289, 0x88c3b262, 0xb044817b, 0xbf7f238a,
+0x5ae6b554, 0x9e833081, 0x607f985d, 0x0203226c, 0x333f63fb, 0xc77f8181, 0xe8297f7f, 0x9dea7f33,
+0x6f2e1f54, 0x2e41327f, 0xff0f7f81, 0x7ffa7f30, 0x343f74a6, 0x81f59f81, 0xaac67dbb, 0x6f81da1f,
+0x79ec8153, 0x78eae674, 0xec7f6e71, 0xa46a48bf, 0xe5810efa, 0x0f41b9a7, 0x3a1124a5, 0x5ff97f7f,
+0x0bd5be75, 0x7f8181f0, 0x242f409e, 0xf47ac606, 0x1e96d94f, 0x43a66a81, 0x18fc815c, 0xa51a7f7f,
+0x1185d27f, 0xa00c810f, 0x078ae481, 0x71d7866c, 0xd47ff796, 0x813cf240, 0x45814d48, 0xbc6c3618,
+0xa8b937ea, 0x838e7f7d, 0x19b3817f, 0x7f73be95, 0x00fa46b3, 0x4c43655a, 0x20f67fc2, 0x98fdda7f,
+0xe879817f, 0x4c9e7f2d, 0xcd7fefc2, 0x9681a909, 0x1e59e7b3, 0x35818136, 0x9e3a977f, 0xaf7f207e,
+0x9633227f, 0x44450e81, 0xc2c25f7f, 0x7f1a3f81, 0x08acf783, 0xd083a838, 0xd2627f59, 0x6d327f32,
+0x362c2b5e, 0xee8e507f, 0x48b431c5, 0x00816381, 0x1e6c1150, 0x7df48149, 0x36f94f81, 0xc5667844,
+0xf7cbf52c, 0x520081b8, 0xc6967f7f, 0xc88981b8, 0x328181ee, 0x697fa9f2, 0xc99a7f81, 0xb5a08181,
+0x1d74dc89, 0x643ab5cb, 0xeb81f9be, 0x987f277f, 0xad38747f, 0x61778c52, 0x59817de7, 0x05ae8144,
+0x217aa1de, 0xc0817fe9, 0xa1a6b4dc, 0xece08189, 0x4118207f, 0x9a8181a8, 0xcf0f81c9, 0xba81d081,
+0x138181b8, 0xd537957f, 0xfc7f9b8e, 0x7fc9607f, 0x16c085fe, 0x81fa7fb6, 0xf7847f66, 0xc20ee0fd,
+0xf983ec97, 0xce209f7f, 0xe2815922, 0x39b07aa8, 0xd3a82353, 0x6ee38287, 0xc60d7f29, 0xcf478f57,
+0x594d731b, 0x0e8c42fc, 0x6a702ce3, 0x7b81b301, 0x3181a450, 0x7fe94481, 0xe581b66f, 0xd87f7f2a,
+0xc1b385ee, 0x81816964, 0xbb7f5093, 0x8151817f, 0x51e3547f, 0xb3fa7549, 0xca81b044, 0x258143bf,
+0xb18181c8, 0x7f54eb08, 0xd4c9db57, 0x68a981b2, 0x4ef17f69, 0x917f977f, 0xda38865e, 0xe97f3e5f,
+0x0bbc63dc, 0xec34daaf, 0x1dc38186, 0xb381810e, 0xcbacafd2, 0xdb3ec56a, 0x22817381, 0xbc44cc4d,
+0xd681d0b0, 0xe614c8a9, 0x53577f7f, 0xdabc3012, 0x353ecdc2, 0x81728179, 0xb660cf7f, 0xef49ca49,
+0xc645dd7f, 0xd16a7f81, 0x1fb99d7f, 0x7d36d57b, 0x04ce7f46, 0x602adede, 0x1142cbb1, 0x60de427f,
+0x29814ccb, 0xe9ad7d99, 0x127b2881, 0x5c5aa08f, 0x38c0db9f, 0x7f76d981, 0x63b32381, 0xdd41ce81,
+0xce14e57f, 0x74ed7398, 0xdd81e6eb, 0xb6f2d581, 0xa581b77f, 0x468c81d7, 0x5f2d88b8, 0xf481fd21,
+0x6ec1e381, 0x71568485, 0xcbfa7f6c, 0xa02e0c9b, 0xd9a09a7f, 0x813d8176, 0xcf43c52b, 0x31a8bca1,
+0x2432dce5, 0x78277f94, 0x474e592e, 0xdefb7f81, 0xff147f51, 0xbb7f3858, 0x25f1e591, 0x36fad833,
+0x0ac87f39, 0x815d9781, 0xaebaaa81, 0x4981815f, 0xd7817781, 0xb44838b5, 0x32626981, 0x417fe2f6,
+0xdf638c92, 0x8624067f, 0x4432e69f, 0xd8688a7f, 0x06815215, 0x25bbbb7f, 0x5b5b6f63, 0x417b5b81,
+0xcc4a7b7f, 0x6ea47fd3, 0xe866b481, 0xc630c9aa, 0x083781ed, 0x69de817f, 0x0381f9f2, 0x84812ce2,
+0x027f4dd9, 0x7f5a9e81, 0x00ea319c, 0x222b9a9b, 0x34a143f0, 0x7fefd1d0, 0xb4947981, 0x11474bc1,
+0xcd44df7f, 0xa2878439, 0xd6f040b9, 0x6f86817f, 0xc67f7f81, 0x7f693443, 0x8d21b1ce, 0xdab1aed5,
+0x3f17ae71, 0x45b7ba7f, 0x05229255, 0xb181d8f5, 0x688681e3, 0xea81e181, 0xf57f817f, 0x7fdc5881,
+0x6e817f7f, 0x817f537a, 0x3987247f, 0x300a7f05, 0x3128057f, 0xe731b77f, 0x4881b50b, 0xb86dae65,
+0x00c015a0, 0x81397552, 0xb9bcab24, 0xf5818181, 0x57d18190, 0x81c3648d, 0xed813a67, 0x4c5d3a06,
+0x3581a4e3, 0x64db6467, 0x21af7d27, 0x5adf7f57, 0x66d9c99f, 0x5b183375, 0xbf4c41e5, 0x577f7ff0,
+0x4e818181, 0xf295493c, 0xd2c28170, 0x5c3a7f8e, 0x09c18181, 0x7f7f7f9c, 0xae675fa9, 0xf6d781a4,
+0x66ba10dc, 0x7f882981, 0xfe7f7f7f, 0x7f7ffea4, 0x2798d845, 0x899cb6fb, 0x4982bcd9, 0xc0815ab0,
+0x558181aa, 0x52110702, 0xd179e3c5, 0x482923bd, 0x187f8181, 0x81b3f6d9, 0xfd96a581, 0x2c5d1a81,
+0x6fde23dd, 0x9e815063, 0xfba49bcc, 0xfa775f4d, 0xb1b8b681, 0x81894f1b, 0x3c8163fa, 0x2d7f3d81,
+0xc57f6681, 0xbd7f7e81, 0x137f7f81, 0x6b3d6f81, 0xe5e2610d, 0xb4683186, 0x7f6e817f, 0x90c12abc,
+0x13a3502a, 0xdddeaa8c, 0x07a67f79, 0x1a5481ce, 0xb87fb01b, 0x0a4b1e7f, 0xd77ffcb7, 0x03535781,
+0x5a5f697f, 0x02ca7966, 0x379638bb, 0xc507c941, 0x5e7fdf8e, 0x7ce0c99b, 0xa162ccfd, 0xff8196cc,
+0xd43aa081, 0x67798185, 0xd6277f2e, 0x7f6dcb7f, 0x217fcd76, 0x2c88fb91, 0x06815b8f, 0xe37f7dae,
+0xe937257f, 0x648181ae, 0x21652c4f, 0xbf81685b, 0x36abe921, 0x3cb5de30, 0xa88e8162, 0xd87f812b,
+0xb981d14d, 0x75c181a7, 0xf7c08aa1, 0x57904e7f, 0xf6f688d8, 0x7fcf6281, 0xd33dbf7f, 0xc07f9a73,
+0x197f8135, 0xcabf8bc6, 0x3f81c37f, 0x487fac4f, 0x8ddc924b, 0x50257f7a, 0xf75e1496, 0x28d2d48f,
+0xcd91817f, 0x2a7f81b2, 0xbd7fb67f, 0x3b877fe1, 0x407fd8fd, 0xbc815f20, 0x7f50e581, 0x8bdfae4d,
+0xb1eb7f81, 0x07819f40, 0x3765274c, 0xde7fd081, 0xa0817f7f, 0x8dbe5081, 0xfa436f7f, 0x4848463b,
+0xc5c45cdb, 0x7f8b1865, 0x5bf381b6, 0x45aa497f, 0x7f813694, 0x54f15918, 0x72886c49, 0xe3fb31b0,
+0x0db1a582, 0x4aadce1b, 0x39926d8b, 0x9a30a85f, 0x1b606181, 0x1c6d165b, 0xfb057f4b, 0xcd7f81ec,
+0x12bf7ffb, 0x7f5f91d4, 0xca8158b7, 0x86134234, 0xf0f17f3c, 0x7f4e05c4, 0x34814f7f, 0xe5c1106a,
+0x2d50c67f, 0xb57fa18b, 0xb7816481, 0x7fffaadb, 0x607f817f, 0x5048ea81, 0x82495d02, 0x17819b7b,
+0xaba67981, 0xb5817f7f, 0xee57a2b6, 0x3591a602, 0x2885a153, 0x429ba160, 0x757fd0f5, 0x344e9d7f,
+0xc77a7f8d, 0x2a7f8160, 0x3198b27f, 0x81c552bd, 0x0374e058, 0x31605de1, 0x40d0817f, 0xb281a37c,
+0x156ce27f, 0x91893090, 0x06f58181, 0xc4487f6d, 0x0a7f7f9d, 0xc3a17141, 0xc03c39c5, 0xb581b2b5,
+0x526a7f7f, 0x7f7f7f4e, 0x7fec7f7f, 0x95cead7f, 0x161ba8d2, 0x8ad0d081, 0xe4f19557, 0x5bb6fca9,
+0x2d813a6d, 0xddbb7f81, 0x1cb1e281, 0xc2b43734, 0xd07f4641, 0x7f81bb39, 0xae9b1b81, 0xbe817f36,
+0x1caf7f81, 0x7f704922, 0x108f777f, 0x81662d7f, 0x479ca35b, 0x818513c2, 0xa41d8607, 0xd081b235,
+0xf6817fcb, 0x7f015960, 0xadb15f5b, 0x81be2abf, 0xf2b0e29f, 0x81819224, 0x38a7407f, 0xc9817b09,
+0xf307556c, 0x7f818181, 0x0281817f, 0x3fce810c, 0x18b47cd4, 0x81e2a53c, 0xe359840f, 0xe27f81ad,
+0xa1665081, 0x7ae062b6, 0xe0b27f35, 0xcd376e73, 0xd9a6d373, 0x817ffe7f, 0x02810946, 0x06498116,
+0x9b7fbb1b, 0x8d2b812a, 0xff14f781, 0x937de081, 0xb77ff44b, 0x4b2732c7, 0x0720bd96, 0x9e647f13,
+0xb831d474, 0x811d8183, 0xa5db837f, 0x8aa1b04a, 0xd4377cfd, 0x7f814241, 0xee8fec39, 0xcc81d881,
+0x2e29d770, 0x7ff76366, 0x7fbd363b, 0x74bbd13e, 0x2e817192, 0x9f6b81db, 0x44913bb3, 0x327f0de1,
+0x2d7f8881, 0x54f2afaa, 0x107f513c, 0x4c8191d1, 0x117fe67f, 0xffa21764, 0x2c931727, 0xd09ba693,
+0xf74e4882, 0x51ed8bc6, 0x3a23d683, 0x47437f70, 0x7fad8181, 0x9a610813, 0xa57ff47f, 0xbe1b5b9a,
+0xf4bf8c33, 0x43074944, 0xe4ef729b, 0x1e7165d6, 0x74e081c6, 0xe281810c, 0x2a4b81e4, 0x10ede221,
+0xc8375d7f, 0x81c07f81, 0x49cb7f83, 0x5f589c22, 0x276441a9, 0x7fe67f0b, 0x4d7f1d7f, 0x1872814a,
+0x05b6a577, 0x8140fa5d, 0xe47f9bc3, 0x44166064, 0x73896729, 0xb5c0867f, 0x247f445f, 0xccc92994,
+0x29611b37, 0x27531258, 0xeac27f9c, 0xd43f4e7f, 0xc27f170f, 0x6d9bfc37, 0xfc819181, 0x077f598a,
+0xe0c5d398, 0x7f23182f, 0xed171743, 0x20bff85d, 0xb0d0be7f, 0xb8938149, 0x45017f32, 0xcf2cc65d,
+0xdf7fc481, 0x7f380777, 0x81b8f0dc, 0xf6696596, 0xff007f29, 0x896e1abf, 0xfaac2d81, 0x5bc357ba,
+0x6a397f2e, 0xbfaeb45a, 0xd64e2b7f, 0xe49b4587, 0x565c6c51, 0x7f206a7f, 0xc381540b, 0xfc3d7f73,
+0xd4ec9f39, 0x887b7f27, 0xe3c1e07f, 0xb721523e, 0x0310819f, 0xc0c793ce, 0x387da141, 0x814f61ac,
+0xd1347fbe, 0x19244c1f, 0x8d3d58f9, 0x813a7fc9, 0xfae27f54, 0x7f39f481, 0xe37f818d, 0x034632d9,
+0x5b06c07f, 0x65ab8b36, 0x127f34b5, 0x18a681ad, 0x73510e20, 0x2f2ffa85, 0x6814ca9e, 0x5b7f7ead,
+0x08da93da, 0xc826da54, 0xc1686fd2, 0xb6f00fbc, 0x28bb5dbb, 0x7fe5297a, 0xb5ed8181, 0xccd9067f,
+0x177f1561, 0x71b41a19, 0xd9817f7f, 0x505b50c5, 0x309dc978, 0xb97f4f81, 0x4e81c219, 0x2d81d04a,
+0xdf3d5fa1, 0xfc6e5c30, 0xf7869481, 0xfc81e47f, 0x67b5817f, 0x7f72577f, 0x2c938136, 0xd576ad7f,
+0x63beb36f, 0x7fb3817f, 0xce56ca81, 0xd801e58d, 0x425f2522, 0x8a25817a, 0xdc7673c9, 0xd7b57fca,
+0x927fbe2a, 0x149b9881, 0x9ad781a9, 0x214b9d4d, 0x2dae1287, 0xfa772ca4, 0x3b7fdd35, 0xf59e4174,
+0xad3a28f5, 0x8144698d, 0x1ca792df, 0xdb7c7fd1, 0xe96d497f, 0x567fa7d9, 0x489b70cb, 0x3442de7f,
+0xa2554c37, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x4dc76c95, 0x29b78ec8, 0x3d927f7f, 0x307f93c2, 0x8181da7f, 0x99f741df, 0x6e1d417f, 0x1bbda834,
+0x954b5a9f, 0xc6817f07, 0x7fc01005, 0x3b5a81e4, 0x73cd7f5b, 0x7f817f3c, 0x8e7f812b, 0x59d48a03,
+0x982475ef, 0x65a1c068, 0x400cc79b, 0x81f231fe, 0x840329e0, 0x1f6054eb, 0xf8813d3a, 0x7f4a9296,
+0xbff677c5, 0x7f3c6f0c, 0x7f2890cd, 0xe0aaaad6, 0x81ae9428, 0x7f8117f1, 0x7f097f88, 0x7f27cfcc,
+0xca67205e, 0x815f7f37, 0x7f0ac07f, 0x717f95d2, 0x7f9232a7, 0x2bb803d4, 0x3c12c7e7, 0x937c81ea,
+0x7f1cdd3b, 0x0622b6c0, 0x62d71247, 0x811cb00b, 0xaef9e981, 0x0f818ff5, 0x740e6f53, 0x30616410,
+0x81fed3e0, 0x49167f3a, 0x4577315b, 0xe49130fa, 0x817c7f23, 0x7ffef7ec, 0x4fb47f17, 0xb365b1f8,
+0x81a09c38, 0x7f818134, 0x9568e717, 0x4ead1921, 0x8ebd9806, 0x7f911cf8, 0x8c7f5efc, 0xf29114a8,
+0x90bc6ae9, 0x0b5f26c1, 0x81bc9281, 0xf0fb5532, 0xc89ab77f, 0x7ec0b9d4, 0xf00bdcf7, 0x7f7f7a24,
+0x097ff51e, 0x64d62dfc, 0x7f7f819e, 0x34c05cc3, 0xa2957f19, 0x81101e05, 0x7fd68181, 0x1dff81af,
+0x7f81dc24, 0x7b3c6769, 0x7ac490dc, 0x814032c5, 0x9d81747f, 0x7fb46342, 0x72607faa, 0xd40c8161,
+0xa5ab574f, 0xf0838bba, 0x33fd7f47, 0x289f81be, 0x817f480f, 0x4bfa552d, 0x8ca1d5d5, 0x817f492b,
+0x418125e0, 0xe45d5af0, 0x811b1751, 0xe04d81f8, 0x7ff2917f, 0x65811a53, 0xe65da37f, 0xbafdd439,
+0x53818189, 0x752c7ebb, 0xc301567f, 0xb0816f27, 0x708166db, 0xc0b57f49, 0x3a818169, 0x4f16189c,
+0x13d6e83b, 0xd258a20d, 0x7fadbdb2, 0x7f93560d, 0x81fd5399, 0x6014dab2, 0x9cf45f1b, 0x107f71d5,
+0x352e8109, 0x5a5d6efa, 0xb458ef47, 0xb4a96098, 0x7ab91c37, 0x81bd762e, 0x816cb0d7, 0x3f9819d4,
+0x8113b97f, 0x7f09fa33, 0x9e7ffa99, 0xe98181ce, 0x4ffb3064, 0x7f0681ea, 0x81ef06ad, 0x385abdf5,
+0x1414457f, 0x18dabc5a, 0xc27e0d7f, 0xd87f8115, 0x703f7fcb, 0x300b7ff1, 0xb081f55d, 0x024d78f8,
+0x72949a16, 0x90603c38, 0x7fba6fd4, 0x4820e44f, 0xd57f81af, 0x9c7f7ef9, 0x61c6b27f, 0x81b6141f,
+0x7c52514a, 0x5f817f78, 0x668119a7, 0xe441aa7f, 0x53819553, 0x7f721521, 0xbd7f7f17, 0x593081de,
+0x8b252de8, 0x7f7f81c1, 0xaca9436e, 0xb5e0b104, 0x81e49d81, 0x75b48102, 0x5c278118, 0x9f6c36c9,
+0x509481fa, 0x53d1e640, 0x52108181, 0xeb7f7fff, 0xde417381, 0xa781cb33, 0x4fab55f4, 0x3e7d75f1,
+0xf17f0c1a, 0xe8e1817f, 0xcf1f7f81, 0x96d8ba40, 0x1318fc72, 0xd7ae3d1d, 0xf7e88126, 0x32bfe432,
+0x453f694b, 0x7f7fbab6, 0xeae7de30, 0x3d81d7d1, 0x438d9cc7, 0x387f4a05, 0x7f46ab81, 0x635bdf10,
+0xc281ae24, 0xc5c67fc4, 0x81acb53d, 0xba4f4d04, 0x424f72cc, 0xbf7faa1f, 0x55de1de8, 0x81429a1d,
+0xdec94147, 0xff007f42, 0x3fa74821, 0x0cb74e9c, 0xff81627e, 0x6343810f, 0xf7393529, 0x7f44ad81,
+0x7f811f39, 0x81e981a0, 0x8c8c4421, 0xc4819190, 0x81816881, 0x7f7fd234, 0x3688c16c, 0x9c34b357,
+0x6046e3f6, 0x86123bdc, 0xbd45957f, 0xe6cd777f, 0xe0951ce7, 0x9b7f63a6, 0x817f29c1, 0x7f5a81ca,
+0xde7ffcbe, 0x812c3207, 0xa099537b, 0x2a2f81d0, 0x16817f9a, 0xbb81817c, 0x7f81e538, 0x957a4200,
+0x81753bab, 0xaf63a506, 0x3081691c, 0xb0a47f2c, 0x0f157feb, 0x8e4330fe, 0x635b8189, 0x7f81ee34,
+0x7f40caae, 0xbce88e05, 0xabb52199, 0xd2ba102f, 0x7f7f8173, 0x810b32ab, 0x2e222781, 0x7f819951,
+0xfbc73dca, 0x5d81d181, 0x7fb09d81, 0x7faa3098, 0x7e81435b, 0x61e995d6, 0x7f7974f3, 0x7fef81f9,
+0x402faba7, 0x7a647f3c, 0x815c6826, 0xba2b2ffe, 0x7f095b7f, 0x7f9236b9, 0x9953636b, 0x344c64d2,
+0xd784acc0, 0x7f818426, 0x61ab43f8, 0xd5813c70, 0x7f817f81, 0xc9867fa8, 0x6f4b4181, 0x3881b1df,
+0x69813f27, 0x81d0780c, 0x17c84a36, 0xbf908ccc, 0x7f5e812b, 0x317f7fea, 0x7f817881, 0xf731c537,
+0x7fb221e7, 0xbae09bf7, 0xcc5d947f, 0xcfc13926, 0x6e0db67f, 0xdf17be28, 0xcaa4ea2f, 0x9870810f,
+0x357f701d, 0xa281815d, 0x91497468, 0x5fbcbeb0, 0x7fd54d81, 0x7d5e91f3, 0x8d6555f9, 0x35d416e3,
+0x9a7f8c11, 0xd875779b, 0x6b7c6681, 0x24f77f50, 0x288bd781, 0x7fad2b50, 0x637f1a23, 0x527f2ea7,
+0x277f7fc3, 0x819c13cb, 0xe1bb65f1, 0x48151c1b, 0x8e7fd27f, 0x7f7065ac, 0xfe0bb14d, 0x588e7f0c,
+0x819d7f34, 0x81c455a5, 0x4f6b7fae, 0x7fb56506, 0x7fcfd5a2, 0x3e6981dd, 0xcc814569, 0xc5fb811a,
+0xc0e07fbc, 0x817f8153, 0xac356315, 0xc94db6d8, 0x7f88e57f, 0x81e57fd0, 0x7f1f6c0f, 0x78d581e1,
+0x7f2137f6, 0x1c57815a, 0x627f55c0, 0x69e4dbcb, 0xa68181c3, 0xb9907fea, 0x55897fa0, 0x7f54a91d,
+0x3e7bb314, 0x7f167f5f, 0x75cc8181, 0x177f2fd0, 0x6d39f7e9, 0x7f817fd3, 0x7f6eb0ea, 0x817fc7ad,
+0xae5b5b04, 0x86cd281f, 0x3528fe7f, 0x87217fff, 0x87860479, 0x8b7f4510, 0x7faa816c, 0xb9d62c33,
+0xdd1c6ccc, 0xb48104fd, 0xbf508f81, 0x34994944, 0x8181b843, 0x74e47f47, 0xc6baf38e, 0x624b06cc,
+0xfdadfaeb, 0x948189ac, 0x7f7f992d, 0x813edf00, 0x81c3587f, 0x5eb2819f, 0xcee54cef, 0x277f38d9,
+0x8a187fb6, 0x9736ed05, 0xed70487f, 0x4f307fa9, 0x81ba975e, 0x81dd81ed, 0xd0da7f88, 0xf24881cc,
+0x12e656d0, 0x7f9b6a1f, 0xcf7fcf7f, 0x78787ebd, 0x7f8319f2, 0x7c7fe9ed, 0x29b381ae, 0xfa4f81cb,
+0x13cc81e2, 0x9a2aa0a8, 0x817f8112, 0xfda22318, 0x7f65e85a, 0x727f6812, 0x7f814b0b, 0xcfe2bcd5,
+0x6b816ce3, 0xb2965ab7, 0x819981bf, 0x73799635, 0x82854b71, 0xbc3e8132, 0x91c714a2, 0x81817f2e,
+0x2cc55af1, 0xb87fb038, 0x7f7f1718, 0x02ba14fe, 0x5e348128, 0x817ff97f, 0x81d03daa, 0xde37813b,
+0x443781c0, 0x0e4e32e2, 0x85a7ad81, 0xba276c16, 0xb61ed9c6, 0x81ca27d3, 0x7f762e7f, 0x4181d581,
+0x7f7f5508, 0x6eb1b250, 0x5ad47f4a, 0x7fd56756, 0xbc817f81, 0xd481a9ba, 0xf8a74db3, 0x7d1aae25,
+0x81397f36, 0x7f62a402, 0xab3b3081, 0x4c45c301, 0x3eb57f88, 0x6d2e7fdd, 0xeb1ac681, 0x813881c0,
+0x7fd127b4, 0x67e57f90, 0x4fcb6d3a, 0xc566afe7, 0xc58bdb7f, 0xe0486a7a, 0x363f8181, 0x7fdd8191,
+0x67149cc2, 0xfe7fcf00, 0x7feeb9dc, 0xccabbd95, 0x7fab347f, 0x98eda0d8, 0x7faf81a3, 0x3b8c7f0a,
+0x1c387fa7, 0x7f055ed9, 0x567fbd7f, 0x4d7f7244, 0xbb8175af, 0xef7f7f5f, 0xa9a58119, 0xada9eec7,
+0x592da3bd, 0xb5a98177, 0xe17f813e, 0x94816af7, 0x69ec7fc5, 0x7f29dd4a, 0x9481c981, 0x5d3198da,
+0xf84e81bb, 0x41817f7c, 0x7fb31b60, 0x7f7f5e03, 0xea81c490, 0x7681571c, 0x9b54b581, 0x812d993b,
+0x7fefd381, 0x7f907fe3, 0x7f81a862, 0x758181bc, 0x46d6507f, 0xae81a50a, 0xd1562a1d, 0x3dcb58d2,
+0x489e40fd, 0x7f8fa98a, 0xb07f7f81, 0x238b7b40, 0x49686384, 0xca817f4f, 0x607f7fd7, 0x3a0d81ab,
+0xb0fa42e3, 0x7f81563d, 0x829a817f, 0x51d48167, 0xcc817781, 0xd54f5638, 0x7fee1218, 0x81a49e22,
+0x0081ec2f, 0x5f5eecf5, 0x6bbc9ce7, 0xa28138d6, 0x86811081, 0x7f0283cf, 0xfff67fb7, 0x81c2814a,
+0xc7817f52, 0x85818146, 0x8781a77f, 0x8181e9f6, 0x4731f881, 0xf51a35d8, 0x236931b2, 0x6eaefadb,
+0x7f81c61c, 0x947f3d7f, 0xbcf43b52, 0xd5814849, 0x17b6e07f, 0x7f6a81b6, 0x817f8163, 0x817f595f,
+0x7fa5ae33, 0x2b63a90a, 0x77627e81, 0x81816660, 0xae7f6281, 0x26c6dedd, 0x757ff9c4, 0x7f7fce30,
+0xab9d7800, 0x68fc444b, 0x3d7ff681, 0x93264a1d, 0x81361db5, 0x817fb6d3, 0x1681136f, 0xc5655027,
+0x792781e2, 0xeaada9c7, 0x34d1817f, 0x81687fc6, 0xa88d451a, 0xdce97f0d, 0x443935cd, 0x810a68b9,
+0x73ef4023, 0x66372979, 0x9a31076e, 0x81813dee, 0x56b11a7f, 0xc76a81da, 0xe0e48181, 0x6681b8b7,
+0xa99858ec, 0x7fb38de5, 0x7f6f817f, 0x92168381, 0x53819b02, 0xc3c27f2d, 0x5299d77f, 0x81e47f60,
+0x687ffbc6, 0x7f5f9df9, 0x0ab4c09d, 0x44856927, 0x5e63405f, 0x7f9fe864, 0x8c884d25, 0x794dd01f,
+0x7f81fb68, 0x31bed5f5, 0x3e658638, 0x3e7f8151, 0x7f7ba8e4, 0x7f304a8b, 0x37c18157, 0x7fb2c6fe,
+0x7fa39bef, 0xa37ff9a1, 0x29983fc2, 0x777facc9, 0x547ff37b, 0xe6815b17, 0xec5a457f, 0xacade303,
+0x7f2603dc, 0x697fcd23, 0x7f7fd042, 0x4a81a54d, 0xd481bf87, 0x7f4e7f0c, 0x0d5c9d05, 0x26ca3c2c,
+0x4f817fe3, 0xc9368b0f, 0xaddb8181, 0xc210e075, 0x248f7f81, 0x697f7f11, 0x817f2f81, 0xef697ff1,
+0xd98181b9, 0x810a4f50, 0xbb9e045a, 0x8ea3771d, 0x787f6931, 0xfbb9812d, 0xb778f981, 0x7f354b27,
+0xfc813658, 0x25818137, 0x7f3402a1, 0x27eabd01, 0x81c18181, 0xfd7fa22c, 0x9784817f, 0x7fa57fb3,
+0xd881f3ce, 0x887f60bf, 0xdc816b0c, 0x3890b818, 0xc37fa281, 0x8f4681f5, 0xb07fb08b, 0x82ad24d0,
+0xc189ab02, 0xe3fddb8f, 0x7f744610, 0x435781b0, 0x8104f653, 0x41bb81be, 0x9a4c717f, 0xf9d4c1e4,
+0xbdc36404, 0x8ff9818a, 0x54d3ab9c, 0x24aec8ef, 0x81ac5bc8, 0x81908100, 0x74f05a0f, 0x0c5b7f2d,
+0x5279a3e3, 0x2d8169b9, 0x7fdc4897, 0x7f5f89bb, 0x9f457581, 0xde817fd7, 0x59813d7f, 0x67817fe7,
+0x7f817fd5, 0x7f5978ca, 0x23ab813a, 0x70819ce8, 0x41575433, 0xb17fa99e, 0x697f7f7f, 0x60aeb15a,
+0x7fa5a9df, 0x39818181, 0x818ea205, 0xbd819fb2, 0x7f0fa491, 0x814981d8, 0xb9c186e4, 0x817f29e5,
+0x81afcd17, 0x842f81ce, 0x058b8e1d, 0xea3da29e, 0x379f5ab7, 0x223c84c9, 0x93bcd8bc, 0xc895baea,
+0x6b7d3cc9, 0x7f2b8152, 0x7feccb81, 0x7f71634c, 0x810f7f29, 0x89c14aff, 0xc0ce05d7, 0x7aed49e1,
+0x817f4d0c, 0xeeaa0afb, 0xd7817f81, 0x6681d76a, 0xa37f4881, 0x38708103, 0x7f8181cb, 0x0a8f6639,
+0x8581aec3, 0xe82836d2, 0xda7f4781, 0x40d67ff3, 0xcc335f7f, 0xce207f44, 0xff9181f8, 0xbae52614,
+0xfccdf700, 0x9dc19f54, 0x5d7faefc, 0x5bcc2357, 0x817f7fb1, 0x6f5a9dd7, 0x81af5633, 0x810a7f59,
+0x551c8a18, 0x4b816452, 0xe981d940, 0x81d175f6, 0xee7f5746, 0x276f51b7, 0x16ae817e, 0x652063ba,
+0xd84e5e44, 0x7f385f2a, 0xa2e1b28f, 0x7f817fd2, 0xd8477f34, 0x508f31fc, 0x7e357fc7, 0x7fa07f7f,
+0x7f6d7f52, 0x7f717038, 0x7f819c3a, 0x2f973937, 0x71ac7d7f, 0x790950c2, 0x9aa97f81, 0x7f427ffe,
+0xf3f974a1, 0x8107812c, 0x817fb77f, 0x4d458151, 0xc93d2395, 0xb497d049, 0x4b955c87, 0x047eaef1,
+0xcc6c07cc, 0x5eff94ad, 0x3bed1246, 0x74d8c531, 0x815afc81, 0xaccf6eca, 0xbe4e3f64, 0x079b37b9,
+0xa0898136, 0xfe8a81b9, 0xb7df45fc, 0x7f7f7157, 0x725581a3, 0x7f0c56ec, 0xe6430781, 0x4356def3,
+0x54ca7fc7, 0x234f3eee, 0x7f270367, 0x704981c1, 0xfe623836, 0x816d2725, 0x7b9d9e81, 0x3b49d3ae,
+0xd2925440, 0x819a7fa5, 0xb025c9a5, 0xbbd77fc1, 0x81737f81, 0xbcb891ae, 0x442ab466, 0x812e41cd,
+0xbdb081a8, 0x8e7f5c2d, 0x8458dfb7, 0xd77f8130, 0x9bcbbc47, 0x783a7f5f, 0x27c4d502, 0xadf8cb31,
+0xa51e9baa, 0x814d812f, 0x7f1a7f8c, 0x1874f4be, 0x4ac57f81, 0xc7b67f37, 0xc0817ff9, 0x8c81e1ae,
+0x6f7f9331, 0xa17f7f9f, 0x7bec5242, 0x81b79554, 0xa27f7f7f, 0x181da812, 0x52e681f5, 0x5c3781fb,
+0x895981ae, 0x7f7fa003, 0x9555817f, 0x32391fdf, 0x0c7fff6a, 0xb681981d, 0x1b93a683, 0x7fc3d495,
+0x83f5810b, 0x854399a0, 0x997fd57f, 0xe87f6929, 0x7fbafb81, 0x7fe201e3, 0x7f7234b3, 0xb6889ebb,
+0x8ea7cdcf, 0xd27fab96, 0x9a562c7f, 0x6c7f7fd8, 0x2277467f, 0xb3108ed9, 0x818d0171, 0x81bc477f,
+0x650719f9, 0xba7fe501, 0x7b5796ca, 0x3fc581eb, 0x9a90469b, 0x7f041112, 0x527f7947, 0x8d3d4657,
+0x7f627fdd, 0x64053a56, 0x817739c6, 0x812268ee, 0x69ed9b7f, 0x3d7f7f1a, 0x7f2264f4, 0xb76c55f2,
+0xd06981fa, 0xa72359d6, 0x3708812f, 0x7f7a4c29, 0x467a227f, 0x685eb4c5, 0xeeeb81c1, 0x2999b5e3,
+0x7f7fa0be, 0x73586e92, 0xc7817f0a, 0xc32e7f4f, 0x819b9046, 0x8179acee, 0x29b1a517, 0x557f0ef9,
+0x8116589d, 0x557f26f3, 0x861970dd, 0xcb817fef, 0x9bb6ba72, 0xaee4ddfa, 0xd17f81c9, 0x257f76bf,
+0xb04b4df4, 0x8f7f8124, 0x818181fc, 0x4fcc8f06, 0x2f7cc181, 0x4900141a, 0xf0709c16, 0x6865b5fd,
+0xd9ab9128, 0xa2321900, 0xa1a6de7f, 0x58e47f23, 0x54ac4a45, 0x1af1e618, 0xed633c24, 0xde7f7ff7,
+0xd48139b1, 0x5a640dcf, 0x63d9de7f, 0x81669358, 0x4f4571bb, 0x7f7fa692, 0x7debaf85, 0x9d7f7f10,
+0xd9c34e9a, 0x708981e8, 0xfc838ac6, 0x430bf6b2, 0x81a1a4ee, 0x7f8181ad, 0x35e98d7b, 0x4e3681de,
+0x7f7256e9, 0x7fa3b47f, 0x5a813e7f, 0x8128aa15, 0xff42357c, 0x581e98a3, 0x81534281, 0xe58196fb,
+0x11b90c6b, 0x7f81e5e5, 0x7473f57f, 0xa9475b2c, 0x24d77fa7, 0xa27f591e, 0x7fba81a5, 0xc9f19310,
+0x3c64d05f, 0x86aca9f0, 0x69b57f01, 0xbb747fb6, 0xdd81e923, 0xbe814a26, 0xe6811b22, 0x7f817fdf,
+0x7f81e46a, 0x647f8170, 0xf2812d9b, 0x7f765fa5, 0x812dfe0e, 0x2584ed72, 0x811a7f7f, 0x417f7fee,
+0x81d28138, 0x7f8e7fff, 0x9c7e28d0, 0xa71eb5f5, 0x65993e7c, 0x927ff0e8, 0x7f5cd4ce, 0x2886b35e,
+0x7f81d3bf, 0xc2d1441e, 0x2f2cbadd, 0x8c9c4cb4, 0x34dba16b, 0xaa37c5c8, 0x5881ec6f, 0xfc7f64a4,
+0x81bb8128, 0x7395489a, 0x7f647f7f, 0x44ef7f9a, 0xc3b4d6a1, 0x8693af02, 0x87fab099, 0x7f7f2f05,
+0x0191d5f8, 0x0b4281cb, 0x615b990b, 0x554b7f4c, 0x7f7f66a2, 0x817f793b, 0x5681aa97, 0x21aea0bc,
+0x81925b0b, 0x81c69839, 0xb115814b, 0x9e81d8b0, 0xc70c6f7f, 0x8f14de16, 0x3f81b4bc, 0xaa0c25dd,
+0x81f8346b, 0x6981226b, 0x81b1817f, 0x7f2081e4, 0xa2848117, 0xe4cbcc32, 0x817081d5, 0x817dbf75,
+0x157f2614, 0x5a0477d6, 0x8b818105, 0x9e7f34d4, 0x48da3235, 0x397ff6d2, 0xa02f7092, 0x817f8b13,
+0x307b35ca, 0x783c7fe6, 0xa2c29081, 0x555b8101, 0xf764ee86, 0x463a8149, 0x577f837e, 0xb1948151,
+0xbd2f86f5, 0x6e5fc338, 0x7f67a373, 0x55817003, 0xa1e17f77, 0x8a817fff, 0x49365e44, 0x817f8933,
+0x209ba8a9, 0x7f311515, 0x7f519140, 0xa9549352, 0xbd817f8a, 0xafc4a005, 0x620d407f, 0x88302fd2,
+0x5cf481f2, 0xbd7fff40, 0x7f7f9cfb, 0x91ae81fc, 0x73f15c81, 0x93814581, 0xc7e8818c, 0xc481a1fa,
+0x99818124, 0x7fecdbf3, 0x207d8d39, 0x64818328, 0x7f9dbf5d, 0x2181f9c2, 0x817f7f8c, 0x367c1801,
+0x2a019011, 0x815f5d39, 0x81817fb8, 0x7f22815e, 0xb3ceca8f, 0xa6560501, 0xfb548181, 0x2b7ffe18,
+0x5394bb1c, 0x7f9981d9, 0x7f7fce32, 0x815ba6e4, 0xabd0d732, 0x7f5c81fa, 0x7f369f77, 0xa42b7f51,
+0x900db9cd, 0x9993bde1, 0x7fc8819a, 0x116f9310, 0x8ef767b0, 0x7a817f02, 0x56819b81, 0x29aee511,
+0x7f2b8d3a, 0x818a442a, 0x555c3ff5, 0x1d6c4929, 0x7ea9697f, 0x780b8fa6, 0x097fa426, 0x9b7f89d9,
+0x165081de, 0x45a184c0, 0x405c7fc7, 0x6bbcd6d3, 0x7b81837f, 0x33867f12, 0x878f7f62, 0xc6cf1002,
+0xad819f7f, 0x3df9422a, 0x77ca9e81, 0x684f7fca, 0x30847f81, 0x81817fda, 0xedc6a081, 0x682c00eb,
+0xca767fdd, 0x1f7fb0e3, 0x377f8a7f, 0x5e85d200, 0xb9237f1f, 0xf2817f2d, 0x0dd88132, 0x81cc0037,
+0x739b39bb, 0xb47fb83c, 0xdf7f8181, 0x7f54f610, 0xbc9e3f06, 0x5762b272, 0x81ebc628, 0x7f9845b9,
+0x7d901f63, 0x81ce7f36, 0x0ebd8e7d, 0x9a81d963, 0x644c3f81, 0x227fbdeb, 0x8e2d5f81, 0x54efc59a,
+0x94ed5511, 0x817f944b, 0x38393d81, 0x592f7ad2, 0x75814881, 0x63275d7c, 0x4a65de10, 0xeb818ff6,
+0x70f93fc1, 0xbbe83610, 0x7d94beba, 0xfd077f2f, 0x7f818181, 0xbb7f47d1, 0x4c8f7f6d, 0x587fa2fb,
+0xbd817f02, 0xae7f8123, 0x4fb981ac, 0x3fd2c446, 0x817f7fa1, 0xb28d81ce, 0x7f813fbf, 0x5a8181a8,
+0x2f6355c9, 0x75624fb5, 0x811842d0, 0x70a38146, 0xea52aef5, 0x7fffa3f0, 0x8f7fdcb0, 0xe31d81e5,
+0x7fe15a51, 0x21894817, 0x9c810f41, 0xe9428145, 0x7f819edc, 0x7feb1761, 0x81368181, 0x2c71f15e,
+0x26813c54, 0xf09c69aa, 0xd17751da, 0x25a1c23c, 0x7f812281, 0x4317b30f, 0x66908149, 0x81869b95,
+0x062874c1, 0x843481a4, 0x81743c89, 0x813e9cae, 0xd8397fd1, 0x7b495f55, 0x7f7f7f53, 0xc0b419e7,
+0xacf11d1b, 0x90a51003, 0x9efa5bb6, 0x77b8989f, 0x8b1ea17f, 0xc46537c3, 0xcca93d93, 0xa955d1db,
+0xc42743ed, 0x7f8a6442, 0x79ab8152, 0xfea48ff7, 0xfbbb819c, 0xa1be81ed, 0xa481da42, 0x477f7fd0,
+0xcc1acdfb, 0x767f1533, 0x99cdda46, 0xfb9c8109, 0x7f757f7f, 0x747f88d6, 0xb5404df1, 0x8b69b739,
+0xc762670a, 0x8125bded, 0x6481a452, 0x943e5aef, 0x7fe3557f, 0x8181bfc5, 0xb14d907f, 0x7f747f9c,
+0x54b4ff28, 0xe19d7fc2, 0x7f25887f, 0x7f6cc0b5, 0x34653ba1, 0xacd70015, 0x7901cc3b, 0xb081815e,
+0x812781fd, 0x871cd81d, 0xd1818494, 0xa97fc1ed, 0x81817f86, 0x9f3cf7da, 0x9857bb81, 0x9d1661d1,
+0x167f5814, 0x037fd0e4, 0x7f337f7f, 0x7fd40904, 0x376a4a69, 0x7f77a308, 0x73b61d36, 0xb4a318cc,
+0x7f9cc3e7, 0xe0d55532, 0xab58707f, 0x9c467f07, 0x8c7f2581, 0x60155a41, 0x7f3fd21d, 0x7f7f59a3,
+0x38176d64, 0xf77fd7a6, 0x0ed2ae81, 0x7f81cdec, 0x3c0f81a2, 0x747d9be6, 0x818c5f83, 0x432e7cfb,
+0x4a44b96b, 0xc8748423, 0x6b818181, 0xe34914d7, 0x980b64bb, 0x7fbe165f, 0x7f104bbd, 0x5c7f9d02,
+0x7f307fcc, 0x8399c1a3, 0x7233316c, 0x92aae7a6, 0x81deda79, 0x812805f0, 0x7f566985, 0xdeffbea8,
+0x2bbf427f, 0x7f819e05, 0x90811687, 0x817f81a0, 0xb581c481, 0xa05cfdd4, 0xe4983e52, 0x813e81e7,
+0x2b5ba42c, 0xf75aaf0c, 0x4bbc8181, 0x817fa502, 0x1a7f2d7f, 0xe97f0700, 0x724a5029, 0xe3700308,
+0xae7fb93c, 0x7f9581ba, 0x819d7f3d, 0x2b2ef875, 0x341c52ae, 0x21b23dfc, 0x6a82a2e1, 0xaa81ecc7,
+0xcf817ff6, 0x7fa17fb5, 0x1fc21a81, 0x817f895d, 0x54973cd6, 0x81a8c919, 0x9f4c7f38, 0x89817fd1,
+0x325d7fea, 0x959581c9, 0x711638c8, 0x07bb81c4, 0x1bf0818c, 0x346b81aa, 0x5d55817f, 0x7f7f8192,
+0x3b7f81d5, 0xe783f367, 0x863038b6, 0x7f53589b, 0x7f4de47f, 0x128165ac, 0x7fa6ccfa, 0xc19f8132,
+0xc3b3483e, 0xa63d628e, 0x2d707fd1, 0xd93a1319, 0x9197277f, 0xd77f0fbf, 0x8156da7f, 0x88819a98,
+0x3eb240f2, 0x81007fbe, 0x067fe653, 0xd3aa8150, 0xa625819b, 0x767ab13b, 0x937f817b, 0xd08181e1,
+0xa47f81b9, 0x3481bd4a, 0x65507fa7, 0xb79181d1, 0xbf1d7d3e, 0xb2818178, 0x8f329d1c, 0x2081b481,
+0x7b84a853, 0x7b679ce3, 0x9ba49881, 0x695ab122, 0x23be9081, 0xd7322a4a, 0x21db3fad, 0x81fc8145,
+0x84a1bad2, 0x9f307bb8, 0x81815581, 0xb84f1450, 0x6d3acdb7, 0xfd64811d, 0x7f8132e6, 0xd7458fee,
+0x81c54610, 0x7f7f73d1, 0x81a5c3bf, 0xe15f7fa0, 0x3c7f517f, 0x047f7fd0, 0x261e438d, 0xb3c47f34,
+0x5c81a1f6, 0xa2c62f5a, 0xe67f9255, 0x4df92530, 0x58877578, 0x817fdbd6, 0x9381d867, 0xb3815eec,
+0x3d8b8ad4, 0x814aab55, 0xa5477f7b, 0xed7f98d4, 0xae7f3681, 0x3b938138, 0x58e37f90, 0x7356b00c,
+0x754181fd, 0x3181503e, 0xc58dc451, 0x818b9cbe, 0x747fcbc4, 0x0918d1f1, 0x5b5ae00e, 0x761d6116,
+0x535ba62c, 0x8c0f22b4, 0xc98fb9ad, 0xad7f6d1d, 0x4f7fec7f, 0x1b437f35, 0x9004b258, 0x787c8d15,
+0xd04b81e6, 0x703d10f0, 0x7f7f8b89, 0x1674b61c, 0x9789ac81, 0xac6c7f58, 0x0e81ac48, 0x0881812d,
+0x117f7cc2, 0xa6bd8145, 0x59817f7f, 0x89cbb4fb, 0x697f9a81, 0x813e5281, 0xf57f4898, 0xee994b1d,
+0x60228cc5, 0x4c341db8, 0x7f6e7f63, 0x107f8151, 0x14397f55, 0x81a951d6, 0xb762ed40, 0x81c39dd6,
+0x546a0438, 0x7f8e88d7, 0x81810e7f, 0x7f7f654c, 0x3b412da8, 0x8aabcfe0, 0x4b83444b, 0x65bea3ee,
+0x507fb43f, 0x16c3c7c5, 0xe322a2d9, 0xfd5a0fd9, 0xc757577f, 0x6cd0b9af, 0xc6078100, 0x3256b728,
+0xc47fdc2f, 0x81dc4bb9, 0xd8d02073, 0xc38671f2, 0xbb9104b4, 0x7fb281b6, 0xcb817f81, 0x819f44af,
+0x29f781bc, 0xdfc231b9, 0x7fae7f43, 0x575b7f79, 0xf4c4414e, 0xe807d15c, 0xd08181ae, 0x8e81cd9f,
+0x942472c9, 0x816362dc, 0x9cba9281, 0xdc6fce74, 0x2b7f7f35, 0x37810c4f, 0xe8709e85, 0x5c7f984d,
+0x8153bc24, 0xbfe581bd, 0x9a7f9c84, 0x3be9e533, 0xb6938127, 0x82ca63d5, 0x08eeb19f, 0x59ebeb0f,
+0x4d7f14f7, 0x3c558f40, 0x62d26981, 0x8181f3a8, 0xe42585ea, 0x7f08817f, 0xaf8181a0, 0x0c5d16cd,
+0xa4dfee3d, 0x3a8182fa, 0x6381883a, 0x7fe9d01c, 0x5e659f90, 0x7f7f812f, 0x4a9d8179, 0xb1e4acf3,
+0x1b8189f9, 0xd983a4d8, 0x817f81df, 0xa2cf1f55, 0x817f337f, 0x7fa3564e, 0x14ae7c44, 0x4ca3859d,
+0x81b37fa2, 0xf8a0b7b1, 0x7f79c0cc, 0x7f3010f6, 0xa5be8c16, 0x2420b129, 0x7f7898f1, 0x7e818139,
+0x7fc919eb, 0x61819a67, 0x88928b15, 0x7eade0d3, 0x4e7fc323, 0x8deb5fe6, 0x7f3f7f9c, 0x81817fbf,
+0x989026db, 0xef81c203, 0x81e4a1e1, 0x35939d41, 0xbbaae870, 0x3d217fca, 0xddd9a1ce, 0x7f7f81a3,
+0x5bf18122, 0x81c55a52, 0xc95c450c, 0x7f5a03e6, 0x65654a14, 0x75d401f6, 0xe0cb297f, 0x5f3c8132,
+0xf7a312d3, 0x81c6d3af, 0x978e8181, 0x1476539f, 0x502534be, 0xd2909112, 0x6ad663ad, 0x7f7fbbac,
+0x8b70da23, 0x4d78af31, 0x7f8159f5, 0x81bad147, 0x348151dd, 0x5e68eace, 0xc2737fa0, 0xf97fa32e,
+0x7e7f81de, 0xa68baddb, 0xbb39817f, 0x7f9bc454, 0x6d09c327, 0xc37f3c33, 0x0a865f7f, 0xba8281e1,
+0x1a3ff406, 0x652c3fd1, 0x94af367b, 0xb381d8cb, 0x4045cce5, 0x7f7fd613, 0x795f7f42, 0xb1818193,
+0x7f371d3c, 0xef816b41, 0x2ca91acc, 0x48b5aa83, 0xaae807de, 0x26813f13, 0x81817f2a, 0x6083604f,
+0xd29e81f6, 0x7fb218ca, 0x4aa50170, 0xc2d74a22, 0x4f4971a3, 0xe9dc5f10, 0x7fb8bedf, 0x1f93814a,
+0xa97f7f0e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0=
+0xb5bc6ac8, 0xf5373664, 0x1310345c, 0xd5bae4e7, 0x1fc9e83e, 0xebfdfded, 0x84bd86ab, 0xb7aabe00,
+0x60b44fea, 0xb9067464, 0x30325378, 0xa9195955, 0xf70c6e5c, 0x90922632, 0xc90b1cdb, 0xf2f5fb69,
+0x73056b63, 0x1a33bf3f, 0x17755b5c, 0xc58bff6d, 0x2f4390b2, 0x2869d508, 0xe7c7dfe8, 0x38552963,
+0x21da5367, 0x07282b9b, 0xa4767105, 0x1e294251, 0xe350a940, 0xb8a6aa27, 0xed12d778, 0xf10d9ece,
+0xab93527f, 0xcf2da7e7, 0x68f6d0b1, 0x811f4bca, 0x577b06b2, 0x3234f13e, 0x30bab7df, 0x8dc47655,
+0xbb843bed, 0x86da3aba, 0x30950c97, 0xdd096d7a, 0xa871fd6c, 0x8bee4e6b, 0x8fea30d0, 0x6c05b4d2,
+0xf3e144d3, 0xd24ebb1f, 0x065635e5, 0x8d3f2cf9, 0x536c6c6a, 0xfbb0a5d0, 0x3d707b42, 0xc44d5982,
+0xa5f4ad8f, 0xf32c0970, 0x1bccf1a6, 0x05916020, 0xa64fb176, 0x5ede6a35, 0xaf4966da, 0x9df5e0e7,
+0x75042abc, 0x9ef10481, 0x11ddcbc8, 0xa0f5518c, 0xd5c23418, 0x2393d558, 0xfbe7dfeb, 0xed1c64c2,
+0x86a36508, 0xde2dfb1e, 0xb8d0fef9, 0x24505232, 0xc894e71c, 0xbcc752a0, 0x40b74e83, 0x90d23c8c,
+0x728e4a61, 0x108f0b08, 0x66f522ee, 0xc258d851, 0x35a31c44, 0x11311b5b, 0xfd3d5be9, 0x5ae448ff,
+0x4f64994b, 0x5b8247a9, 0x4021114d, 0x2f0b6e82, 0x5eaa9828, 0x50ac71c0, 0xfb86ee52, 0x0dc1ac9b,
+0xbbd47645, 0x8f357115, 0x978ceea0, 0xd557db99, 0x99b30388, 0xfc9a8a1c, 0x0f75be1a, 0x50143e22,
+0x8840989b, 0x738ec50e, 0xe6b2783d, 0xf67899c8, 0x27ebed69, 0x6c415a16, 0x3a6cc2dc, 0xcd4e4e5d,
+0x6cb12b2e, 0xdb88d7c0, 0x79cd1582, 0xbc422413, 0xe72ad2f4, 0x8eaac30f, 0x0bd86747, 0x6d87f69d,
+0x15d62038, 0x4b375630, 0x0d51b859, 0x16db2cb2, 0xf210603a, 0x0abeb833, 0x55c694d0, 0xe57ca43b,
+0x0ba94428, 0x1398a406, 0xe47d3889, 0x5a20203d, 0x250d7a1a, 0xd930ffec, 0x03992e79, 0xf2759376,
+0x024ec121, 0x91fc3a2c, 0xb7e11cc5, 0x4ff7d459, 0xb8700134, 0xd6e61758, 0x4eba0a32, 0xb747e3ec,
+0x7073fad7, 0xded80f99, 0x331e2f1b, 0xfa1f1bed, 0x056424a2, 0x1d1d95e0, 0x550b9ec8, 0x51ee2a38,
+0x19525153, 0xd70c4cd5, 0x0d6cd7ad, 0xe44d1cf2, 0x30dfecda, 0xdacd7fe8, 0x7321d795, 0xddf48ef4,
+0xe271e6a4, 0x9c1feecb, 0x951fcd7b, 0x8acc5a03, 0x3fb83527, 0xe306de74, 0x7b9cd6ee, 0x8e140885,
+0xd4c91e8d, 0xe8c39733, 0x0f02f87f, 0xfb06b1b9, 0x0dc9349c, 0xf76bae8e, 0x4f642a07, 0x3d48a9aa,
+0xe3ea323a, 0xa1cd5c8a, 0x40aa0e70, 0x132042d3, 0xa9732f6c, 0xd15a00c4, 0x43d3b046, 0x9a51ebd4,
+0xc46ee0ed, 0xe2a2148b, 0xf5c478f0, 0x1fb01cf3, 0xf4f321ec, 0xd973811f, 0x11ad11b9, 0x5c67adda
+
+e =
+34560
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
index a866878..cfff56a 100644
--- a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
@@ -666,12 +666,15 @@ ext_scale =
 num_maps =
 0
 
+r =
+0
+
 code_block_mode =
 0
 
 op_flags =
 RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
-RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
 
 expected_status =
 OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
new file mode 100644
index 0000000..93792dd
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
@@ -0,0 +1,991 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..ab2deb6
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
@@ -0,0 +1,993 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+input1 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
new file mode 100644
index 0000000..781f8d5
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
@@ -0,0 +1,2449 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1,
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..937c23a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
@@ -0,0 +1,2451 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1
+
+input1 =
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
new file mode 100644
index 0000000..f0bbed1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429
+
+input1 =
+0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e, 0x6730b095,
+0x78f7c059, 0x99
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xde639c99, 0xea20a04f, 0xda872110, 0xde5b08e6,
+0x3739dabf, 0xdc015a9c, 0x7db088b6, 0xdb8e6f42, 0x6be6c1df, 0xf5297b75,
+0x13566521, 0x602b7d06, 0x9536c5c1, 0xb3b80104, 0xbf0519bb, 0x2a72e0f0,
+0xd9e89f7a, 0xcf3d85f5, 0xd3c3e827, 0x5537ab7b, 0x8b7b0d80, 0x43618aba,
+0xf4f10968, 0x52e765f0, 0x837af128, 0x75871cf8, 0x27e94bff, 0x99cddcee,
+0x1937f910, 0xd0
+
+e =
+1380
+
+k =
+456
+
+ncb =
+1440
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
new file mode 100644
index 0000000..23a1b10
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
@@ -0,0 +1,328 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x8384dda9, 0x694de7a8, 0x1d2604f8
+
+input1 =
+0x647b5b37, 0xb235179e, 0x9b72fa9f, 0x95f0dd27, 0xe3d0b584, 0xc0c5a4a3,
+0xa46c2ddb, 0x76b5124a, 0xe07273de, 0xd7dd4163, 0x9feb8c26, 0x82d47198,
+0x106bae47, 0xbfa90e78, 0x0f83ee80, 0x157ccf3a, 0xb32cf008, 0x86908ed7,
+0xfa83d272, 0x409b80d5, 0xbe0bdbc1, 0x77ff05bc, 0x2a4b347b, 0xad7ebf48,
+0xd21d50df, 0xe7ac97ba, 0x31f0e405, 0x5da21104, 0x0ec1f016, 0x2fb88576,
+0x0cc56f40, 0x83524baf, 0x27d6fbf6, 0xf9ab0208, 0xbe9080e9, 0x4d0f24a3,
+0x64e505fe, 0x617078a8, 0x7722646b, 0x6e688578, 0x09073a5f, 0xbc411a65,
+0x9c4c6052, 0xf1dd2823, 0x8f628ff7, 0x87376338, 0x61caff8a, 0x98483fdf,
+0x8e1d6e83, 0x659a5a20, 0x8aa88b06, 0x67418437, 0x40ed9259, 0xf8c46f3a,
+0x03421725, 0xabb9e9d8, 0xa66e5e0e, 0x6f55e795, 0xc3bfb8f1, 0x0cf82921,
+0x30daf099, 0x91861e51, 0xb9c4210f, 0x6c2d7a06, 0x15bc344f, 0x48b591f6,
+0x226d4092, 0xed6553ec, 0x5c586be3, 0xa4987693, 0x10ddcf8d, 0xd7ed5a67,
+0x79b85bcd, 0x4d592345, 0x4ce945a3, 0x0fc3837d, 0x56fe007d, 0x5e9275ec,
+0xfe7c865c, 0xcc2beea0, 0x0cf942d9, 0x49154874, 0xc7aa4d5b, 0x4e17ce42,
+0x2f24e407, 0x1b58d55c, 0x9f5ff14e, 0xa41f0b96, 0xee5cd5c8, 0xeafecd05,
+0xe5c9f211, 0xe4ecaa7b, 0xf906420b, 0xe0d7b63b, 0x978a5c06, 0x112793c2,
+0xea03d49a, 0x66ca3afb, 0x01fa1cd4, 0x617df025, 0xa1489b42, 0x748f7864,
+0x3ec92bab, 0x795fe037, 0xba5663ed, 0x39e19f7a, 0x145af072, 0x3f37ae3a,
+0x4fabc518, 0x3ea9e8cb, 0x73e8e393, 0x21cd02d7, 0xb1a53060, 0x8a5d94ae,
+0x13532921, 0x2c955771, 0x943c412d, 0xc00981a9, 0x0d080e03, 0x8e37d0a0,
+0x4436d0fb, 0x4d95a049, 0x5a417836, 0x34155d21, 0x54545bb5, 0xf83ed24f,
+0xf2899b97, 0x9558a1af, 0xc0da7c82, 0xdb203ba3, 0x29e46cc2, 0xabb83fec,
+0x5a4ef521, 0xbf2f850c, 0x12b33a77, 0x4ccac8b4, 0x7a54538a, 0x9a46d200
+
+input2 =
+0xb8e5f663, 0x203432f6, 0xfb85cd0c, 0xeaa8384b, 0x02794cd9, 0xef4fef8d,
+0xaa9a1053, 0x631b87e6, 0xdcb3547d, 0x7586180a, 0xa120e1c1, 0xef7b27be,
+0x41fc9d09, 0x6d51533b, 0xda1874c1, 0xf260d2f4, 0x6278fd5f, 0x0a124761,
+0x09cd8482, 0xf9d74008, 0x25996d51, 0x02e64f20, 0x6568ed32, 0xf9042aad,
+0xe9fc6bf2, 0xd6776755, 0x8ee536ac, 0x5b5edf46, 0x18fd8add, 0xeb0f680f,
+0x8b0360a8, 0xe3a0d12c, 0x25ca50f6, 0x8bbd71fa, 0xc83bd21a, 0x09f6b75d,
+0xcd02eaec, 0xafb06776, 0xcae07c61, 0x2c0548a9, 0xe311c76f, 0x05304767,
+0x043ae4dd, 0x3648c9b0, 0xe9dfda3a, 0x4d252727, 0xa3237636, 0x8c8ed3f8,
+0xb30a6d76, 0xb71ca52b, 0xe667bfdb, 0x513c58fe, 0x6fae21e0, 0x2d21cf6b,
+0xb799b698, 0xf64019a2, 0x6dc8bc3b, 0xf186373e, 0x301f89fd, 0xd40baf29,
+0x744f5323, 0x4a7af246, 0xcd233083, 0xbbc3e502, 0x3d2882f6, 0x925a43f5,
+0x0a8c9817, 0x27bf2de3, 0xf26365be, 0x112312a7, 0xca95075a, 0xa4b4b6b8,
+0x2e370826, 0x504d5377, 0xde398b34, 0x21b77d86, 0x18bd6514, 0xbc41f116,
+0x88405585, 0x8555cc9d, 0x2ec213b2, 0x542b1842, 0x063579b3, 0xe47fb6c5,
+0x542485fd, 0xcb0aba36, 0x1703abb8, 0x0dc54612, 0x7a58cdf3, 0x0a39a9c7,
+0x7c259899, 0x7074495c, 0x0665f1e8, 0x1660adf9, 0xbe0eca10, 0x55a3bf42,
+0xe4ef353f, 0x8caa8703, 0xf9915fcb, 0x45f97d9b, 0x0eee5b66, 0xa3caeeeb,
+0xfc322d2b, 0xaa7f763c, 0x6ffc0439, 0x22ff095e, 0x6095c83d, 0x4b217bef,
+0x09486a68, 0x40b05bb8, 0x67f8d3ca, 0x7018f808, 0xf1f808ce, 0xa096fdd2,
+0xa73628dc, 0x1a03888e, 0x0cdb727c, 0xea4370eb, 0x36b60c20, 0x9a48fe6f,
+0x1141dff8, 0xb6f113e0, 0x92da8eb5, 0xe9221484, 0x5bcba785, 0xb1fe1e7b,
+0x93d95acf, 0x816daadb, 0xa9e97eaf, 0x41bedd
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x3b787aa9, 0x4fde63dc, 0x10ea20a0,
+0xe6da8721, 0xbfde5b08, 0x9c3739da, 0xb6dc015a, 0x427db088, 0xdfdb8e6f,
+0x756be6c1, 0x21f5297b, 0x06135665, 0xc1602b7d, 0x049536c5, 0xbbb3b801,
+0x0cdb0c19, 0x7b2ad622, 0xfee8218f, 0xc5c7f123, 0x8abd3301, 0xa15b534d,
+0x29dd2053, 0xd409abf9, 0x3ef19d6b, 0x70a3cbc2, 0x7a51423a, 0x4505b2ad,
+0xdc74c75e, 0x068751a9, 0xb0b56437, 0x14a10371, 0x76af806f, 0xa8a47e19,
+0x7c97a26e, 0x7998a3d6, 0xdc1ad1e2, 0xb532a301, 0xca8a3e7d, 0xd0aef374,
+0x204990c0, 0xc7011aec, 0xa69151ea, 0x53390026, 0x7bf0d762, 0x735c2202,
+0x64159e54, 0x5a3b1a56, 0x9ef1def2, 0x0ab8a961, 0x587b0886, 0xb8cc5975,
+0x2a5a0f23, 0x069d05be, 0x9cc3c207, 0x40ef1a02, 0x4fae3f5b, 0x1f127aae,
+0xd4e6d411, 0x17ac43ef, 0xe4bf891b, 0xfbb21765, 0x2c560c7e, 0x8561988c,
+0x73a01032, 0x0cfef73a, 0x694c4991, 0x885d7a3f, 0x4218d1ff, 0xc2efaffb,
+0xaf9d9715, 0xf76de6b2, 0xcce8e8ff, 0x370e3800, 0x493675eb, 0xd8fbcbda,
+0xa5b382c2, 0x86c8f1ea, 0x3d724ea4, 0xb067034c, 0x6491d87e, 0x1a745ce4,
+0xbb27180b, 0x1a2f0acc, 0xac4b7b3b, 0xe324578b, 0xc87928df, 0x9c1de566,
+0x0ce2a17d, 0xaf2e13ce, 0x146a8659, 0x8727f6ae, 0xe2df7d03, 0x1a8e4cb4,
+0xfa590976, 0x13a7c236, 0xc07489d0, 0xbe905e17, 0xafeb3d4b, 0x201e73f2,
+0x5bdca12e, 0x3e15a852, 0xbcfc3271, 0x5d398410, 0x6bfacc15, 0x011fc61f,
+0x43e43fd7, 0x0640717c, 0x96bfb3ff, 0x158eac19, 0x3b852e91, 0x74f9ceda,
+0xcac71326, 0xfc0e312a, 0x20e8137b, 0xa1162611, 0x239ac7fe, 0xb9d00f8a,
+0xea0b5241, 0x019f0d25, 0xc5153264, 0xb48a5547, 0xe54e339f, 0x17a6cca5,
+0x5065af0d, 0x5ce648b9, 0xb457b342, 0xc1cb3f0e, 0x28d03c8b, 0x5144ed7a,
+0xdb80779f, 0x53ce1b87, 0xbc071147, 0xbfe46c11, 0x7296785e, 0x83e4a63e,
+0xc58982e9, 0xac97c7b9, 0x3e2fe9ad, 0x5badf077, 0x75aa2457, 0xe90a9df7,
+0x8b6ccd4f, 0x0952f26d, 0x80a8378a, 0xb43e3207, 0xf2de9df0, 0x0fff3717,
+0x80446f72, 0xd05c0c7f, 0xdc9ad9a1, 0xe881678d, 0x290c1bd1, 0x99ca0de2,
+0x4b3304c7, 0x6ea6f4e4, 0xf620f405, 0xb2f0593e, 0x0a930b64, 0xaa79e973,
+0xb34cce52, 0x094579bb, 0x87e5be0f, 0x8f7da04c, 0x40c1952c, 0xbe986586,
+0x55f822cc, 0x55d8abe9, 0x5ae570c1, 0xe8c7eb76, 0x2a3c1721, 0x7d7d9237,
+0x8cd3a0c0, 0xa3818fa5, 0xfb4d2df0, 0x12f42455, 0x8e9f2a07, 0x45b28529,
+0x49b9c170, 0x0812d29a, 0xc1353e6b, 0x2701f0b3, 0xb8dbcf3a, 0x842c6fee,
+0xb9240b2a, 0x723d6490, 0x0cc20b5b, 0xe4fd1dc0, 0x99651ffd, 0xa38e1773,
+0x4e99bd3a, 0xe0c24878, 0x2dd78dba, 0x50cdaba8, 0x7b9678bf, 0x6e6d7824,
+0xe738e423, 0x22043a00, 0x4eaba169, 0x0f2808d5, 0xe49ec31d, 0x251f7086,
+0x4cafaf35, 0x524d1088, 0x5c1321bd, 0x8185032d, 0xb21a78eb, 0x51d13a3a,
+0xc4470b6c, 0xcb3b9f7f, 0xe32b35e7, 0x538b94ce, 0xe042ec95, 0x209b6116,
+0xde3b30f2, 0xd09c4b2e, 0x239fda51, 0x02b1b715, 0xf3c5e5de, 0x8a3ed6bf,
+0x4604fd3d, 0x9df50325, 0x631779d6, 0x87902b7e, 0x29890dae, 0x4e0011be,
+0x76476833, 0x478e5bfd, 0xf206abca, 0xad175a4d, 0xb1ec8cd6, 0xd3a9a423,
+0x27082a37, 0xe3341c5d, 0x06e1c714, 0x12d86950, 0x91d6f70e, 0x2a1c50cf,
+0xa81af940, 0xf75248fc, 0xbe05834f, 0x3f16b2f7, 0x3a4f399d, 0x17735bff,
+0x75fdc1cf, 0xae70d0f3, 0x97361ac3, 0x108acace, 0xd5ce994b, 0x87750f45,
+0xf1b6074b, 0x899de08a, 0xcdf940b8, 0x3333765e, 0x5b844560, 0xe2d7cd26,
+0xde5b3df3, 0x005b47eb, 0x3f84501a, 0xd5c4a613, 0x02ec8c64, 0x8a539710,
+0x2ef84f5e, 0x3cfd137e, 0x16291d76, 0x1ec4c1e2, 0x2c4603e3, 0x8914251f,
+0x15ff58e2, 0xad8a9b5d, 0xd42c2ffa, 0x91fb3db4, 0xbb0e6562, 0x0ed4d637,
+0x84dd5060, 0x4de7a883, 0x2604f869, 0x7b5b371d, 0x35179e64, 0x72fa9fb2,
+0xf0dd279b, 0xd0b58495, 0xc5a4a3e3, 0x6c2ddbc0, 0xb5124aa4, 0x7273de76,
+0xdd4163e0, 0xeb8c26d7, 0xd471989f, 0x6bae4782, 0xa90e7810, 0x83ee80bf,
+0x7ccf3a0f, 0x2cf00815, 0x908ed7b3, 0x83d27286, 0x9b80d5fa, 0x0bdbc140,
+0xff05bcbe, 0x4b347b77, 0x7ebf482a, 0x1d50dfad, 0xac97bad2, 0xf0e405e7,
+0xa2110431, 0xc1f0165d, 0xb885760e, 0xc56f402f, 0x524baf0c, 0xd6fbf683,
+0xab020827, 0x9080e9f9, 0x0f24a3be, 0xe505fe4d, 0x7078a864, 0x22646b61,
+0x68857877, 0x073a5f6e, 0x411a6509, 0x4c6052bc, 0xdd28239c, 0x628ff7f1,
+0x3763388f, 0xcaff8a87, 0x483fdf61, 0x1d6e8398, 0x9a5a208e, 0xa88b0665,
+0x4184378a, 0xed925967, 0xc46f3a40, 0x421725f8, 0xb9e9d803, 0x6e5e0eab,
+0x55e795a6, 0xbfb8f16f, 0xf82921c3, 0xdaf0990c, 0x861e5130, 0xc4210f91,
+0x2d7a06b9, 0xbc344f6c, 0xb591f615, 0x6d409248, 0x6553ec22, 0x586be3ed,
+0x9876935c, 0xddcf8da4, 0xed5a6710, 0xb85bcdd7, 0x59234579, 0xe945a34d,
+0xc3837d4c, 0xfe007d0f, 0x9275ec56, 0x7c865c5e, 0x2beea0fe, 0xf942d9cc,
+0x1548740c, 0xaa4d5b49, 0x17ce42c7, 0x24e4074e, 0x58d55c2f, 0x5ff14e1b,
+0x1f0b969f, 0x5cd5c8a4, 0xfecd05ee, 0xc9f211ea, 0xecaa7be5, 0x06420be4,
+0xd7b63bf9, 0x8a5c06e0, 0x2793c297, 0x03d49a11, 0xca3afbea, 0xfa1cd466,
+0x7df02501, 0x489b4261, 0x8f7864a1, 0xc92bab74, 0x5fe0373e, 0x5663ed79,
+0xe19f7aba, 0x5af07239, 0x37ae3a14, 0xabc5183f, 0xa9e8cb4f, 0xe8e3933e,
+0xcd02d773, 0xa5306021, 0x5d94aeb1, 0x5329218a, 0x95577113, 0x3c412d2c,
+0x0981a994, 0x080e03c0, 0x37d0a00d, 0x36d0fb8e, 0x95a04944, 0x4178364d,
+0x155d215a, 0x545bb534, 0x3ed24f54, 0x899b97f8, 0x58a1aff2, 0xda7c8295,
+0x203ba3c0, 0xe46cc2db, 0xb83fec29, 0xe1f521ab, 0xc6b9bfc2, 0x5c32cb2a,
+0x9ff27191, 0xd52f5c36, 0x5953596d, 0xb9686ed3, 0x087ca132, 0xa528467c,
+0x945c97ee, 0xbfa19e6f, 0xd4e19b4c, 0x55c03e10, 0x390bbd8e, 0x654a76c0,
+0x656030f0, 0xc157ac93, 0x02dcce46, 0x5dc06d58, 0x3b7fd9e9, 0xc8a4de6f,
+0xcbb105da, 0x8a1b6e0f, 0xeb1a7ecd, 0xfe809fd7, 0x43d70381, 0x0cfc5e49,
+0xf0a302d3, 0x9664b2c9, 0xb2793157, 0x5dd5cc39, 0x4e9d42bb, 0x26f65f3a,
+0xfdf325fb, 0x8fbd80f1, 0xd6dc87f0, 0xabd85a41, 0x308029ff, 0xb774c986,
+0x0b0fc9b4, 0xd57c5439, 0x3c3c5b4d, 0x0843d1cf, 0x11a1e765, 0x77d92661,
+0xe7142375, 0xe238ff84, 0xfbb66dd9, 0x3ac33a26, 0x7c843c33, 0x6ac40826,
+0x17d9ae96, 0x98edfd6b, 0x57747f0d, 0xae811573, 0x0cb107fd, 0x8e075d1a,
+0x44b82c2b, 0x5c831473, 0xe132923c, 0x56edfe59, 0xe41ef202, 0x1a4ffff4,
+0x711db68f, 0x097160f2, 0xcafacd90, 0x3861d5ae, 0xcdf9eccd, 0xcdd93506,
+0xaa171f8a, 0xe1de194e, 0xed1a1901, 0x1d9f9e42, 0xdcc2d911, 0x19782ad0,
+0xc52f93c8, 0x162a98b2, 0x56af9960, 0x6c9c5299, 0xcf9a19b7, 0x78c967b5,
+0xd045f7c3, 0xd71354ad, 0xb4b202dd, 0x44c5f03d, 0xf30ca027, 0x7c6e5360,
+0x0f687223, 0x089bc5e5, 0xaa82af26, 0xd3044038, 0x466b6c1e, 0x4f30716e,
+0xc38a5280, 0xd1835859, 0x7cf23e2c, 0x3c1c25dc, 0xdb16c0f6, 0x616d97e9,
+0xc4f921b2, 0xb222a9bf, 0x0da098cc, 0xaf24a9b8, 0x0531f892, 0xa532fc28,
+0xa1b7ff8c, 0x84185bde, 0xbf7e22ee, 0x0acd2cac, 0x8c9c9783, 0x06a12240,
+0xc72727bd, 0xd288dabc, 0x8cdb446e, 0x0775e50b, 0xff75e03c, 0x9b5e3401,
+0x0d72aba1, 0xead6e37f, 0x9e6ab0e8, 0x322bfaaf, 0xa77475ab, 0x209b5cca,
+0x95ec7cf2, 0xc9120454, 0x205950fb, 0x108b00f7, 0xe63691a1, 0x333de3ae,
+0x10a00cc6, 0x6627d276, 0x6ad7a7ba, 0x674bd137, 0x440ee9c6, 0x4baf4fec,
+0xf8fbbb08, 0x6cf14435, 0xeda46d4a, 0xc2970533, 0x1ef9901b, 0xa38c8a02,
+0x3cc92010, 0x11a2ad19, 0xacc4f626, 0x3b79c692, 0xba6fcc96, 0x023b4438,
+0x6e44da89, 0x706833e1, 0xc686d43e, 0x24de1fb0, 0x02cb4043, 0xcdcc9427,
+0x19874c6f, 0x1f0eac03, 0x451287ae, 0xde59e0f9, 0xe3d24b8b, 0xaacb7076,
+0xf9e917ec, 0xc38ee0ef, 0x1e35a948, 0x637e7d0f, 0xc46537e1, 0x57c719c6,
+0xd78e6388, 0x242b2bf1, 0xeeff65a3, 0xdba5167d, 0x52df5992, 0x2c176e9f,
+0x89edc76f, 0xad9bc6c8, 0x85d68905, 0x5fa6ace5, 0x0c29be5c, 0x382ac973,
+0xc90c37a6, 0x703c5202, 0x79982954, 0xb06169d8, 0x8b8eca2a, 0x150fddee,
+0x2ad08bc2, 0xe73410ed, 0x056c863d, 0x92207e0b, 0x61ad097d, 0x5b0112c3,
+0x0590cadb, 0xa4fd73a1, 0x1992d9c6, 0x40d3a1ac, 0x38b6c7e1, 0xc392aeea,
+0xebd97511, 0xcdaf098f, 0x7a37c361, 0xf2699fc9, 0x5f921fb3, 0xc2784ffe,
+0x0c41d640, 0x4a367b6c, 0xf16cc4af, 0xd8c3a120, 0x051d71e7, 0x339f9999,
+0xab664909, 0xa1ae5a9c, 0xcc0f88de, 0x3d4d7d88, 0x0aed3148, 0xd0768c85,
+0x7c7e9061, 0x587e3073, 0xa00baa91, 0x0742d49e, 0x8cdb3316, 0x6a65f748,
+0x97febcd5, 0x63f7e115, 0xe609e4ec, 0x1e7fec67, 0x41613968, 0x0781c35b,
+0xb43e97f2, 0x824b9c32, 0x32033289, 0x6f858691, 0x46bf3ba4, 0xc2c75bb0,
+0x3b93a4ce, 0x4269140b, 0xcee2b4c4, 0x2c7bc82a, 0xa75515dc, 0x2553582f,
+0x5bbd77f3, 0x9b418852, 0xfd8492df, 0xa6d60678, 0x08c8232d, 0xfde0decd,
+0xe9023c01, 0x618dc90f, 0xa7b37ce5, 0x6889c117, 0x818a1563, 0x6492d447,
+0x86fc80ce, 0x570d8ff2, 0x10ec5ab8, 0xc7c5b00d, 0x84cb4057, 0x544b7b69,
+0xb73fbb28, 0x09201691, 0xa63303af, 0x8aa52eca, 0x68e6bbef, 0x82c53c81,
+0x84f5b8ea, 0xf37cc22f, 0x291b9e0c, 0x882a6f6e, 0xc5d70964, 0x32f010ba,
+0xcc514415, 0x87a0d092, 0x1e64a4bd, 0x08210042, 0xb96becb7, 0x7b53f112,
+0xe07f1d2e, 0x850c5a4e, 0x3a77bf2f, 0xc8b412b3, 0x538a4cca, 0xd2007a54,
+0xf6639a46, 0x32f6b8e5, 0xcd0c2034, 0x384bfb85, 0x4cd9eaa8, 0xef8d0279,
+0x1053ef4f, 0x87e6aa9a, 0x547d631b, 0x180adcb3, 0xe1c17586, 0x27bea120,
+0x9d09ef7b, 0x533b41fc, 0x74c16d51, 0xd2f4da18, 0xfd5ff260, 0x47616278,
+0x84820a12, 0x400809cd, 0x6d51f9d7, 0x4f202599, 0xed3202e6, 0x2aad6568,
+0x6bf2f904, 0x6755e9fc, 0x36acd677, 0xdf468ee5, 0x8add5b5e, 0x680f18fd,
+0x60a8eb0f, 0xd12c8b03, 0x50f6e3a0, 0x71fa25ca, 0xd21a8bbd, 0xb75dc83b,
+0xeaec09f6, 0x6776cd02, 0x7c61afb0, 0x48a9cae0, 0xc76f2c05, 0x4767e311,
+0xe4dd0530, 0xc9b0043a, 0xda3a3648, 0x2727e9df, 0x76364d25, 0xd3f8a323,
+0x6d768c8e, 0xa52bb30a, 0xbfdbb71c, 0x58fee667, 0x21e0513c, 0xcf6b6fae,
+0xb6982d21, 0x19a2b799, 0xbc3bf640, 0x373e6dc8, 0x89fdf186, 0xaf29301f,
+0x5323d40b, 0xf246744f, 0x30834a7a, 0xe502cd23, 0x82f6bbc3, 0x43f53d28,
+0x9817925a, 0x2de30a8c, 0x65be27bf, 0x12a7f263, 0x075a1123, 0xb6b8ca95,
+0x0826a4b4, 0x53772e37, 0x8b34504d, 0x7d86de39, 0x651421b7, 0xf11618bd,
+0x5585bc41, 0xcc9d8840, 0x13b28555, 0x18422ec2, 0x79b3542b, 0xb6c50635,
+0x85fde47f, 0xba365424, 0xabb8cb0a, 0x46121703, 0xcdf30dc5, 0xa9c77a58,
+0x98990a39, 0x495c7c25, 0xf1e87074, 0xadf90665, 0xca101660, 0xbf42be0e,
+0x353f55a3, 0x8703e4ef, 0x5fcb8caa, 0x7d9bf991, 0x5b6645f9, 0xeeeb0eee,
+0x2d2ba3ca, 0x763cfc32, 0x0439aa7f, 0x095e6ffc, 0xc83d22ff, 0x7bef6095,
+0x6a684b21, 0x5bb80948, 0xd3ca40b0, 0xf80867f8, 0x08ce7018, 0xfdd2f1f8,
+0x28dca096, 0x888ea736, 0x727c1a03, 0x70eb0cdb, 0x0c20ea43, 0xfe6f36b6,
+0xdff89a48, 0x13e01141, 0x8eb5b6f1, 0x148492da, 0xa785e922, 0x1e7b5bcb,
+0x5acfb1fe, 0xaadb93d9, 0x7eaf816d, 0xbedda9e9, 0xa7ca7f41, 0x3dbc26b7,
+0xbc3bd6af, 0x2d439ab1, 0x033d7088, 0x55ce999d, 0xbf01aede, 0x69d66a12,
+0x66729f87, 0x8e32437f, 0x7c0cd769, 0xc2d6c28e, 0xb46447ae, 0x4a525520,
+0x93096dbf, 0x2a322bcd, 0xde416e8f, 0xb43de9a4, 0xe2103ebb, 0x416e35ed,
+0xd0c13478, 0x0298890a, 0x8d4878f3, 0x8e81f629, 0xd60a85bf, 0x10c2e72d,
+0x68b67fb0, 0x2981247e, 0x6bdbd269, 0xe43784e3, 0x812de42b, 0x867d394d,
+0x423b0ee7, 0x627b8d60, 0x23ab2664, 0x83177153, 0x13dca280, 0x49d3c872,
+0xd45a0b4e, 0x00d45a9f, 0x0c462361, 0x983f61a9, 0x8002d29a, 0x6fbea32b,
+0xfe480c9d, 0xc509b1ae, 0xa16a6480, 0x2ec3f091, 0x278b72bc, 0xedbf05b0,
+0x9b1b3b99, 0xe10ad07e, 0xd72e6076, 0x6c5a971a, 0xf8455dba, 0x4b7dc370,
+0x4a7cdaad, 0xed4f2283, 0xe6f08d15, 0xf6ad0a12, 0x1ae96f4f, 0x4f57bd65,
+0x64695652, 0x0cb93df1, 0x9af11326, 0xce713c08, 0xefc3aba9, 0xf650de25,
+0xb7b39517, 0x45c92ae6, 0x38a8e441, 0x60b1823f, 0xb061259d, 0xb6996e6a,
+0x78786198, 0x06309186, 0x77d3c6f4, 0x8d546f7b, 0xfc7abe48, 0x969ce149,
+0x76950457, 0xd773728e, 0xb6a62ac4, 0x6164c8d3, 0x4f4fd819, 0x0aa0b660,
+0x61d334d1, 0x3deca8cf, 0xec2841ad, 0x44636725, 0x235d3532, 0x3aecb4f3,
+0x3538c6e0, 0xf0060d47, 0x2ab167f4, 0x0b9af7cf, 0x0779ec25, 0x35a33e48,
+0x8a0b999b, 0x593d498d, 0xc336cabf, 0xd49ebae0, 0x4e1756d7, 0x949cd0fb,
+0x1df1c1ee, 0xfbcc6642, 0x31637c7a, 0xf5057c87, 0xa10f0991, 0x8ed58fb9,
+0x09078b6e, 0x20648f01, 0xc1db84e6, 0xde0bda37, 0x61318efd, 0x11cf175e,
+0xb5edbe81, 0xf8904fcd, 0x209f1281, 0x18808af8, 0x1fecace9, 0xe4266782,
+0x37e5b44b, 0x42398c69, 0x5c289090, 0x686fa23f, 0x1e53a0c2, 0x5dac1fdc,
+0x3483d874, 0xc1a4c007, 0xa0cd459f, 0xd189410f, 0xddddc858, 0xaece2922,
+0xdef79aca, 0xc4b9e092, 0xb0fd47c2, 0x82903f08, 0xac21977f, 0x5a5f8bc8,
+0x6dca69c4, 0x7b3ccc8d, 0x0ba11e02, 0x01cdc423, 0x94373db8, 0xa7467d8f,
+0x1c2b70c3, 0xcf8c0768, 0xda7ee497, 0x073acd49, 0x0350dccc, 0x5a6e39c2,
+0xf6f7d4cc, 0xc64af7b5, 0xc445ddaa, 0xc7e24642, 0x1e600f75, 0x47f85b15,
+0x57a8cd36, 0xf9f152f5, 0xefac27df, 0xddb3dd4e, 0xf8e27f9d, 0x6d0f2803,
+0xf64634ef, 0xde7e7b1a, 0xc66b28e5, 0xeb61d4c7, 0x7439135d, 0x547fa78b,
+0x70a3a479, 0xd3200ea9, 0x3382d3c5, 0x1d9de4d8, 0xc343d60f, 0x8bd1e0e7,
+0xe4a541db, 0x5328df3a, 0x4e725ef6, 0x6c97f0e1, 0x221ff24d, 0x3ff691dd,
+0x3f856ea6, 0xf720842b, 0x7fae7374, 0x957b0aaa, 0x9f99a156, 0xe33eec87,
+0xe6761738, 0x792b71de, 0x05a6d387, 0x1e0a3b84, 0x9f7cfc15, 0x4cf4e3c7,
+0x5ee79441, 0x596c285a, 0xba89f481, 0xfa61af2c, 0xe7049f78, 0x59584da5,
+0xd4490299, 0x20933317, 0xee435639, 0x4cc83a0a, 0x86492fdb, 0x162613dd,
+0xc76fce3c, 0xaa454f8f, 0x1816c686, 0x5fc2c514, 0x83501909, 0x3685c367,
+0x46b2b281, 0xcdbef634, 0xd210178c, 0xffbff6e3, 0xed30aac0, 0x3196cc93,
+0xb848dda0, 0x5e2003b4, 0xc3e87650, 0x01a00bf2, 0x74a2d59f, 0x21b75986,
+0x6434d546, 0x8aefc874, 0xdaad3c0d, 0x3d23cfb2, 0x64e46cff, 0xded52526,
+0xd922d31f, 0x5bc9f960, 0xa748f3b5, 0x0da1da76, 0x7f5d4c6d, 0x0be533c1,
+0x2b7e40d0, 0xe25059b6, 0x97848fc2, 0x53a3d340, 0x532cda5d, 0x6f4567dd,
+0x9ca35dee, 0x034d1a87, 0xdd67abcf, 0xa5bca719, 0xadf605ca, 0x58206c3f,
+0x74533a11, 0xfe0f5ffc, 0x2a686617, 0xf6718993, 0x74c9d10a, 0xf056f283,
+0xd0203300, 0x6170b2cc, 0xf866b11d, 0x9469442f, 0x61b8960d, 0xd6030148,
+0x8bd2439f, 0xd60a4ba8, 0x4cbd1d64, 0xe2c713ee, 0x4259e3c9, 0xf2f5f436,
+0xcef487d1, 0x52f60b3d, 0xabf6637d, 0x97396dfe, 0xfe44b265, 0xd882ff2b,
+0x11a3cdcc, 0x206e
+
+ea =
+13068
+
+eb =
+13068
+
+cab =
+2
+
+c =
+3
+
+c_neg =
+0
+
+k_pos =
+4352
+
+k_neg =
+4288
+
+ncb_pos =
+13152
+
+ncb_neg =
+12960
+
+r =
+0
+
+rv_index =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_CRC_24B_ATTACH, RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
diff --git a/doc/guides/tools/testbbdev.rst b/doc/guides/tools/testbbdev.rst
index 7e6a4db..060164c 100644
--- a/doc/guides/tools/testbbdev.rst
+++ b/doc/guides/tools/testbbdev.rst
@@ -62,8 +62,7 @@ The following are the command-line options:
 
 ``-e EAL_PARAMS, --eal_params EAL_PARAMS``
  Specifies EAL arguments which are passed to the test app. For more details,
- refer to DPDK documentation at
- http://doc.dpdk.org/guides/linux_gsg/linux_eal_parameters.html.
+ refer to DPDK documentation at http://dpdk.org/doc.
 
 ``-t TIMEOUT, --timeout TIMEOUT``
  Specifies timeout in seconds. If not specified timeout is set to 300 seconds.
@@ -82,8 +81,8 @@ The following are the command-line options:
 ``-v TEST_VECTOR [TEST_VECTOR ...], --test_vector TEST_VECTOR [TEST_VECTOR ...]``
  Specifies paths to the test vector files. If not specified path is set based
  on *$RTE_SDK* environment variable concatenated with
- "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default
- data file.
+ "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default data
+ file.
 
  **Example usage:**
 
@@ -93,7 +92,7 @@ The following are the command-line options:
  ``./test-bbdev.py -v turbo_dec_test1.data turbo_enc_test2.data``
   The bbdev test app is executed twice. First time vector is filled based on
   *turbo_dec_test1.data* file and second time based on
-  *turb_enc_test2.data* file. For both executions all tests are run.
+  *turbo_enc_test2.data* file. For both executions all tests are run.
 
 ``-n NUM_OPS, --num_ops NUM_OPS``
  Specifies number of operations to process on device. If not specified num_ops
@@ -139,7 +138,7 @@ There are 6 main test cases that can be executed using testbbdev tool:
 * Latency measurement [-c latency]
     - Measures the time consumed from the first enqueue until the first
       appearance of a dequeued result
-    - This measurement represents the full latency of a bbdev operation
+    - This measurment represents the full latency of a bbdev operation
       (encode or decode) to execute
 
 * Poll-mode Throughput measurement [-c throughput]
@@ -170,49 +169,66 @@ It runs all tests with following vectors:
 
 - ``bbdev_null.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
 
-- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+
+- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data``
+
+- ``turbo_enc_c1_k40_r0_e1194_rm.data``
 
 - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
 
-- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
+
+- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+
+- ``turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_posllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
 
 - ``turbo_enc_c1_k40_r0_e272_rm.data``
 
 - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
 
+- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+
+- ``turbo_enc_c1_k456_r0_e1380_scatter.data``
+
+- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
 
 - ``turbo_enc_c1_k6144_r0_e120_rm_rvidx.data``
 
-- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
-
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18444.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data``
 
-- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+- ``turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18448_crc24a.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
-
-- ``turbo_enc_c1_k40_r0_e1194_rm.data``
-
-- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
 
 .. code-block:: console
 
-  ./test-bbdev.py -v app/test-bbdev/turbo_*_default.data
+  ./test-bbdev.py -v app/test-bbdev/test_vectors/turbo_*_default.data
 
 It runs all tests with "default" vectors.
 
@@ -227,36 +243,44 @@ Running Tests
 -------------
 
 Shortened tree of isg_cid-wireless_dpdk_ae with dpdk compiled for
-x86_64-native-linux-icc target:
+x86_64-native-linuxapp-icc target:
 
 ::
 
  |-- app
      |-- test-bbdev
          |-- test_vectors
-             |-- bbdev_null.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
+             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
+             |-- turbo_enc_c1_k40_r0_e1194_rm.data
              |-- turbo_enc_c2_k5952_r0_e17868_crc24b.data
-             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
+             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
+             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_posllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
              |-- turbo_enc_c1_k40_r0_e272_rm.data
              |-- turbo_enc_c3_k4800_r2_e14412_crc24b.data
+             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_enc_c1_k456_r0_e1380_scatter.data
+             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
              |-- turbo_enc_c1_k6144_r0_e120_rm_rvidx.data
-             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18444.data
-             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
+             |-- turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18448_crc24a.data
-             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
-             |-- turbo_enc_c1_k40_r0_e1194_rm.data
-             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
 
- |-- x86_64-native-linux-icc
+
+ |-- x86_64-native-linuxapp-icc
      |-- app
          |-- testbbdev
 
@@ -265,7 +289,7 @@ All bbdev devices
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -v turbo_dec_default.data
 
 It runs all available tests using the test vector filled based on
@@ -279,7 +303,7 @@ baseband turbo_sw device
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -e="--vdev=baseband_turbo_sw" -t 120 -c validation
   -v ./test_vectors/turbo_* -n 64 -b 8 32
 
@@ -307,16 +331,39 @@ baseband_null device does not have to be defined explicitly as it is created by
 
 
 Test Vector files
------------------
+=================
 
 Test Vector files contain the data which is used to set turbo decoder/encoder
 parameters and buffers for validation purpose. New test vector files should be
 stored in ``app/test-bbdev/test_vectors/`` directory. Detailed description of
 the syntax of the test vector files is in the following section.
 
+Naming convention for test vector files
+---------------------------------------
+
+The TV file name should follow this syntax:
+
+``turbo_<enc/dec>_c<c>_k<k>_r<r>_e<e>_<extra-info>``
+
+- ``<k>`` is k_pos in case of c > 1
+- ``<r>`` can be 0
+- ``<e>`` is the eb in case of c > 1
+- Remember to put the letters (c,k,r,e) before the nummber to help the reader to
+  know what the following number represents
+- ``<extra-info>`` should be pretty much based on op_flags, sperated by underscore
+  "_", and should be from this list and in the exact order as follows:
+
+  #. ``crc24a/crc24b`` : based on type of crc perfomed, remove if not crc is performed
+  #. ``sbd`` : in case that rate subblock deinterleave is not bypassed
+  #. ``rm`` : in case that rate matching is not bypassed
+  #. ``teq`` : when performing turbo equalizer
+  #. ``rvidx`` : in case that rv_idx is bypassed
+  #. ``negllr/posllr`` : for type of LLR used, remove if not soft out enabled
+  #. ``scatter`` : in case the buffer is scattered (split)
+
 
 Basic principles for test vector files
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------
 Line started with ``#`` is treated as a comment and is ignored.
 
 If variable is a chain of values, values should be separated by a comma. If
@@ -351,7 +398,7 @@ documented in *rte_bbdev_op.h*
 
 
 Turbo decoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo decoder it has to be always set to ``RTE_BBDEV_OP_TURBO_DEC``
 
@@ -528,7 +575,7 @@ Following statuses can be used:
 
 
 Turbo encoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo encoder it has to be always set to ``RTE_BBDEV_OP_TURBO_ENC``
 
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 4/5] test-bbdev : Update of bbdec test-app for FPGA and 5G testing
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 4/5] test-bbdev : Update of bbdec test-app for FPGA and 5G testing Nic Chautru
@ 2019-05-11  0:06   ` Nic Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 +++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  517 ++++-
 app/test-bbdev/test_bbdev_vector.h                 |   14 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 ++++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 ++++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 +++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 +++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 +++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 +++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 ++++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 +++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 50 files changed, 21936 insertions(+), 165 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 100644
index 0000000..e1df6ea
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_HARQ_1_1.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 100644
index 0000000..9901517
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
\ No newline at end of file
diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..653907d 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -6,4 +6,4 @@ sources = files('main.c',
 		'test_bbdev_perf.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
-deps += ['bbdev', 'bus_vdev']
+deps = ['bbdev', 'bus_vdev']
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
old mode 100755
new mode 100644
index 25340ec..a94ba9a
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -23,7 +23,7 @@ def kill(process):
 if "RTE_TARGET" in os.environ:
     dpdk_target = os.environ["RTE_TARGET"]
 else:
-    dpdk_target = "x86_64-native-linux-gcc"
+    dpdk_target = "x86_64-native-linuxapp-gcc"
 
 parser = argparse.ArgumentParser(
                     description='BBdev Unit Test Application',
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..cb5d06f 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,57 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set pf mode, true if PF is used for dataplane,
+		 *  false for VFs
+		 */
+
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +783,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +822,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +868,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +887,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +942,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +976,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +997,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1106,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1305,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1386,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1423,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1456,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1489,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1526,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1553,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1568,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1619,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
+
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
 		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
 
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
 		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1706,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1730,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1775,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1798,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1883,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1898,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1987,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2098,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2285,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2298,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2451,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2474,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2494,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2542,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1860,9 +2584,11 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2666,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2804,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2907,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2916,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2995,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3029,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3060,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3162,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3195,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3223,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3341,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3369,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3395,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3501,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3517,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..d478d76 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -2,7 +2,7 @@
  * Copyright(c) 2017 Intel Corporation
  */
 
-#ifdef RTE_EXEC_ENV_FREEBSD
+#ifdef RTE_EXEC_ENV_BSDAPP
 	#define _WITH_GETLINE
 #endif
 #include <stdio.h>
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..c8d38e3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,354 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..19a1537
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,685 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..d1f8f45
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,903 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
new file mode 100644
index 0000000..2588655
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
@@ -0,0 +1,939 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_HARQ
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x07151003, 0x09FBFA0E, 0xFB0BF9EE, 0xFC1306F8, 0x0BF6FCFB, 0x0407F709, 0x0CF30FF1, 0x10F7070F,
+0xFEFB0EF8, 0x0F0B12F5, 0xF3F506F2, 0x0B05F0F0, 0x00FA050B, 0xF40C15F6, 0xF7FAF5F5, 0xF7EC140A,
+0x05F20C0D, 0xF6060D10, 0xF90FF8EF, 0xEF08F20D, 0xF8F9F80D, 0x06F4F5ED, 0xFD12F3FE, 0x0610F30D,
+0x0312EEF8, 0x0DFB03F8, 0x01031408, 0xFD0E02F3, 0xF1EE0AFF, 0x0AF609F8, 0x1503FAFC, 0x0DFF04FD,
+0xED0F0F0F, 0x0CF7FE0C, 0x1006F1EE, 0x14EEF00A, 0xEE0AF2F2, 0x0BED04F2, 0x0612F5F2, 0x0FF314F4,
+0x00F00D04, 0x08140509, 0x05EC0E18, 0xF40B09F8, 0xE90F01EF, 0x0DFDFB02, 0x07EF10F3, 0x03F211ED,
+0xEF16FD00, 0x06F4040A, 0x0B0BF910, 0x0B0206F8, 0x0D0109ED, 0xECF2F006, 0xFFF50A07, 0xFB06F5F7,
+0x0D0EF210, 0x07010611, 0x06F2F9F8, 0x0E06EF00, 0x070CF1F8, 0x0C0FF405, 0x10EA0CF6, 0xFDEF0B14,
+0x17FCF80C, 0x08F506F4, 0x09000AFF, 0xFA05F50C, 0x040DF9F6, 0x0A0B12FD, 0x12F41201, 0xF20707F3,
+0xFDF402F8, 0xFDFB0FF0, 0xEE070D05, 0xE9F0F006, 0xFCF8F1F4, 0xF9FA0F0D, 0xE9050B09, 0xEEF2140D,
+0x020AF5F8, 0xFBED0CF6, 0xF110F4EF, 0x0C07130A, 0xEF12FD0A, 0xF6050708, 0x10F1FA00, 0x0B0CF40D,
+0x04F5FBFF, 0x00EEF2FF, 0xEFF9F701, 0xFA140DF8, 0xF404ECFC, 0x0A04EDF9, 0x0213080C, 0xF1F60916,
+0xF0F40000, 0x1303F614, 0xF009FFF2, 0xF8F5F2FA, 0x0B0C0414, 0xFB0E0EFA, 0x12010B11, 0xF50EFA05,
+0xF4FBFA09, 0x130605EF, 0x0B030B0E, 0x0717E7F3, 0xF405FDF5, 0xEFF5EAFE, 0x07F9F3FB, 0xF9FD0812,
+0x0DF70A16, 0x05F210F4, 0x06F708F3, 0x040C0EF9, 0x090D0AF2, 0x02FFF9FB, 0xF7F5FD12, 0xFF0BF5FB,
+0xF1F60A0C, 0x01EF13FD, 0x070BED0D, 0xF10A0BF7, 0x01010BF4, 0xF703FBF6, 0x06FAFA05, 0x050CEFFD,
+0x1107EE00, 0xF5EEFBF0, 0xF3EF0615, 0xF203FC12, 0x0FEC000B, 0xF70C0C06, 0x04F6EE0E, 0x0EF1070C,
+0xFE0D0A10, 0xF6EC0CFA, 0xF5060D07, 0xF708E8F0, 0xF5EEFDF7, 0xEE09F6FD, 0x020AEEFC, 0x090BE811,
+0xF70CFCF7, 0xEFF809F1, 0xF00AF1F5, 0xF00C0CFB, 0xFC0AF4FF, 0xF8FB0817, 0xEEEFFA04, 0xFB04EC08,
+0x02F411FE, 0xFCFDF2F4, 0x06EB0307, 0xF905F108, 0xF4ED09F7, 0xF7FFF010, 0x0CF601E8, 0xEEF714F0,
+0xF502EFFA, 0x0A000AF1, 0xF5F30501, 0xF1F008F2, 0xFD06EC11, 0xE9FA02FF, 0x0A15F6F4, 0xF307080C,
+0x10F7F20B, 0xF9F90402, 0x09FEF315, 0x0DFA060B, 0xF6FC08F7, 0xF707FB06, 0xF00A050E, 0xF40608FD,
+0xF6F8F1F5, 0xFAFBFDF7, 0x0AFA0A11, 0x03080C09, 0x11F1F8FF, 0xFF000CE9, 0xF7120C0A, 0x05F4FD03,
+0xF5030203, 0x0C0914F8, 0xFDF8080B, 0x12FBFD0A, 0xF308FF09, 0xF9FA0B14, 0x0EF71117, 0xF50AF2EF,
+0x0D160610, 0xF2FBFE0F, 0xF907F5FC, 0xFE110707, 0x0D0BF9F7, 0xFC050808, 0x0B08F5FC, 0xF206F1F9,
+0x1DF5FAFF, 0x0BF0060C, 0x020C110E, 0xFB040007, 0x02F4F4F8, 0x0D100EF0, 0x110201F3, 0x06F5EA00,
+0xF4E80DFE, 0x0A0E0A01, 0x07FB0DF7, 0x06E7F712, 0xFDFE06F9, 0xF4F00CF0, 0x0809F5F9, 0xF30CFA09,
+0x16F6EFF2, 0xFEF6EBFA, 0x0D0E090D, 0xF70DEF08, 0xF015F0F3, 0x15011206, 0xF305ECF2, 0x180301FC,
+0xFBF2F1F8, 0x05F9070F, 0xFC0C0813, 0xF3F9F2FD, 0x11F30EEF, 0x00FCEDFE, 0x0D05F810, 0x10F7FDF9,
+0xF9EA0AE9, 0x0BFA08F3, 0xF90505F8, 0x10FA0DF8, 0x14FB14FE, 0xF0F6EDF3, 0x0D03F8FC, 0x0AF00E0E,
+0x0C000203, 0x08F81612, 0xFAF1FFF9, 0x100CFDF3, 0xF609F1FA, 0xF5FB14FC, 0x0CFD0808, 0xF000FE0D,
+0x04F7070A, 0x12F50F00, 0xF90FEE08, 0x110CEFFA, 0x090C0B0A, 0x0D0B0DF4, 0x0EFBF80C, 0xFC030604,
+0x09F804FA, 0xF2F709F5, 0x08FF0F13, 0xF2FAFA02, 0xF101F512, 0x0E0B07F4, 0xF60FF9F7, 0xFBF4F107,
+0x05F6FD07, 0x0EEC080C, 0xFBFBFFEE, 0xF713FCF8, 0x0D08F6FB, 0x1612060D, 0x120DF4FE, 0xF50AECF5,
+0x02F00BF5, 0x0A05FF10, 0x0C020A06, 0xFAF4EB0E, 0x03F7F8F3, 0x13F4F9F5, 0xF70BF00D, 0xF302F614,
+0xF00A04F6, 0x0BFA100F, 0x0BF70B0A, 0x020713F4, 0x06F7F5E7, 0xF905F101, 0x04090812, 0xFFF9090C,
+0xF8F4F3F5, 0xF1FE07EF, 0x03FC0708, 0x03FFFCFF, 0xEEF90812, 0xFDF7FC0A, 0x150A0008, 0x09FFF3F9,
+0x06F2F2F1, 0xF0120BEF, 0xF90CF3F7, 0xF804ECFB, 0xF7E806F5, 0xFF0109FD, 0xEB08E70D, 0xF2FAF40C,
+0x06F70DED, 0xF1120216, 0xFF060DFB, 0x0EE70D01, 0xF5FFF6FF, 0x07F0ED0D, 0xF10A0C07, 0xF4F0EF0C,
+0x09F607F7, 0xF80BFF00, 0x030E07F4, 0xF80813F4, 0xEFF8F80F, 0x0AF2FC0B, 0xF303F4F0, 0xF1F9F5FD,
+0xFDF90402, 0x04FDF203, 0xF51B0EEF, 0x03F2F0FC, 0x07FC11F1, 0xF5F60F11, 0xF00D0907, 0xF317F20B,
+0x10031C00, 0x04F40009, 0xF011090D, 0x1006000B, 0x16FF0FF8, 0x0DF61110, 0x0CF70D04, 0x02F8F7FF,
+0x06FE0B09, 0x0D08F8F8, 0x080DFB06, 0xEF0F0E0C, 0xFF0CF908, 0x0305FDF4, 0xF4EE0E10, 0x08EA05EE,
+0x0B0A06FD, 0xF9FBFFFD, 0x0EF20605, 0x0EF2F6F7, 0x01FE0EF9, 0xF50107F7, 0x04F80616, 0xFEEEF4F3,
+0x140D08FB, 0x0F0C03F4, 0xFBF8FC01, 0x0D02EBF9, 0xED06F905, 0x1FF8F0F4, 0x0E0CF3FE, 0x0DF31402,
+0xFD0E07F2, 0x06F4F60C, 0x02150B06, 0xFCF2E901, 0x07F5F7F4, 0x02F017E6, 0x00F90305, 0x1008FD0D,
+0xF5F10B08, 0x09FB04F6, 0xFCF702F4, 0xF10F15F0, 0x071213FC, 0xF5EB0F08, 0xFDF6F005, 0x12EEFC18,
+0xF0FC0606, 0xFC0D0DF9, 0x0709ECFD, 0x0A0608F7, 0xFEEE14F0, 0xEDF60AFE, 0xED04090C, 0x12F50BF3,
+0x01F6010D, 0x0BEAF019, 0xF0080EF5, 0xFB08F2ED, 0x07120BFB, 0x040612F1, 0xFF0A10F0, 0xF6F4F30D,
+0x0D0700F9, 0xF6EC0BED, 0x030D010E, 0xF300F813, 0xEFF70FF7, 0xF2020D0B, 0xFC0B0AF0, 0xFA02F4F2,
+0x0E0BF005, 0xEE04F6F9, 0x1302F9F3, 0x08150603, 0xFB0D0407, 0xFFFFF7F8, 0x050FF8EF, 0xF4F6F3F9,
+0xEFF707FD, 0x04FBF5F0, 0x0DFCED00, 0xF10BEEF9, 0x07F80A12, 0xFBECFEF7, 0x06F3F704, 0x06EFF9FD,
+0x0016FF04, 0x03E41207, 0xEFF6EE14, 0x0802F413, 0xFE010A05, 0xF20403F8, 0x1AFBF816, 0x12EC100D,
+0x0EF70707, 0x04E6100E, 0xEF090D01, 0xF5EE1CF4, 0xF4F50609, 0xEFFFF50C, 0xF2F0FC05, 0x0102160B,
+0xF41015F9, 0x12F1F70C, 0x0FFFF10B, 0x0EF2F40B, 0xF8FD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF71108,
+0x05F30A06, 0xF7090DF0, 0x031AF9FB, 0xF8EC1A08, 0xF4EEF509, 0xF20202F6, 0x0E0B050F, 0xFBFBF30D,
+0x09ED0C0A, 0xF0F6FAF7, 0xF7FB04EB, 0x08ECF8FA, 0x0E10ECFC, 0xED040314, 0xE9EF0CF4, 0xF6F904FD,
+0xF7000001, 0xEFF01007, 0xFF0C1302, 0x05F4F2FC, 0xF908FB0B, 0xECF80AFE, 0xFDF7F302, 0xEA12EFF0,
+0x0F0F0D07, 0xF6FC0103, 0xF40607F5, 0xF2EF0FF9, 0xF6070005, 0xF40503FA, 0xEE0B06F8, 0x0100050A,
+0xF913F7FD, 0xF5EF0B01, 0xFDEEFBFF, 0xEEEDEA03, 0xF8F7F80F, 0x070D0F0C, 0xF50502F0, 0x0BFBF001,
+0x0A0CF008, 0xF6ED070B, 0x1A020DFE, 0xFDF2F818, 0x09010BF9, 0xF6ED0308, 0x040EFA02, 0xF9F2FB10,
+0xEF100B07, 0xF5FAF50C, 0x0F0CE9F9, 0xFB0E1304, 0xF103070D, 0x0CF3020D, 0xF80FF705, 0xFB1205ED,
+0xF5F1EB00, 0x0D070C1B, 0x0DF704F4, 0xF107FE09, 0xEF03F8F6, 0xFA020509, 0xFDF40A14, 0x16081215,
+0x09F5F7F6, 0x0EF8F6F0, 0x0AFB0EEE, 0xF3FC02F9, 0x0812EE0C, 0xFCF90710, 0xF6EA00F5, 0x0A04F0FB,
+0x09F7EE0B, 0x13F3F4F5, 0x11F718EF, 0x0CFC0BFC, 0xF70AEAFE, 0xFCF201FB, 0xF4000F01, 0xFBEE11EC,
+0xF70AF4FA, 0x0D020BED, 0x08FE090D, 0xF907F6FC, 0xFAF2F309, 0x0D10FD0C, 0x0E06FAEE, 0xFCFBFE06,
+0x15F8F4FC, 0x020D160B, 0xFFF4FB0C, 0x04FDE8FC, 0x090C120B, 0x0B1010F2, 0xF9EE0DF3, 0x0C03080D,
+0xF109FCFD, 0x0CF8EB11, 0x0604EE08, 0x07F8F4F6, 0xF807F8F8, 0xFCF51400, 0x050EFD0F, 0x0C0CF216,
+0xF9FFF20D, 0x0802F50D, 0xF50213F5, 0x0C0BF804, 0xF609F8EF, 0xF90AF509, 0xF914FEFA, 0xF10BEA0A,
+0xF8F3050A, 0x10F5F6FF, 0x0A120BFD, 0xF5F5ECF9, 0xF90DFC0C, 0xF20808F1, 0x01EEF00D, 0xF5EC0FF2,
+0xF4F30EEA, 0xEFFAF702, 0xFC17F6F7, 0x0C07F6FE, 0xF1ECF9FF, 0x09FEF4FF, 0xFA020B11, 0xFFEDFC0B,
+0x07F4ECFA, 0x02F6F6F4, 0x09F712F1, 0x0806EA0E, 0xF7F7F81A, 0x0B08EF07, 0x100CFCF7, 0xEFFB08F2,
+0xFAF0FD0C, 0xF3F31111, 0x16F5000F, 0x0DF10608, 0xFA07F3F3, 0x13F108FE, 0xEDEB120E, 0xFFF4F005,
+0x07F304F9, 0xF408FCFC, 0xFCFE0500, 0xF5F6ECF3, 0xF70609F3, 0x09020C01, 0x1001F80F, 0x0C0DFCF4,
+0xFB0F10F2, 0xF7F50B0B, 0x08F2F4F8, 0xF70BF6F8, 0x18F60808, 0xF107F9FC, 0x13F3F40C, 0x00EC0AFB,
+0x0BF30711, 0x06FFF70E, 0x17FC0AF4, 0x04E412F7, 0x0FF7FEF4, 0xFCF80209, 0x13FDED0D, 0x02F00801,
+0xF5070E05, 0xF111F6F1, 0x00F4E4FA, 0xF90E0E00, 0x07F4F50F, 0x0E0C0FF8, 0x14F70B0A, 0x09F6F4F7,
+0xECFD07F4, 0xF0070A04, 0x0112FAF3, 0xFF11EFF5, 0xF8F90905, 0x0409F507, 0xEAF7FBE9, 0xF1F5F0FF,
+0xF6F8F50F, 0x0BEA040A, 0xF701EFF1, 0x0D04F703, 0xEB07FE09, 0x1309F8E7, 0xF80BF3F8, 0x0EF6F50A,
+0x0912F6F1, 0x05FA0314, 0x0719F6EF, 0x1204FAE5, 0x0C0BF9FD, 0x0AF411EF, 0xF4F8EEF3, 0x02F0F10C,
+0x0F030107, 0x0AFEEF01, 0xFE0806F1, 0xF6F3FF15, 0x0B07E9F5, 0x05F9FB08, 0x03F8F3F5, 0x0FF7FD0E,
+0xF50DF7F8, 0xF6F7FEFF, 0x12F4F306, 0xFE05FB0B, 0xF2F2F2F6, 0xFAFB00EE, 0x0E110F06, 0xFA000CFD,
+0x0E02110A, 0xFA07E902, 0xF9FCF6F0, 0x0E08FCF5, 0x0514EFFB, 0xFDEEF4F8, 0xF9F70004, 0x0B07F9EC,
+0xE5140FF1, 0xF8090E06, 0x09EBEF0B, 0xFB0D0D09, 0xECFD0AF8, 0x0A02F512, 0xF504F90E, 0x0DF3030B,
+0x1002F20C, 0xFBEAFB02, 0x0AFD0805, 0xF1F1F6F4, 0xF807EFF7, 0x010107FA, 0xEE0DF6F9, 0xF90A0CFA,
+0x10F6F50C, 0x0B0B16FC, 0xF608F305, 0xFD15F308, 0xF9121515, 0xFA0BFF0A, 0x04F7FF0D, 0x0CFB03FB,
+0xFD160B0A, 0xFDEFF5FB, 0x0C17090A, 0x08090B09, 0xEAF5F5F8, 0xFFFB00FC, 0x0800FFF6, 0xF111E612,
+0x00F2F6F5, 0xFAEFEDF4, 0x0F0FFCFB, 0xF01009F8, 0xF6F4EFF7, 0xF3F0FB05, 0xFE02FAFD, 0x12EFF5F4,
+0xF3090907, 0x0B07FC11, 0x0CED110F, 0xF00709F5, 0x03FEF2F6, 0x04F702FA, 0xFB0C05F9, 0x09FAFC12,
+0x08F20E06, 0xFEE80BF5, 0x0AEA10EC, 0x08FAF1F8, 0x0A1012F8, 0x0306F6FD, 0xFB050811, 0xFFF80E05,
+0xF6F51212, 0x0705000B, 0x07F809F7, 0x07091503, 0x080B04F7, 0xF20DFDEF, 0x0809EEF2, 0x0F0D0C05,
+0x02FFF90E, 0x050A0EF4, 0xF4EEFF00, 0x08F5EDF5, 0xF1FFF500, 0x0DF4F80D, 0x03F614F6, 0x17F6FC12,
+0x08050A04, 0xF5E5F210, 0x0B0004FA, 0xFCEF101E, 0x0BFFFB05, 0xFEF202FD, 0x0A05F703, 0x090DF8FD,
+0xFF0904FE, 0xF90816F8, 0x0315FE06, 0x02F9E0F5, 0x1A07001D, 0x120EFE0A, 0x0F0D1305, 0x13FEFA14,
+0xF2EE0D03, 0x070D0202, 0xEFFA10ED, 0xF1040B11, 0x04FDF103, 0x01F2FAF2, 0x010CF60D, 0xF6E9EF04,
+0x050C10F8, 0x09F6F600, 0xEFF5F909, 0x05F40D0E, 0x08FA0A1B, 0xF9F40803, 0xF7F9040B, 0xFB10FBF9,
+0xF60810F5, 0xF0060BEE, 0xE60FEEFE, 0x07140DFA, 0x070F0D11, 0x020402F5, 0xEDF905F4, 0xF6F0F9EA,
+0xFC1404FF, 0xF10B13F9, 0xFF0FF80D, 0xF403EE0C, 0x0C0E0706, 0x05170E07, 0xF1F7F40F, 0xEFED0EF8,
+0xF8EF0D12, 0x0CFFF6F8, 0x0E090906, 0xF4F40612, 0x090C0301, 0xEF0A12F6, 0x0AF506F9, 0x0D0BFB11,
+0x0A0EF50C, 0x140BF6F9, 0x0DECFEE8, 0xF6F50004, 0x0C00080C, 0xF5EC11F2, 0x03F9EC0E, 0x0411FA09,
+0x11F70B03, 0xFDEA0301, 0x0BF805F6, 0x05EF090A, 0x11FC04FD, 0xF4F3FD09, 0x0AF50614, 0x0CF40B07,
+0x0D010BF5, 0x14071602, 0x070AF80A, 0x11F3F113, 0x0CFA0B0E, 0x0DF8EDEF, 0xEEF9F308, 0x10F6F1F7,
+0xF5F7F6F5, 0x10050304, 0x07F50AF4, 0xF4F9FEF6, 0x0B02FD0B, 0xF210FCED, 0x04ED0BE9, 0x18FAFA0E,
+0xF5F308F2, 0xE90808F9, 0xFA0CEAFF, 0x06F103FC, 0x0CF705F2, 0x08130D0F, 0x060A08F7, 0xF5FFEEF3,
+0x080C0FF6, 0x0CF6EE06, 0x0F1E06EB, 0x080D0CFA, 0x16F7F5F5, 0x100AF0EE, 0xF4EF020B, 0x04F1F313,
+0xFD07FDF5, 0x110FFBF9, 0x0C081A0C, 0xF7FAF4F8, 0x01F6EB07, 0x100BF7F8, 0xF302F50F, 0x0809EBF9,
+0xF0FDF708, 0x00090DF7, 0xF30100EF, 0xF8F7FDF5, 0xEE000AFB, 0x1C0BF8FA, 0x1004F409, 0xF3ECEF0E,
+0xF51209F1, 0xEAFEF402, 0x0EFC1310, 0x01F8F7FB, 0x0B06F314, 0x0710F90B, 0x03F1F9ED, 0xFA13F2F1,
+0x0907FA02, 0x02FA0601, 0xFD13F708, 0x06FDFA0F, 0x0F04060C, 0xFC03EBF7, 0xEB051312, 0x03FAFFFB,
+0x0BF70708, 0x0312F60C, 0xEC0203EF, 0x0B0AE308, 0xF9FAEEEF, 0xECF30901, 0x050F060B, 0x0003F102,
+0x10FE0AF2, 0x0205F6F5, 0x0112F609, 0xFA03E90B, 0x0B11FF01, 0x0213F107, 0x01070809, 0xEFED0209,
+0xFCEEF50D, 0xF2EDF3FF, 0x070F180D, 0x0E0A14F9, 0xFBF3F3FA, 0xF603F20A, 0xFEF2040A, 0xF7F50D08,
+0xECFE06F1, 0xF100FA0F, 0x0B02FCEB, 0xFF0A0DFC, 0xED00FAF2, 0x0AF307EF, 0x10F0F9F7, 0x060F0DEF,
+0xF4090C10, 0xF10A0A05, 0xF1FBF2F9, 0x0EF9F70A, 0xF502130C, 0x0CF20F0B, 0xFF0F0FFA, 0xFFFFEE0F,
+0x08F5090B, 0x0C090E07, 0x00FBF602, 0xF6F7F404, 0x0DF005F1, 0xF9F7F50C, 0x03F6F5F9, 0x0A1202F8,
+0x0AECEF05, 0x00F5F708, 0x0D0704F6, 0xF4041510, 0xFC050F05, 0xFFEB0BF1, 0xFD0CEDFD, 0xFB05070D,
+0xFD08EDF7, 0xECFCF505, 0xF9F7F8F3, 0x0DFE17F7, 0xF1040310, 0xF403FAFD, 0xF110F6FB, 0x12EF090B,
+0xFDEFF610, 0x0AE7F7F5, 0xF7FBF1FD, 0xFFF5F0F8, 0x06F1F0F0, 0xF8F7010C, 0x0B101AF7, 0x14F60109,
+0xFFFB0FEB, 0x09FE020C, 0xF70BEA10, 0xFFFB0DF4, 0x000608F5, 0xFFF70FFD, 0x040FFA01, 0xF1FA0DFE,
+0x09F3040C, 0x05EEEDF7, 0x0BFAF8F0, 0xEF070A14, 0xFE07F1F4, 0xF5060B15, 0x0EF8070D, 0xEB06F811,
+0xF9F2F60C, 0xEAEEFD0A, 0xF4F1F0E8, 0xF4F01009, 0x1306120C, 0xF9F3F8FD, 0xF9030C0C, 0x1514130C,
+0xF80D06F6, 0xF304F1F9, 0xF7F5F4F7, 0x0006F10B, 0x11F204F7, 0xFC0D0A0C, 0xFE02F6F7, 0x0B06F30F,
+0x13F6FCF5, 0x0C0BFC06, 0xF61011F4, 0x040EF005, 0x1609FC13, 0xF60E060F, 0xF50DED17, 0x12F11106,
+0x0D0C01F6, 0x01FC00F4, 0xF8FCFEE8, 0x03EF03FC, 0x08000C11, 0xFDF3F407, 0xF6091406, 0x0CFC0B09,
+0x040DFD0B, 0xF90FF10B, 0xFBE4FAF9, 0xF7FC0802, 0xF2080D06, 0x06060DF0, 0xF803F20B, 0xF5EEF3FA,
+0xF4FA0EF3, 0xEF04F1EC, 0xF6ED0DF1, 0xF6FB14F6, 0xF50FFAFF, 0x0AE6F409, 0x0DF8FBF7, 0xE7F2F210,
+0xF1F80B0F, 0x0204FD09, 0x0FF707F2, 0xF4F00AF7, 0x0B07F7FC, 0x01F7F9F1, 0x0F0207F5, 0xF80A0E04,
+0x1106010F, 0xF71304F9, 0xF20EF006, 0x0FFE0915, 0x0F02F607, 0x0608FA02, 0xFF0DF2F5, 0x0AEC050E,
+0x06FA1118, 0xFCEFF8F7, 0xF8080D14, 0x010FEF0A, 0xF9FAF6EE, 0x0BF1FE12, 0xF0F30206, 0xFEF40FF1,
+0x0D1105EE, 0x04F6F0FC, 0x0D161006, 0xFC0C12F2, 0xF610FC03, 0xEAFE110D, 0xEBF6FC13, 0x08F3F00C,
+0x0DF501F9, 0xEAF80808, 0x1605F60F, 0xF5F90AFF, 0xF2F4F709, 0xF104EDFA, 0xF5F2F80A, 0x0CF806FB,
+0xF8F2FAF8, 0xF8F3F70E, 0xFE04FB02, 0xF80DF70D, 0xEF0EF4EC, 0xF6F1EEF4, 0x04EBF2EC, 0xF6F50FEF,
+0xEFFA03FB, 0xFFFEF50B, 0x0B0FFCFA, 0x12F715FA, 0xF312ED09, 0xFA04EDF8, 0x0D0DF510, 0x080E07EE,
+0xF90BEE03, 0x0916E91A, 0xFDFC0800, 0x05F70F0F, 0xFE1108FA, 0xFDF6FAF0, 0xF10FF20B, 0x171017E9,
+0xFEEFEEFE, 0x070AFCF8, 0xEAF4FCF3, 0x060A08EB, 0xEEF2FF04, 0x09F6FBF6, 0x07020207, 0x15F5F20B,
+0x18EB010B, 0xFB11F9FD, 0xFF030B08, 0xF3F80C0D, 0xF5F4F7FC, 0xFAE3F604, 0x0AEB1312, 0xEEF70C0A,
+0xF5EE06F1, 0xF614F500, 0x160EF6F2, 0x1A03F010, 0xF4FF0FEB, 0xF0110A17, 0x12FCED08, 0xEC03F5FA,
+0xF8F8020E, 0x0D0DF9F9, 0xF0F503FD, 0x05FCF8F0, 0xF20200FC, 0xF20017EF, 0xFA051100, 0x0D00F8FC,
+0xEF060A12, 0xF0FCF6F6, 0xFC0EFAEF, 0x03090F05, 0xF5040DF4, 0xF608F4F3, 0xF309EF03, 0xF1F2FBFE,
+0x0501050C, 0xF909040C, 0x0EFFFA06, 0xFA04F7F4, 0xF4F9FCED, 0xE9F7EFF8, 0xF8F1F6FC, 0xFE04010A,
+0xF4100BF4, 0xF11005FB, 0xF1FA00F4, 0x05F3F9EF, 0xF6ECFC0C, 0xF90B100A, 0x01FAEBF8, 0xEA0C0D0C,
+0x010E0D13, 0xF3F7F70F, 0x000F0AFC, 0xF9FB0DF5, 0xF1ED08F8, 0x10F902F4, 0x07F8F80B, 0xE9EE10F4,
+0x0F06F2F2, 0x07F50B10, 0x0DFD13F1, 0xF002F508, 0xF818F505, 0x0C0608F7, 0xF0E609F3, 0xEF0CFEF6,
+0x00010CFF, 0x0CF40E01, 0x0EEBF2EC, 0x02FDEDFB, 0x09F3F9FB, 0x13080005, 0x070FF509, 0xF9EC05F3,
+0x020AF0EB, 0xF1FAF3F9, 0xFDF80FF2, 0xF80BEF02, 0x13F003F7, 0x050418F4, 0x020F0BF5, 0x10F41309
+
+harq_input0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF41A1B0E, 0x16F213D5, 0x0A1AF508, 0xEB14E7EB,
+0x18E0F2EA, 0x13E6EFE4, 0x15E9E719, 0xEA12E9E7, 0x1527F215, 0x150C1EEB, 0xFFDDE61B, 0x1D212005,
+0xEDEE23EB, 0x1FDC0513, 0xE4FBE1F6, 0xFBFA03EB, 0xEC24181A, 0xDF1F16DC, 0xE2ED11F1, 0xF1F023E2,
+0x2416E00A, 0x15ECDF18, 0xEA0C21EF, 0xF0E4DCE8, 0xEB0E1701, 0x11EA0F1E, 0xE21808E4, 0x10EAF417,
+0xF71C1B10, 0x0DF8E1E5, 0x15120FF3, 0xE91CE6EC, 0xE3EAF610, 0x0D12FFF8, 0x0A081CE6, 0x0FE6E5F9,
+0xEBE5E3EB, 0xE1F41406, 0xF50BEBEA, 0xE41A0B14, 0xDCF40AE3, 0x0F1213DD, 0x0B1F2414, 0x1E1DF60C,
+0xDE0FEF06, 0x1D00E80E, 0x07020CEE, 0xF72C191C, 0x151FE815, 0xEEEE18E3, 0x1DEA1816, 0x19160E1C,
+0x12E8EC13, 0x23F9061B, 0xE7000DEA, 0x0C19F3EC, 0xE2EEEC22, 0x14F1EEE3, 0x00EA1BDE, 0x15EADE1E,
+0xDEF9ED20, 0x0FE90A20, 0xEFECFADB, 0x0AECF70C, 0xE4DD160D, 0x0921E31C, 0x1409E20B, 0xF211E414,
+0xE1F11A1B, 0x0ADA1716, 0x100CE6EF, 0x161513FE, 0xEEE416E7, 0x1D0724EE, 0xF12E13F6, 0x1117DF12,
+0x06E9E3F5, 0x141BE504, 0x0B12DEEA, 0xF2E0EEDF, 0x0DE9F7E5, 0xE1F0EC05, 0xF4F0091E, 0x1D1E26EA,
+0xF30CEC16, 0xED21F423, 0x170D04E5, 0x10ED140E, 0xFAEBECE3, 0x1414F729, 0xFCD6E8FD, 0xEF141A19,
+0x16EF0E0B, 0xF414EB14, 0xF3111711, 0x1AEDF125, 0xE9252B18, 0x150306F7, 0x101814F5, 0x12ED1509,
+0xE80CE6FB, 0x0B0F1210, 0x20F0ECF0, 0xEDF207F0, 0x160AE1F0, 0xDF1E04F6, 0xE9E5F4F1, 0x110717F7,
+0xF2F0EEE3, 0x16081818, 0x080E22EF, 0x0CF7F2E2, 0xE81BE6F2, 0xF1F31C1D, 0xF1F2E4E8, 0xF6F5131B,
+0xE8E9DDD5, 0xEEE20EF6, 0xEDE2F20B, 0xDF1613F8, 0xEB23FA00, 0x19E5F2E5, 0xFAF017ED, 0x1311EA1A,
+0xE9FCEA0E, 0x15E61F0D, 0x14EC1813, 0x0F14F718, 0xEEECF3F6, 0xF1F8071B, 0x10ED041A, 0xE01122EB,
+0xDE17ED0E, 0x17F6FEE3, 0x220F17F9, 0x0CE920EB, 0x0A1AE5EF, 0xED1C02EA, 0xEEF0EAE8, 0x0B1C1F18,
+0xEA190BFD, 0x1AE3E418, 0x09F6EFDC, 0xEA100821, 0xF5DFEAEA, 0x0CF6F30C, 0xF616E424, 0xF9EE160F,
+0x17DEE7E7, 0x16F513ED, 0x0BFAE0EE, 0xE8111010, 0x1C1AF2DA, 0xDD1418ED, 0xE11CF6E8, 0xEB090D0E,
+0x15FEEBEE, 0x1AEF20E7, 0xEC1FEA15, 0xF3F511EB, 0xF700F3FE, 0xECF828E5, 0xF319EDE0, 0x22181A1B,
+0xEC17FC0F, 0x15181A10, 0xEC19EBEE, 0xF1EEECFD, 0x17F3FA0F, 0x1416170E, 0x06E7180B, 0xE3E6DC1A,
+0x06FF1A07, 0xEFEAE80C, 0x0FF60BFA, 0xE6E2E815, 0x1DE91EF2, 0x0AF0F00A, 0xE3F4040E, 0xE4FC14FD,
+0xEE0D22E8, 0xE20A2416, 0xE3E1EBE3, 0x1A16F713, 0xF2F2E411, 0x13E5EFF1, 0xDB0A15EE, 0xE328F10A,
+0x1FF00414, 0x0EE813F9, 0xE5F4E3EE, 0xF4ED1314, 0xF12DEC1F, 0xFBEE0FEA, 0x0CEE1AEB, 0xEE1912DE,
+0xF1E709F2, 0xF414150D, 0xFB18E8EC, 0x19EE0EF0, 0x0DEB130F, 0x25130DE3, 0x11FA1817, 0xEBF119E6,
+0xF4F2E2ED, 0x21D9FF12, 0xEAE1FE12, 0xEEF7ED17, 0xD6091CFD, 0x081EE524, 0x19F2F10A, 0xE210FC20,
+0xDB18E817, 0xDFED0CFA, 0xE414E913, 0x111AE709, 0xE1171AF5, 0xE518F90D, 0xFC10F0EF, 0xED15F0E3,
+0x0EEFEF0A, 0xE00A19F3, 0xF3EFE610, 0xEA1B1017, 0xEEEDE517, 0xE0ECF5E0, 0x072619EB, 0xF2F8E5E6,
+0xF011F6F6, 0xEAFC1914, 0xEDFB1413, 0x16EAE602, 0x0D062012, 0xE0EE11E6, 0x0DF71809, 0xF81515E9,
+0xEF1720F4, 0xEA08E1F7, 0x1A0DEF1A, 0x0B0607E3, 0xE90E15FE, 0xE62A09F4, 0xDF180CF6, 0xF61E12F9,
+0xE314190F, 0x14071AE3, 0xE71AFB12, 0x1BDB150D, 0x131EE5FB, 0x0F15F2E5, 0x120D19EB, 0x0C1CE816,
+0xF5EBF2F3, 0x07EDF3F4, 0xF51B280B, 0x0CE6DDEA, 0xDFEEE716, 0xF4E5EAEF, 0xFAF30CF3, 0xE1DB10F5,
+0x00E113EF, 0x1CF3F820, 0x1719E910, 0x090C1DE7, 0x0F11ECF6, 0xEFF6F117, 0x20DD1B11, 0x1A20D9F2,
+0xFB1B14F0, 0xEFD9040B, 0xE1F514E6, 0x201B1315, 0x1817FB17, 0x190103EB, 0x0C0E14DA, 0x0E2029EE,
+0xE7F2EF13, 0xEF0D1901, 0x12E31C13, 0xE3EBEC11, 0xEB10DFF0, 0x1A0B22F3, 0xF4F2D90E, 0xDF18121E,
+0xE7EAE806, 0x1419E8E3, 0x1416EC2D, 0xE6E01FF2, 0xEB1FE415, 0xE710E119, 0xEA0714E4, 0xEA07DA17,
+0x1CF3E9E8, 0xEAF4F7F0, 0x150C16EE, 0x1CE71210, 0xE11421DF, 0x18FBEBF0, 0xFBF6E70B, 0xEAEFE416,
+0xF519DC1B, 0xE3E7F3E5, 0xF00AE9E4, 0xF0160827, 0x1ADF1A14, 0x210DEBE4, 0x1FF3F417, 0xE7F0E718,
+0x0C05F2E4, 0x14EB1DEB, 0x1212F70A, 0xE0F7F1DC, 0xD41CF119, 0xF8FFF5E1, 0x16DF1A1B, 0xF71D18F0,
+0xED1A1EE3, 0x04D625E3, 0xDCE51CED, 0xE713F6E9, 0xF6111603, 0xE31912EE, 0xEF0E1DF1, 0xF51F01E2,
+0xE4131AE5, 0x080EEC18, 0xF8E2E6EE, 0x0CF31C1A, 0x14F31A1B, 0x13E9F7EA, 0xE0F11AF4, 0x10DFEF0A,
+0x0C0C1CEB, 0x171DCD18, 0x0C1AF2F2, 0xDA111109, 0xECFF0717, 0xE5EAF80C, 0x02F312EE, 0x16F41CEC,
+0x1600F30D, 0x24110E09, 0x1118211F, 0xF1ECF613, 0xEB071C1B, 0x0A0C2317, 0xF10EEEEE, 0x2321F0F8,
+0xDFE4EBE5, 0x20F61CF7, 0xDA01EADE, 0xE3E401F9, 0xF1191608, 0x10EBEF19, 0xE8E7F0ED, 0xF21815F1,
+0xE0ECEA15, 0xF2EFE8E7, 0x10EB13EC, 0xEE140917, 0x1814E415, 0x1B18EFF3, 0x1BDC12E4, 0x15F816E7,
+0x13DD0C10, 0xE6EFEBF4, 0xF11CFDF4, 0xF929E7E8, 0xD8211707, 0xE126FEF6, 0xE7F80118, 0x22EF0C05,
+0x17F121EB, 0xECED1411, 0x1D141128, 0xEC201718, 0x170CE309, 0x1E15FBE3, 0xE2E80512, 0xD50D1E0E,
+0xEFF918FA, 0xE51AE50C, 0xE61AEC1B, 0x1DF1F31C, 0x0AE40BEB, 0x17F51FF8, 0x0EE9181E, 0xE1E5ECE3,
+0x18E91904, 0xFD171D1B, 0x140A1617, 0xEBE5EF19, 0xF0E9E31D, 0xF91F0E1A, 0x17F21611, 0x0A1EF6E4,
+0x12F00F19, 0xEE11ECDE, 0xE8DFF114, 0x0E19EC1A, 0xDDF8F209, 0xDF13F0F5, 0xEB11F4F2, 0xE319E51D,
+0x131015ED, 0xF5141810, 0xF7EFEF1B, 0xEFE8EC11, 0x0A0BE5E5, 0xF1E5F2EF, 0x15F1150E, 0xF621DBDF,
+0x08F9F3F2, 0xF1FC0CFF, 0x130FF7F2, 0xFFF30AF7, 0xF6060CF6, 0x0DFA1EEB, 0x0AEEF7F5, 0xF113EF0B,
+0x0FF907F5, 0xFAF8080C, 0x0BF8F607, 0x09F9020F, 0x09F7FD08, 0xF7F501EF, 0x0BFA00FB, 0xEC0E0409,
+0xFE0212F1, 0xF8FBFC10, 0x100B0614, 0x13F1F1ED, 0xFA010702, 0xFD0F1308, 0x03F7040C, 0xFAFB0512,
+0x120CF708, 0x0A0802EF, 0xF301FAEF, 0x03020F0B, 0x05F5FEF2, 0x030B1209, 0x13071101, 0xED090709,
+0xEDFFEE0D, 0x0AF90F0D, 0x030AF3FA, 0xF508F20A, 0x000FFEF1, 0x0AFC02EB, 0xF3EF00F2, 0x0FEFF0F7,
+0x0A050910, 0xF90AFBF9, 0xF20B020C, 0xFF0F0FFA, 0x0907F50B, 0xF704FB02, 0xF70CF0F1, 0x12F8F6F9,
+0xF508EC05, 0x041007F6, 0xEBF10505, 0x050D0CFD, 0xFC0508F7, 0xFEF7F7F3, 0x03FD0410, 0xEF0B10FB,
+0xE7F5EF10, 0xF5F8FBFD, 0xF70CF1F0, 0xF60910F7, 0xFE0CFBEB, 0xFBF40B10, 0xF7FD06F5, 0xFAFE0F01,
+0xEEF7F30C, 0x0714FAF0, 0x061507F4, 0x0611F80D, 0xEE0AF20C, 0xF009F1E8, 0xF3FD060C, 0x140C030C,
+0x04F90DF6, 0x060BF5F7, 0x0D0CF2F7, 0x060F02F7, 0x0B06F6F5, 0x0E0510F4, 0x0E0F0913, 0xF1060D17,
+0xFCF40CF6, 0xEFFCFCE8, 0xF3070011, 0xFC090906, 0x0F0B0D0B, 0xFC02E4F9, 0x06F00806, 0xEEFA030B,
+0x04ECFAF3, 0xFBF6EDF1, 0xE6090FFF, 0xF210F8F7, 0x0409F80F, 0xF0F7F7F2, 0xF7F107FC, 0x0A0402F5,
+0x13F9060F, 0xFE150E06, 0x08020207, 0xEC0E0DF5, 0xEFF7FA18, 0x0F0A0814, 0xF112FAEE, 0xF4F1F306,
+0xF6FC11EE, 0x0CF21606, 0xFE0D1003, 0xF30CF613, 0xF808F5F9, 0xF9FF050F, 0x04FAF409, 0xF8FBF20A,
+0xF30EF2F8, 0x0D0D0402, 0xF1F40EEC, 0xF5EFEBEC, 0xFE0BFAFB, 0xF7FA0FFA, 0x04F81209, 0x0EEE0D10,
+0x161A0B03, 0xF70FFC00, 0xF6F011FA, 0x10E90F0B, 0x0AF8EFFE, 0x0AEBF4F3, 0xF6F6F204, 0xF50B0207,
+0x11FDEB0B, 0xF80D0308, 0xE304F4FC, 0xF70AEB12, 0x1400EEF1, 0x03100EF2, 0x1117FFEB, 0x03FAFC08,
+0x0DF9F80E, 0xFCF0F5FD, 0x00EF02FC, 0x00FC0500, 0xFCF60612, 0x09050EEF, 0x08F304F4, 0xF2FE0903,
+0x090C010C, 0x04F4FF06, 0xF7F8F9ED, 0x040AF1FC, 0x10FB10F4, 0xF3EFFAF4, 0x0B0AEC0C, 0x0C0CFAF8,
+0xF70F0E13, 0xFBF50FFC, 0xF9F4EDF8, 0xEEF4F80B, 0xF51006F2, 0x0208FDF1, 0x06F71805, 0x0CF6E6F3,
+0xF40101FF, 0xFDFBEBEC, 0x0805F3FB, 0xECF30F09, 0xFAF90AEB, 0x0B02F8F2, 0x04F4F0F7, 0xF4090FF5,
+0x09FA0710, 0xFC06FBF9, 0x04F70BFC, 0x10070C0F, 0x0F12FE0E, 0x0BF0F306, 0xF4150005, 0xF714F7F5,
+0xF60D050C, 0xEFF2F9F8, 0x06F5F8F8, 0x06F3FDF3, 0x0D0303EE, 0xFD020114, 0x0A09F10A, 0x0D0415FA,
+0x0CFEED0F, 0x14F010F1, 0x0B04EEF2, 0x0F1406F5, 0x0805000D, 0xF409050E, 0x0DFBE901, 0x03110710,
+0x0604EFFD, 0x0B060BF9, 0xECF00D09, 0xFBF5FF0A, 0x07060DF2, 0x0EEF06F9, 0x0CF407F1, 0xFD0B100C,
+0x080617F8, 0xFAF5090A, 0x0A1204F9, 0xF2071212, 0xFD0FFD02, 0xE9F0EE0D, 0xF90FFCF1, 0xEE14E90B,
+0xFB0C02F5, 0x0C13F1F4, 0xF607EFFD, 0x0BF410FA, 0x00F204FB, 0xFA0DEFF7, 0x0AEDF4EC, 0xF1090208,
+0x13F6F000, 0xF8F2F0FF, 0xFB0E0B04, 0xF5FA120B, 0x1305F4FA, 0x07E70B0B, 0xEFEAF4FD, 0xF90807F3,
+0x05100D0A, 0x040E0608, 0x02F9090A, 0xFFF5F7FD, 0x0113F10A, 0xF10B07ED, 0xF7FB010B, 0x05EF06FA,
+0xF5FB11EE, 0xF2FCF306, 0xF70C0F00, 0x0E0704EE, 0xF60CFE0A, 0xF7E8F50D, 0xEEF6F5FD, 0x09E802EE,
+0xEF09F7FC, 0xF00CF0F1, 0xF808FCF4, 0xFBECEEFA, 0xFCF20211, 0xF9F10603, 0xF7F0F409, 0xEE140C01,
+0x0A0AF5EF, 0xF108F505, 0xE902FDEC, 0xF3080AF6, 0xF90410F2, 0x0D0609F3, 0xF7FBF608, 0xF408F005,
+0xFAFDF6F1, 0x030C0A0A, 0xFF0C11F8, 0x05FDF70C, 0x0C14F502, 0x12FDFD08, 0xF90BF3FF, 0xF5F20E11,
+0xF2FE0D06, 0xFE07F9F5, 0xFC080DF9, 0xF2F10BF5, 0x0B061DFA, 0xFB000211, 0x0D0E02F4, 0x06EA1101,
+0x0A0AF40D, 0x06F7070D, 0xF40CFD06, 0xF3FA08F5, 0xFEEB16EF, 0xF7EF0D09, 0x1512F0F0, 0x1801F3EC,
+0x0507FBF1, 0xF3F2FC08, 0x00ED110E, 0x10FD0DF8, 0x0B08F90A, 0x100DF905, 0xF0ED1414, 0x0A0E0DF8,
+0x08160C02, 0x10FDFAFF, 0xF022F7E0, 0xEF0A170A, 0x19180E02, 0x1CEAECDF, 0x18161818, 0xED0A17EA,
+0xEA13170F, 0xDEF01618, 0x1417E3EE, 0xEFEAF1E8, 0x16F512F6, 0xF3F5F9FD, 0x25121FEE, 0xEEDF29E8,
+0x15F7041E, 0xF9E8231A, 0x1EF112F3, 0xE1ECE9DE, 0x0C16E50A, 0xF51C1D11, 0xF9E60AE5, 0x0A150420,
+0xEE09F2E2, 0x09E9060F, 0xF1F2F01D, 0x0BEB20FC, 0xE21107DF, 0xFEE3EEE6, 0x001AF102, 0xE4E0DDDF,
+0xEC07121A, 0x1121E917, 0x10E1F1EE, 0xE4E7F11F, 0xEEE81611, 0xEB1AF71C, 0x0500E3F0, 0xE1FBE6E5,
+0xFEEBF50C, 0x09E9E617, 0xE219111D, 0xE6E8EC0C, 0x09082226, 0x1C0DE109, 0x0F101F0E, 0x02EF190E,
+0x11DD0A1B, 0xE5241B07, 0x06FDF3E5, 0x1113E914, 0xF30D171A, 0x1CE70F17, 0xE70A1017, 0x01E70714,
+0x18ED1911, 0x0AE9F4F7, 0x25E4E4FB, 0x192119E6, 0x05F1F60D, 0xF3E4F71D, 0x052811EF, 0x1AF4F710,
+0x20FAF613, 0xE926F607, 0xE3130E13, 0x15FAECF1, 0xF313DC11, 0x101411E6, 0xD918F724, 0x1A0FDF10,
+0x14D903F8, 0xF2EFE61E, 0x10171316, 0xEEDAF519, 0xF1221713, 0xE3000705, 0xDA15E322, 0xEBE8E711,
+0xD9F20FE7, 0x130A1DE1, 0xFFE8FD12, 0xE4E50CE4, 0x12F4E118, 0xE4E622E1, 0xF4001215, 0x14F018F8,
+0x0A18FC0B, 0x0EF1E5E8, 0xEDFAF614, 0x1A1928F5, 0x180D1306, 0xE91FED17, 0xE4EDE309, 0xFC20EAF3,
+0x21F7E81E, 0x18E31AF4, 0x1EEBFA12, 0x1C18141B, 0xE8151015, 0xEA280BE1, 0xE20EE9E0, 0xEBE61A13,
+0xECEA1119, 0x11F8E50B, 0xE7040AEA, 0xDD16D017, 0xDF14F5F9, 0x11E70820, 0xE218EF01, 0xE2E3F7EB,
+0xE3072414, 0xE120F90D, 0xED12E80C, 0xFA16E619, 0xF11DECE6, 0xE5E3EEF7, 0x1516E2E1, 0x19E8E6FA,
+0xEC0E19DA, 0xEDF21D1D, 0xEE011D22, 0xF1EE0AF3, 0xF0F1E419, 0xE72020DC, 0x1502E811, 0xF313F3EA,
+0x1814EDE1, 0xE0EE1C10, 0xF10EE7F2, 0x2428E81D, 0x19EA1EF5, 0xE7F41919, 0xE81312E1, 0x1DE8F102,
+0x25ED11E9, 0x16141E2A, 0xED11E7DF, 0xEF1FF62A, 0x1514EEE7, 0xE7F61316, 0x1B0CEFE9, 0xEFF219F0,
+0x072B20DB, 0x11E008F9, 0x1D13111B, 0x0B1BF515, 0x17E1EA0E, 0x1AED10E2, 0xFA17EAE9, 0x10ED11F4,
+0x09F2E1E7, 0x1AF0E920, 0xF7F7EDE5, 0xD8D7EBF9, 0x14EFF718, 0xE5E41412, 0xE908EFF3, 0xE9170FE4,
+0xE1EEEC1D, 0x19F3EBE6, 0x1AE3EAFB, 0xF1F8010E, 0x0CF317DD, 0x1FE11619, 0x13E4E6E3, 0xE01321F5,
+0xE921F9F5, 0x19192118, 0x1B14F8E8, 0xFAE8E618, 0xE504130C, 0xDFDAEA15, 0x181DED06, 0x12F316E9,
+0xE416E51D, 0xE5E914F6, 0xE9ED2517, 0x021720E0, 0x12EB110C, 0x0B14231C, 0xF00E1DF0, 0x080928DF,
+0xE1DCEA16, 0xED1BF9D4, 0x1D190CE9, 0x18E41F13, 0xDB12EA03, 0xEDF20BEB, 0x11EEE00F, 0xE3E7DFF8,
+0x1516E4E5, 0x16EAE6E7, 0x11FDE1F6, 0x2AE2ECE8, 0x0B081BF1, 0x1AF311E6, 0x0A1213F2, 0x16F0EDE8,
+0x20E61A0C, 0xE4F1F50A, 0x09F416DA, 0x240005E6, 0xE1F6EDEA, 0xF4F421E2, 0xF5F0E9EF, 0xF1191E0F,
+0xE6E01A23, 0x11F9ECE6, 0xE1E71BF3, 0x0DF8EF00, 0xE81AE614, 0xE71A18F1, 0x04EFE311, 0x0F0BEAFA,
+0xFAF319E7, 0xDFED0E0D, 0x0613F4E8, 0xEB17D9ED, 0x052421EB, 0xF4E7F9E5, 0xEFEFEC1B, 0x0C0B1E0E,
+0xFFEBEB14, 0x17181718, 0x09F7D7EB, 0xDDE017EA, 0xEAEDFBF2, 0xE91A12F0, 0xE3EEF6F0, 0x1AF1F6E8,
+0x17FAE614, 0xEE0D1713, 0x000512E5, 0x0DF5ED0E, 0xEF190F13, 0x1CE7151C, 0x06E31D23, 0xEC11E91B,
+0x00F8ED21, 0x02160C0D, 0xDFF4140C, 0x15240AEC, 0xF21603F2, 0x0EE9EE15, 0x1BF0EDE8, 0x25EC0F22,
+0xE8EB1F17, 0xFA111A09, 0xF11D10FB, 0x10ED15EB, 0xE71F020E, 0xF6E1F7FE, 0x1E02230A, 0x0FF31E15,
+0x1412EF19, 0xE11AD919, 0xF4EF0FE8, 0xF2EBF8E5, 0x0FF10F22, 0x070DDBFA, 0xFB0A1218, 0xEEF7F511,
+0xEC17E819, 0x0213D8DC, 0xFB0D131D, 0xF3F5E111, 0xED19F40F, 0xE3E701EB, 0x111F1518, 0xE718E0E7,
+0x15F6EB19, 0xEC1C1C18, 0xDD1F1C10, 0x18EB0C0F, 0x1EEB13E4, 0xEDF621F8, 0xEA241312, 0x0DDF15E9,
+0xF0081E17, 0x050F0D12, 0xEEEA1802, 0x13092111, 0x26290D0A, 0x13E709F5, 0x17E11405, 0x16EBE5E4,
+0x180AEC10, 0xEFF01315, 0xE5F910F4, 0x1EEE0D1A, 0xDA06E80F, 0x0E08E5E4, 0x101D1312, 0xEBE1181C,
+0x0EDB0E16, 0x15141015, 0x19E625E7, 0x0FEBE60E, 0x2CF7F3F1, 0xE3EF1326, 0x23F1F4E8, 0x00E2EFE9,
+0x0C16E7EB, 0xE8FEDCF9, 0x2DE9E10F, 0xEDDB18EE, 0xE2ECE918, 0xF7EE191D, 0x0EE91DE7, 0xF7E701EC,
+0x0B0D17EB, 0x0FF9F4E0, 0xE6E11B15, 0x0702EC19, 0xF8DD1210, 0x15D9E30F, 0xE61DF7DF, 0xF0D61E09,
+0xF6E51B1B, 0xEAE10DE9, 0x14DE0E06, 0xE203F50D, 0xEBE7EFEA, 0x1922FF21, 0xEDDDF4EB, 0xE818F20A,
+0xECE8DEFC, 0xEB1E1CEE, 0x111DDBF0, 0x0E1620E9, 0xDF17F41C, 0x15E3E8E2, 0x1515F518, 0x0CE3EA1A,
+0x0E201915, 0xE9EB04F0, 0xE3F70F11, 0x0F0A14E6, 0x01F111E6, 0xEA231A11, 0xF61CF21B, 0xFC0FF1DE,
+0xE3EBFBEE, 0x1C26F0F1, 0xE3E1F20D, 0x1B12F3EC, 0x19DF06EE, 0xFCEEF7E7, 0xE7090CE5, 0x24F91A29,
+0x0D1BF31A, 0xEE15E5E7, 0x0620F50F, 0xE31605F5, 0x10E71C0E, 0xE91C17F1, 0xDD14F0E3, 0xE5F00C07,
+0xDCFAF5EE, 0xEC15E5ED, 0xEAEF1C24, 0x1E16F117, 0xECE0EF11, 0x0DF6ECE6, 0x06121012, 0x14E8ECF6,
+0x14F52610, 0x0EEEEC1B, 0xDB161BEC, 0x162FE1E7, 0x07FD0C06, 0x1014E9ED, 0xF1EC111E, 0x1914F71A,
+0xF3E7F705, 0xF51CF3EB, 0x130FE010, 0xE5F0F2DF, 0xE1E3DD11, 0xDF18021A, 0x14F4EDF2, 0xDBEC1604,
+0xF6ECEB26, 0xF0171C12, 0xF3E713EC, 0xF81C1E19, 0xE7F92012, 0x1307EBE4, 0x11F323E1, 0x2111FAEB,
+0xFFEB1417, 0x02E7EF1C, 0x1FF6E8F3, 0xF221E5F4, 0x0EE61906, 0xF323161D, 0xE01EEF08, 0x11E0D7E4,
+0xD60E210D, 0xF21323F0, 0xDBEEE9E6, 0x0F10EDEE, 0xEBECF4F7, 0xECEAF3FB, 0xE9DBDBE9, 0xE9220EE8,
+0xF7E4E911, 0x1C2018F0, 0xEBDDEAE2, 0x151116E9, 0x19D6E7E5, 0x131DEA06, 0xF1F3F10E, 0x1C13E9F1,
+0x1AF7F5E0, 0x050FE0F3, 0x13EDE6F5, 0x22EC2501, 0xF1E7230A, 0xE41F0216, 0xF4EFE8EC, 0xE818121F,
+0x01EDEB0D, 0x23E918F1, 0xE515F117, 0xE3EA27DC, 0x18F3F8FD, 0x06F2E00C, 0xDC19F005, 0x19F3F621,
+0xEBEDE11E, 0x1614EDE7, 0xF0F5E723, 0xEEF6F2E3, 0xE70F0911, 0xF4F213F7, 0xE7E7EBF0, 0xF409FAE5,
+0xE406DA0E, 0x08E7EBF7, 0xEA19E0EE, 0xD918FFE0, 0xF2EA1222, 0xE616F313, 0x1201DF15, 0xDF1D16F1,
+0x0A1516EC, 0xE5E9131D, 0x2017F6E6, 0xE5FADE08, 0x13110012, 0xFDDC12E9, 0x1DF012F5, 0xF20F16EE,
+0xE3EA04E8, 0xF7EAF81D, 0x0E1F1C0E, 0x1B2B110D, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+8
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..12c05d0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v14298.data b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
new file mode 100644
index 0000000..30df8e2
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
@@ -0,0 +1,377 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F817F,
+0x81817F81, 0x81817F81, 0x81818181, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F818181, 0x8181817F, 0x81818181, 0x817F817F, 0x817F817F, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181,
+0x7F7F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x81817F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181,
+0x81817F81, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F818181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x7F7F8181,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x8181817F, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81817F7F,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x817F817F, 0x7F818181,
+0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F817F7F, 0x81817F81,
+0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F,
+0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x817F7F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F817F,
+0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81817F7F, 0x817F817F,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x817F817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F81817F,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F81817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F81,
+0x817F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x817F8181, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x81817F81, 0x817F8181,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F818181, 0x81817F81, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x817F8181, 0x81818181, 0x817F8181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x7F817F7F,
+0x817F8181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x7F818181,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F817F,
+0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x81817F7F,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x817F817F,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F8181, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F818181, 0x81817F81,
+0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x8181817F, 0x817F7F7F,
+0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x817F8181, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F81817F,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F817F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x81818181,
+0x81818181, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F,
+0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x81818181, 0x8181817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F81817F, 0x81817F81,
+0x81818181, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x7F7F8181,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181,
+0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81817F81,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x7F7F8181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x81818181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x817F8181, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x81817F7F,
+0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F817F81,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F81,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x81818181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181,
+0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F817F
+
+output0 =
+0x2264202F, 0xEFA4FF42, 0xE9F58B8C, 0x1D39E1D8, 0xC820C061, 0x20DC98A4, 0x8DE60AFC, 0x6C33FA8A,
+0x1C53D6C5, 0x945F773F, 0xDBB04F8A, 0x3A27959E, 0x68BB477D, 0x2162D334, 0x380000DF, 0x69C28486,
+0xBA5358EF, 0xCF3C7E12, 0x498CFB25, 0x2C1D2FD8, 0x3BC26009, 0x3FBCD885, 0x170DB38F, 0xCC6D1865,
+0x5F253C8F, 0x2E763549, 0x5CF7C656, 0x5B035AAC, 0x97EFE2E2, 0x3E09E2D2, 0x616B4622, 0x090DF188,
+0x6D446324, 0x4879AFE5, 0x4170D40D, 0x961951CA, 0x127A6286, 0x97DF4F8E, 0x1E8B9203, 0xAF2CC98E,
+0x92070932, 0x39947F15, 0x1D3C8709, 0x78F28246, 0xBA0CEDEB, 0xD3AAED67, 0x3800BA16, 0x5591D86F,
+0x91406310, 0x25CD67E2, 0x2DD370E6, 0x92EC5FD3, 0x601F6480, 0x85832BF7, 0x21FBC769, 0x47A424D1,
+0x753A3FDC, 0x4406729D, 0xD73AE302, 0x5B0363EB, 0x6695488A, 0x10143CE6, 0x18544FA3, 0xA09CAD85,
+0xCA84C06F, 0x76069E77, 0x249EFC02, 0x0D2EF9A4, 0x306C49E6, 0x8744F821, 0xA3DBD0B3, 0x51C30167,
+0x24BAC604, 0xB7127120, 0xD8293BEA, 0x99D894B1, 0x82DA3AC5, 0x0A3DE8AC, 0x0A2BFF03, 0x8810CF64,
+0xF965FC9F, 0x38D9B780, 0x67A87163, 0x2125F55C, 0x520FD62F, 0x81C21F91, 0x36DBBAE9, 0x9FD06F93,
+0xC496630A, 0x9E68401F, 0xD8960A86, 0x040ED70A, 0x6B685588, 0x89FB354E, 0x6FA818BC, 0xE736533D,
+0x9991716D, 0x7D3E2C82, 0x1D56747A, 0x79ACA946, 0x223D14C6, 0x98D15ED1, 0x8E1DEFED, 0x90E0C34F,
+0x693154A7, 0x9802DE69, 0xE9EDFCE8, 0xA308DBD5, 0xF8D24D94, 0x5F7C1F87, 0xD1CCBAA7, 0x3597525A,
+0xA5A9F065, 0x28C234D5, 0xB3FF9848, 0x012A0B0D, 0x5BB7102F, 0x4CE69A80, 0xFEF92D54, 0x0932125D,
+0x8D58749A, 0x6F00E934, 0x713104DC, 0x74E16375, 0x6805E1C0, 0x8AC5EFB4, 0xFF381CA0, 0x642D3436,
+0xD38472
+
+basegraph=
+1
+
+z_c=
+192
+
+n_cb=
+12672
+
+q_m=
+2
+
+n_filler=
+104
+
+e=
+10048
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..3143fa0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..2ea2b8d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..63bc8da
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..aaa3c98
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..03422fb
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
new file mode 100644
index 0000000..bd7c017
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x20202020, 0x20202020, 0xe0e0e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0,
+0x20e0e0e0, 0xe020e020, 0xe0e0e0e0, 0x20202020, 0x20e0e020, 0x2020e0e0, 0x202020e0, 0xe0e02020,
+0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe020e020, 0xe0e0e020, 0x2020e0e0, 0xe0e0e020, 0xe0202020,
+0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e020, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0xe020e020, 0xe0202020, 0x20e0e0e0, 0x20e0e020, 0x20e02020, 0x20e02020, 0xe0202020,
+0xe0e020e0, 0xe020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x20e02020, 0xe020e020, 0x202020e0,
+0x2020e020, 0xe020e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x20202020, 0x20e0e0e0, 0x2020e0e0,
+0x20e0e0e0, 0x20e0e020, 0x20e0e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20e020e0, 0x20e0e0e0,
+0xe0e020e0, 0x2020e0e0, 0x202020e0, 0x2020e020, 0xe0e0e020, 0xe020e0e0, 0x20e02020, 0x202020e0,
+0x20202020, 0xe0202020, 0x20e020e0, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0,
+0x20e020e0, 0xe0e02020, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20e0e020,
+0xe020e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x2020e020, 0x20e020e0, 0xe0e02020, 0xe020e020,
+0xe0e0e0e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x202020e0, 0xe020e0e0, 0xe020e0e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0x2020e020, 0x20e0e020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e020e0,
+0x20e02020, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20202020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20202020, 0xe0e02020, 0x2020e0e0, 0x20e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe020e0e0, 0x20e02020, 0xe0e02020, 0x2020e0e0, 0xe02020e0, 0x20e020e0,
+0x20e02020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020,
+0xe02020e0, 0x20202020, 0x20e020e0, 0xe0e0e0e0, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0x20e02020,
+0xe020e0e0, 0x202020e0, 0x20e020e0, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20e0e0e0,
+0xe020e020, 0xe0e02020, 0xe0e020e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0x2020e020, 0x2020e020, 0x20202020, 0xe0202020, 0x20e0e020, 0xe02020e0, 0x20e0e0e0,
+0x20e020e0, 0x20e02020, 0xe0e0e0e0, 0x20202020, 0x20202020, 0x20e0e020, 0x2020e020, 0xe020e0e0,
+0xe020e020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0x2020e0e0, 0x20e0e020, 0x20e0e020, 0xe0e020e0,
+0x202020e0, 0xe0e0e020, 0x2020e020, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x202020e0,
+0xe0e0e0e0, 0x2020e0e0, 0xe0202020, 0xe020e0e0, 0x20e0e020, 0x2020e020, 0x20e0e020, 0xe02020e0,
+0x20e020e0, 0x20202020, 0x202020e0, 0xe02020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe0202020, 0x2020e0e0, 0xe0e0e020, 0x2020e020, 0x202020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0,
+0xe020e0e0, 0x20e020e0, 0x202020e0, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0xe0202020, 0x2020e0e0,
+0xe0202020, 0x2020e020, 0x20e0e0e0, 0xe02020e0, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0e0e0e0,
+0xe0e02020, 0x20202020, 0xe0e020e0, 0x20e020e0, 0xe020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0e020e0,
+0x20e0e0e0, 0x20e02020, 0xe0e0e020, 0xe0e0e020, 0x20e0e020, 0xe0e0e020, 0x2020e020, 0xe0e020e0,
+0x2020e020, 0x2020e0e0, 0xe020e0e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0xe0e0e0e0,
+0x20e0e020, 0xe0e0e020, 0xe020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20202020, 0x202020e0, 0xe020e020,
+0x20202020, 0xe0202020, 0xe020e0e0, 0x20e02020, 0xe020e0e0, 0xe0e020e0, 0xe020e020, 0xe020e020,
+0xe0202020, 0x20e020e0, 0x20e020e0, 0x20202020, 0x20e02020, 0xe02020e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0x20e02020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e020,
+0x20e020e0, 0xe0e0e0e0, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e02020, 0xe0202020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe02020e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0xe0202020, 0xe020e020, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e02020, 0x20e0e020, 0xe0e02020, 0x20e02020, 0xe02020e0, 0x2020e0e0,
+0xe0e0e020, 0x20e020e0, 0x20e0e0e0, 0x2020e020, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0, 0x202020e0,
+0x20202020, 0x20e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e0e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e020, 0xe0e020e0, 0xe0e0e020, 0xe0e020e0, 0x20202020, 0x2020e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e020, 0x2020e020, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe02020e0, 0x20e02020, 0xe020e0e0, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0,
+0xe0e0e020, 0xe0e02020, 0xe02020e0, 0xe0e02020, 0xe0202020, 0xe0202020, 0x20202020, 0xe020e0e0,
+0x202020e0, 0x2020e0e0, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0xe0e02020, 0xe02020e0, 0x20e0e020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e02020, 0x20e0e020, 0x202020e0,
+0x202020e0, 0x20e020e0, 0x20e0e0e0, 0xe0202020, 0x2020e020, 0xe0e0e020, 0x20e020e0, 0x20e020e0,
+0x20e020e0, 0xe0e0e0e0, 0xe020e0e0, 0x20e020e0, 0xe02020e0, 0x2020e0e0, 0x2020e020, 0xe0e0e020,
+0xe0e020e0, 0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e0e0, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0x2020e020, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020,
+0xe020e0e0, 0x2020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x202020e0, 0x20e02020, 0x20e0e0e0,
+0x20202020, 0x20e020e0, 0xe02020e0, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x2020e020, 0x2020e0e0,
+0xe0202020, 0xe020e0e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e0e0e0,
+0x20e02020, 0xe0202020, 0x202020e0, 0x20e0e020, 0x20e0e020, 0x20e0e020, 0x20e02020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe0202020, 0xe02020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e0e0, 0x202020e0, 0x20e0e020,
+0x20e0e0e0, 0xe020e020, 0xe0202020, 0x20e02020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0202020,
+0x2020e0e0, 0xe0202020, 0x20e0e0e0, 0x20e02020, 0xe020e020, 0x20e02020, 0xe0e020e0, 0x20e0e020,
+0xe02020e0, 0xe02020e0, 0x2020e0e0, 0xe0202020, 0x20202020, 0x20e020e0, 0x20e02020, 0x20e0e0e0,
+0x2020e0e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20202020, 0xe020e020,
+0xe0202020, 0x20e0e0e0, 0xe0e020e0, 0xe020e020, 0xe0e0e0e0, 0xe02020e0, 0xe0202020, 0x2020e020,
+0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20e020e0, 0xe0e02020, 0xe0e0e020, 0xe020e0e0,
+0xe020e020, 0xe0e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e020, 0x20e0e0e0, 0x20e02020, 0xe0202020,
+0xe020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x20e0e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe02020e0, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0,
+0x20e0e020, 0x20e02020, 0x20e02020, 0xe0e0e0e0, 0xe0e02020, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0x202020e0, 0xe020e020, 0x2020e0e0, 0x20e020e0, 0xe020e020, 0xe020e0e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20e0e0e0, 0x20e020e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0xe02020e0, 0x20202020, 0x2020e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0xe0e020e0, 0xe0e0e020,
+0xe020e0e0, 0x20e02020, 0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x20e0e020, 0x20e0e0e0, 0xe0e020e0,
+0xe0e0e020, 0x202020e0, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20e0e0e0, 0xe020e020, 0x202020e0,
+0x20e0e0e0, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe0e02020,
+0x20e0e0e0, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe020e020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x202020e0, 0x20202020, 0xe0e02020, 0x2020e020, 0xe0e0e020, 0x20e02020, 0x20e02020,
+0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0xe020e0e0, 0x20e0e0e0, 0x20e020e0, 0x20202020,
+0x20e0e0e0, 0x20202020, 0xe0e020e0, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0xe02020e0, 0x2020e0e0,
+0x202020e0, 0xe020e020, 0x20e020e0, 0x20e0e0e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0x20e020e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e020, 0x2020e0e0, 0xe0202020, 0xe0e020e0,
+0x20202020, 0xe02020e0, 0xe020e020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0xe0e0e020, 0x20e020e0, 0x20e0e020, 0x20e02020, 0x20e020e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0x202020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e0e0,
+0x2020e0e0, 0x20202020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe020e0e0, 0xe0e02020,
+0x2020e020, 0xe0e02020, 0x20e0e0e0, 0x20e020e0, 0xe0e02020, 0xe0e020e0, 0xe020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020, 0x2020e020,
+0xe020e0e0, 0xe0e0e020, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0x20e02020, 0xe02020e0, 0xe0e02020,
+0xe0e0e020, 0x20202020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x20202020, 0x2020e020, 0xe02020e0,
+0xe0e0e0e0, 0x2020e0e0, 0x202020e0, 0xe0e02020, 0x20e020e0, 0xe02020e0, 0xe0e020e0, 0xe0e02020,
+0x20e0e020, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0x20e0e020, 0xe020e0e0, 0xe0e0e0e0, 0x20e020e0,
+0xe020e020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x20e0e0e0,
+0x2020e0e0, 0x20e02020, 0xe020e020, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e0e0, 0xe020e0e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0xe020e0e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0xe0e0e020,
+0x20e020e0, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0xe020e020, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0xe0e02020, 0x20e02020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0xe0e02020,
+0xe020e020, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0,
+0xe020e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0xe0e02020, 0x2020e020, 0xe0202020, 0xe0e0e020,
+0x2020e0e0, 0x20202020, 0x2020e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0, 0x20e0e020, 0xe0e020e0,
+0x20e02020, 0xe0e020e0, 0xe0e0e020, 0xe0e0e020, 0xe0e02020, 0xe020e020, 0x20e0e0e0, 0xe0e02020,
+0xe0202020, 0xe0e0e020, 0x20e02020, 0x20e0e020, 0x20e0e020, 0xe0202020, 0xe0e02020, 0x20e02020,
+0x20e0e0e0, 0xe0e020e0, 0x20e0e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0x2020e0e0, 0xe0202020,
+0xe0202020, 0x20e020e0, 0x202020e0, 0xe02020e0, 0x2020e020, 0x20202020, 0x202020e0, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e0e020, 0xe0202020, 0xe020e020, 0x20e0e020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e02020, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0xe0e0e0e0, 0xe020e020,
+0x20202020, 0x20202020, 0xe0e020e0, 0x202020e0, 0xe02020e0, 0x20e020e0, 0x20e020e0, 0xe020e0e0,
+0x2020e020, 0xe0202020, 0x20e02020, 0xe0e020e0, 0xe0e0e0e0, 0xe02020e0, 0x2020e020, 0x2020e0e0,
+0xe0e0e020, 0xe0e02020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e0e020, 0xe02020e0, 0xe0e0e020, 0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20202020,
+0x20202020, 0x20e0e0e0, 0xe0e020e0, 0xe0e020e0, 0xe0e0e0e0, 0x202020e0, 0xe0202020, 0xe02020e0,
+0x202020e0, 0xe0e02020, 0xe0e0e020, 0x2020e020, 0x20e0e020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0x20e02020, 0x20e02020, 0xe0202020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0x202020e0, 0xe02020e0, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0202020, 0xe02020e0, 0x20e02020, 0xe0e0e020, 0xe0e020e0,
+0x20202020, 0xe0202020, 0xe02020e0, 0xe0202020, 0xe02020e0, 0x20202020, 0xe0202020, 0xe0202020,
+0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e020, 0x20e020e0,
+0x20202020, 0xe0e0e020, 0x20e0e0e0, 0x2020e020, 0x20e020e0, 0x20202020, 0x2020e0e0, 0x2020e020,
+0x20e02020, 0x20202020, 0xe0e02020, 0x202020e0, 0x20202020, 0xe0202020, 0xe020e020, 0xe0e020e0,
+0xe0e02020, 0xe0202020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0x20202020, 0xe020e0e0, 0x20e02020,
+0x202020e0, 0x20e020e0, 0xe020e020, 0x2020e020, 0x20e0e020, 0xe0e0e0e0, 0xe020e0e0, 0x2020e0e0,
+0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x2020e020,
+0xe02020e0, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0202020, 0xe0e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0x20e0e0e0, 0x20e02020, 0xe0202020, 0x20e0e020, 0x20e020e0,
+0x20e020e0, 0xe020e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e020, 0x2020e0e0, 0x20e02020, 0x20e0e0e0,
+0x2020e020, 0xe0e020e0, 0xe0e02020, 0x202020e0, 0xe0e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0,
+0x2020e020, 0xe02020e0, 0xe020e020, 0x20e0e020, 0xe020e020, 0xe0e020e0, 0xe0e020e0, 0x20202020,
+0xe0e0e0e0, 0xe0202020, 0x2020e0e0, 0x2020e0e0, 0x20e0e020, 0xe0202020, 0xe0202020, 0xe020e0e0,
+0xe0e0e0e0, 0xe0e02020, 0x20e02020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0xe02020e0, 0xe020e0e0,
+0x202020e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x20202020, 0x20202020,
+0xe0e0e0e0, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0xe0e020e0, 0xe0e0e020,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x20e02020, 0xe020e020, 0x20e02020, 0x20e0e020, 0x20202020,
+0xe02020e0, 0x202020e0, 0xe0e020e0, 0x2020e020, 0x20202020, 0x20202020, 0x20202020, 0xe020e020,
+0xe0202020, 0x202020e0, 0xe0202020, 0x20e0e020, 0x20e020e0, 0x20e020e0, 0x20e0e020, 0xe0202020,
+0x20e0e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e0e020,
+0xe02020e0, 0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020,
+0x2020e020, 0x20e020e0, 0x2020e020, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e02020, 0x20e0e0e0,
+0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e02020, 0x202020e0, 0xe0202020, 0xe0e0e020,
+0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x20e020e0, 0x2020e0e0, 0xe0e020e0, 0xe020e0e0,
+0x20202020, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe020e0e0, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0x2020e0e0, 0x20e02020, 0xe0202020, 0x20e020e0, 0xe0e0e0e0, 0xe020e020, 0x202020e0,
+0xe0e0e0e0, 0x202020e0, 0x20e0e020, 0x2020e020, 0xe0e020e0, 0x20202020, 0x20202020, 0x2020e0e0,
+0xe020e0e0, 0xe0e020e0, 0xe0e02020, 0xe02020e0, 0x20e0e020, 0x20e02020, 0x20e0e020, 0x2020e020,
+0x2020e020, 0xe02020e0, 0xe02020e0, 0xe020e020, 0x2020e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0,
+0xe020e020, 0x20e02020, 0x2020e0e0, 0x20e0e020, 0x2020e0e0, 0xe0e0e020, 0xe020e0e0, 0xe0e02020,
+0xe020e0e0, 0xe0e020e0, 0x20202020, 0xe02020e0, 0x20e02020, 0xe0202020, 0xe0e020e0, 0x202020e0,
+0x2020e020, 0x2020e020, 0xe020e020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020,
+0x202020e0, 0x2020e020, 0x202020e0, 0xe0e02020, 0xe020e020, 0xe0e0e0e0, 0xe0e02020, 0x20202020,
+0xe020e0e0, 0xe020e020, 0x20e0e020, 0x20e0e020, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe0e020e0,
+0x2020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e0e020, 0x20202020,
+0x20e020e0, 0xe020e020, 0x20202020, 0x2020e0e0, 0x20e0e020, 0x20e020e0, 0xe02020e0, 0xe020e020,
+0x20202020, 0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0x202020e0, 0xe02020e0,
+0x20e020e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e020, 0xe020e020, 0x20e0e0e0,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe0202020, 0x2020e020, 0xe0e020e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e020e0, 0x2020e020,
+0xe020e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x202020e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0xe02020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x202020e0,
+0x202020e0, 0x20e0e0e0, 0x20e0e020, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e0e0,
+0x20e020e0, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0x20e0e0e0, 0xe0e02020,
+0x20e0e0e0, 0xe020e020, 0x20202020, 0x20e0e0e0, 0xe0e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0x20202020, 0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0202020, 0xe0e02020,
+0x20e0e0e0, 0x20e020e0, 0x2020e020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020, 0xe0e02020, 0x20202020,
+0x2020e020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0x20202020, 0x202020e0, 0x2020e0e0, 0xe0e0e0e0,
+0x20e02020, 0x202020e0, 0xe0e0e020, 0x20202020, 0x202020e0, 0xe020e020, 0xe0e020e0, 0x20202020,
+0xe020e0e0, 0x202020e0, 0x202020e0, 0x2020e0e0, 0xe0202020, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0x20e02020, 0xe0e02020, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0x2020e020,
+0xe0e0e0e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0, 0x20e020e0, 0xe0e0e0e0,
+0x20e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e02020, 0xe020e0e0, 0xe020e020, 0xe02020e0,
+0x20202020, 0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x2020e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0, 0x20e0e0e0, 0x20e0e0e0, 0xe02020e0,
+0x20e02020, 0x202020e0, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe0e0e020, 0xe0e0e020, 0x2020e020,
+0x2020e020, 0xe0e0e020, 0xe02020e0, 0x20e020e0, 0x20e0e0e0, 0x20e0e0e0, 0x202020e0, 0xe020e020,
+0xe0e0e020, 0xe0202020, 0xe0e0e0e0, 0x20e0e020, 0xe0e020e0, 0x20e0e020, 0xe0e0e0e0, 0xe02020e0,
+0xe0e0e0e0, 0x20202020, 0x20202020, 0xe020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e020,
+0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0202020,
+0xe020e020, 0xe0e0e0e0, 0x20e02020, 0xe020e0e0, 0xe0e0e020, 0xe0e02020, 0xe0e020e0, 0x202020e0,
+0x20e02020, 0x20e0e0e0, 0xe0e0e020, 0x2020e020, 0x20e020e0, 0x2020e0e0, 0x2020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e020, 0xe0e02020, 0x202020e0, 0x20e0e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0,
+0x20e0e020, 0x20e0e020, 0x2020e020, 0x20e0e0e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0e020e0, 0xe0e0e0e0, 0x20e02020, 0xe0202020, 0x202020e0,
+0xe020e020, 0x20202020, 0xe0e02020, 0xe0e02020, 0xe0e0e020, 0x20e0e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe02020e0, 0x2020e0e0, 0xe0e02020, 0xe02020e0, 0xe0202020, 0x2020e020, 0x20202020, 0x20e0e0e0,
+0x20e020e0, 0xe0202020, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0x20e020e0, 0xe0202020, 0xe0202020,
+0x20e020e0, 0x20e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe02020e0, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0xe02020e0, 0xe0e020e0, 0x20202020,
+0x20e02020, 0xe0e02020, 0x20e0e020, 0xe020e0e0, 0xe020e0e0, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0xe0202020, 0x202020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0e0e020, 0x2020e0e0,
+0xe0e0e0e0, 0x20e02020, 0x20202020, 0x2020e0e0, 0xe0e0e0e0, 0x20202020, 0xe02020e0, 0xe0202020,
+0xe020e020, 0x20e02020, 0xe0e020e0, 0x2020e0e0, 0x2020e020, 0xe020e020, 0x20e0e020, 0x20e020e0,
+0x20e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe0e02020, 0xe020e0e0, 0xe0e020e0, 0x20e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x2020e020, 0xe0202020,
+0xe02020e0, 0xe02020e0, 0xe0e020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe020e020, 0x2020e0e0,
+0xe02020e0, 0xe0202020, 0x20202020, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0xe020e020, 0xe0202020,
+0xe020e0e0, 0x20e0e0e0, 0x2020e0e0, 0xe020e0e0, 0xe020e0e0, 0xe02020e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20202020, 0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe020e020, 0x20202020,
+0x20e0e0e0, 0x20e0e0e0, 0xe0e020e0, 0x2020e020, 0x202020e0, 0x202020e0, 0x20e02020, 0xe0e0e020,
+0xe020e0e0, 0x202020e0, 0x2020e020, 0xe020e020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x20e02020,
+0xe020e020, 0xe020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0x20e0e0e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e020, 0x20e020e0,
+0xe0202020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x2020e0e0,
+0x202020e0, 0x2020e0e0, 0xe020e0e0, 0xe020e020, 0xe0e02020, 0x20e02020, 0xe0e02020, 0x2020e0e0,
+0xe0e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe0e0e020, 0x202020e0, 0x2020e020, 0x202020e0,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x2020e020, 0x20e020e0, 0x20202020, 0xe02020e0, 0xe0e0e020,
+0xe0e020e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0x2020e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e0e0,
+0xe02020e0, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0xe020e020, 0xe020e0e0, 0x202020e0, 0x20202020,
+0x2020e0e0, 0x20e0e020, 0xe020e0e0, 0x20e02020, 0x20202020, 0xe0e0e020, 0x20e020e0, 0x20e0e020,
+0x2020e0e0, 0x20e02020, 0x202020e0, 0x20e02020, 0xe020e0e0, 0x20e020e0, 0x20202020, 0x20e02020,
+0x2020e0e0, 0xe020e020, 0x20e0e020, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x202020e0
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..f6de8db
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
new file mode 100644
index 0000000..610a65a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x51720B3D, 0x1F794878, 0x5D4667E6, 0x34A2B105, 0x2FD62AA9, 0x33D1BD82, 0x11FA5252, 0xBC88743B,
+0x5997007B, 0xA975AC44, 0x887D382A, 0x28E0237D, 0x5DF5E8E5, 0x552D44D3, 0x53C9055C, 0x550B345F,
+0x3AAD2C12, 0x078213D3, 0x2B8EBA05, 0x119E2789, 0x89506275, 0x8E561FBB, 0x8AF1DBD4, 0xC13F343D,
+0xDBE99F6E, 0x68DE687D, 0xF9A1B4D3, 0x2D5756FE, 0x325830E8, 0x50A2D6C1, 0x5ED45CBE, 0xF83E0FF1,
+0x3DCD8BA4, 0xE46C05D0, 0xCD82ECBA, 0x0854C206, 0xE726C488, 0xF048846D, 0x00AB1A91, 0xD68FFE3D,
+0x7F4D05FE, 0x1202B71D, 0x0CB72578, 0x399162C9, 0x013E3EC2, 0x9EB5AD1F, 0xD8E554A3, 0xB8FE5430,
+0xAB148FFE, 0x48C16E32, 0x1807F4BB, 0xF8417646, 0x4777FD5F, 0xB77852F1, 0xB70352C6, 0x57F02C5D,
+0xCFA02D64, 0x08E26E56, 0xCFAF88D4, 0x36737403, 0x560BF71D, 0xAEDF2457, 0xC2055860, 0x40EDF15B,
+0x47B63C47, 0x8C7BD3F8, 0x09C87289, 0x0F91C176, 0x74D726D0, 0x0FF016BB, 0x9AB4E25E, 0x17DA3217,
+0x981FAC78, 0x079D55BC, 0x54B27933, 0x03410A2E, 0x00D7DAD3, 0xCA306C5D, 0x6BF2A223, 0x33DD37C6,
+0x6CD8834C, 0xB2F72F2B, 0x2697DE6D, 0xB0E17513, 0x64FF1B6D, 0x15389650, 0xAA1ABBCA, 0x5B41ABD5,
+0xAE5B149E, 0xEE07D0D9, 0x4E94190E, 0x9E9D0F73, 0x41EC7CD6, 0x17FA3EE3, 0x87AC9E55, 0xD8FB9E0A,
+0x1792BC34, 0x537FDCE3, 0x7B883768, 0xE8B311BF, 0x0B24824D, 0x8161769F, 0xE3A06DA5, 0x4D4EB31C,
+0xAB43F5A4, 0xEBD482D1, 0x7074E180, 0xC0F5558F, 0x7ADE2FF4, 0x04A890EB, 0xAF51D221, 0x65899099,
+0xC70FCEC0, 0x89621B73, 0x73E3742E, 0x36721F2F, 0x4CC865A3, 0xC68981D8, 0x8C8678A2, 0xA90557AE,
+0x4AE76EF4, 0xE4C576D6, 0xCD6D2A05, 0xF940C957, 0x31F0E7A4, 0xD6FB6301, 0x1255F423, 0x0E24DFAE,
+0xD420D059, 0xA4BBF099, 0xFEC00685, 0x126216AB, 0x6EE78BCE, 0x0ED826E1, 0xEA3F64C4, 0x07E451F4,
+0xC8A1A696, 0x5440C56A, 0xED2F82A4, 0x5A2D1434, 0x5C60A97B, 0x22542ED8, 0x35619E0E, 0x8B1F6A44,
+0x29B55494, 0x0B6AAF9C, 0x7FC459AD, 0x63E03703, 0x9477B477, 0x49CCAD5E, 0x94732F00, 0x6D19F35C,
+0xD7B4C5A5, 0x3A3FC863, 0x989F4259, 0x78241B4A, 0x36859C33, 0xBD34C4FE, 0x47729C70, 0x9160927D,
+0x5C634916, 0xFF93A815, 0x793DFC07, 0x132DA316, 0x061F271E, 0xA8BA6812, 0x34DDD632, 0xF74EE348,
+0x428703E6, 0x3803C484, 0xA8841F0A, 0xF2C11566, 0xA3A974A3, 0x1ECF7B77, 0x876966BB, 0x0AE8261E,
+0x4F9FC567, 0x87145B64, 0xF872040D, 0xCC001154, 0xDDCAD818, 0xA16975D3, 0x874B6927, 0x9006AE4E,
+0x139F8335, 0x52D892F4, 0x02DB9814, 0x8AEE0CE9, 0x228A384F, 0xB1B608EB, 0x849C96B5, 0xA624B02F,
+0x63F30AF2, 0xF22C47DD, 0x8DC6F495, 0x520763B3, 0x99E6FF46, 0xEE33CF1F, 0x79F3E452, 0x18738520,
+0xEE2E19B0, 0xCB267129, 0x8F32E4CE, 0xA98D3B2C, 0x402B5E33, 0x673F469F, 0xC57BF021, 0x6B65970D,
+0xD02101EA, 0x5806EC81, 0x03FDE9E7, 0x8488D8E1, 0xF75CA4E6, 0x24859DE8, 0x07E7C226, 0x5B04AFF7,
+0xA55FAAC7, 0x9BFF9612, 0x5FDF3D45, 0x38CFB232, 0xDA1F50EE, 0x8BCB1A18, 0x5BDAC9E3, 0xCB07A2CD,
+0x6B277AD1, 0x5166C368, 0xE38F4AB0, 0xC8B60145, 0xCA8659FD, 0x48186C3A, 0xB9B938D9, 0x31C25631,
+0xF9524B14, 0xF96AABCC, 0x30DE5E1E, 0xADDE525B, 0x91364A03, 0x7BFE4B12, 0x518DB237, 0xE6E06AE9,
+0x08C03875, 0x63861F76, 0x8CA1D2C5, 0x8766CE46, 0x0C91E129, 0x6E1A90F2, 0x956E0BDB, 0x09E94D22,
+0x836A87C0, 0x614B1950, 0x39A2C911, 0xC9E4AAAE, 0x13A82D21, 0x5722A44D, 0x72585F11, 0xED5A0549,
+0xE9065DE1, 0x523EF8A3, 0xD0A6A33D, 0xFA0897F0, 0xE7A9304C, 0xA396A9BE, 0xF0E09485, 0x6C632662,
+0x07E9ACDF, 0xD9C21AF6, 0x7F26397E, 0xD3EBF6A8, 0xC04D15F8, 0x17134F92, 0x95C7AB49, 0x622B1080,
+0xE066BB13, 0xD849FF19, 0x2D20AEB6, 0xDAA89F18, 0xF03406B9, 0x4E7F0D6F, 0x41627FCF, 0xF74B94C7,
+0x842C88D5, 0x0B3BD215, 0x87C550B4, 0x7BB39B24, 0xBAD7890B, 0x7074E1F0, 0x7EC31BEB, 0xA8DEB258,
+0xE7F95D43, 0x4AEA8A72, 0x6A1DFB9A, 0xFFCC64BC, 0xC5DA05F7, 0xC50F59F4, 0x47718364, 0x3CB70917,
+0xD070635A, 0xA9F94561, 0xF9A9E43F, 0xE3145D32, 0xED862CFB, 0x90B95177, 0x63FDD2D1, 0x2B4BED50,
+0x9CB19075, 0x7C689E22, 0x5D514DE3, 0xA654D7F4, 0x4D80443D, 0x0049F184, 0xC5BC952A, 0x21027E89,
+0x36EBDC1B, 0x4E7B570D, 0x172D470D, 0xFE0578E0, 0x418557E6, 0x0FBD99B0, 0x44AE1CB6, 0x891E4C35,
+0x1E20B86F, 0xF0BA67DD, 0x491A37DA, 0x6DB08136, 0x145279F1, 0x619AD857, 0x216914D3, 0x4F70F3B1,
+0x1CFD20FF, 0xC19C381A, 0x205215BB, 0x9F09C616, 0x478C1F7B, 0x501D7EFA, 0x2422B2A3, 0x992BBAC2,
+0x19096B7F, 0x209D76F3, 0x5F7B22CC, 0xA7144CF6, 0x59D88E8D, 0xD60F3D9C, 0x37B3C398, 0xB930D494,
+0x1133E58B, 0xEE477D53, 0x06D72053, 0xF5044CF7, 0x78A7E8C1, 0x09F17983, 0xF2A8A0B1, 0x77F180FB,
+0x60E30775, 0xBAC1F2C1, 0xFFF1351A, 0xF30951B7, 0x291F6D06, 0xAD25387E, 0x265F049B, 0x785FD7D2,
+0x65491824, 0x11769597, 0xBFB649F5, 0xA026D7CE, 0xE91ABEB2, 0xF811133A, 0xAA83358E, 0x7C62D43B,
+0x425831D7, 0x1DBCCE9D, 0x8235C15F, 0x43AA0ABE, 0xC7B29493, 0xDFC016FB, 0xEDCAC598, 0x9A11AAA6,
+0xBBEC1337, 0x02834758, 0xC206205B, 0x082456D3, 0xDCC2B044, 0x03AC56C8, 0xE27BCB56, 0x018D8AFF,
+0x9B1F4CA9, 0x67CECE57, 0xB0313823, 0x05033890, 0xF9CBD85D, 0xB395AA6D, 0x1DD71CEE, 0x01903F60,
+0xDFDDA2B2, 0xDDB3047F, 0x37B6CA26, 0x3246AF0E, 0x34D4A195, 0xAC73D9A8, 0x42ADA3B7, 0xDD5C3C54,
+0x3A72DD01, 0x7151C6F1, 0xC89C9B9C, 0xB9DB48F0, 0x46BB567F, 0xA9B6C1A9, 0xAF7E85C4, 0x68042154,
+0x8EC768E3, 0x39548F0B, 0x3CE01720, 0xFC65D725, 0xC8BE167D, 0x18BC7B2D, 0x80674517, 0x70EF0D28,
+0xA1690EC4, 0x7A799319, 0xD3AA9E04, 0xB9E030AC, 0xE27419A2, 0x176F78BC, 0x3EEE2D51, 0xB2AFC5B2,
+0x077698D9, 0x822CFB42, 0xD25FEA37, 0xA8B5C937, 0x9F370837, 0xCB65BF77, 0xDB50947D, 0x61385C2A,
+0xD541BBD8, 0xAFB82860, 0xE371CCBC, 0x1012BCE6, 0x514A2569, 0x54E24293, 0x55C5B14D, 0xBFF8A596,
+0x55123AE2, 0xBCD878AE, 0xA5FF8791, 0xCC3679B6, 0x6E259F3F, 0x31D753E7, 0xB1478405, 0xDC2E5B10,
+0x6B392239, 0xBD77A5E0, 0xFA36261B, 0x80F27129, 0xFEB94108, 0x278C047F, 0xA26A9CC1, 0x4E74CF6F,
+0x25491E28, 0xD9A6CE85, 0x35006F8D, 0x589423E3, 0x1C05EEF5, 0x008ED038, 0x8ACE06D5, 0x0B55281B,
+0xB55154DD, 0x3B195345, 0x3C28F9C9, 0xE165EC9D, 0x464CBADF, 0xF8F03418, 0x52FCBC67, 0xCB5C6973,
+0xA14FA25D, 0x973C43FF, 0xF6100F0B, 0xD4155060, 0x6CBD9CBF, 0x9B94BED1, 0xBBAA2867, 0x84B17971,
+0x3D14474C, 0xBECDCFB8, 0x9CB8E718, 0x9BD16545, 0x5C4B7A27, 0xEB1C6F14, 0x06E67AE5, 0xB68D17C6,
+0xCF2BA7ED, 0xC61BB1F8, 0xDE1CD101, 0x547FB898, 0x9AB8536C, 0x6B76F050, 0x9D59DC7B, 0xB2ECB46F,
+0x1877197E, 0xEA4B79D3, 0xCBE45D0E, 0xB99469E2, 0x9C56EABE, 0x8AA0F403, 0xAB65CDF8, 0x1F484CC1,
+0x8355CBE1, 0x6338F2A8, 0x1EEE1322, 0xBD847B99, 0xB1A569B5, 0x93E5A15A, 0xEE93C79B, 0x8FE25028,
+0xCF67B061, 0xBD2A614B, 0x9D445C5B, 0x7196C073, 0x1C8A6DE4, 0x41C09CBA, 0x65CF737A, 0x6DA36B61,
+0xAD9325C2, 0xFAAD734D, 0x715ECA40, 0x117BE977, 0xEF7DF069, 0x34DF16E8, 0x41FCA499, 0x58A5DB4F,
+0xE0F0CB7E, 0x7660DB44, 0xF3DFD005, 0x95D89968, 0x381A4768, 0xC4BF229C, 0xB1286C4B, 0xB2E2CB2D,
+0xD5095702, 0x559473EF, 0x4930B978, 0x21C2453B, 0x28F0097C, 0x1BE9FDD5, 0x1DF7C3D3, 0xCB8C83DA,
+0xE9EEAAC5, 0xEB54B497, 0x8F27C608, 0xCAB6F4BC, 0x3083244C, 0xD91367E5, 0x6D0DD8AA, 0x376A49D6,
+0x945D17A5, 0x34383F0A, 0x226C7D81, 0x539A5462, 0xE5D65B82, 0x2BACD2F9, 0xE51ACF32, 0xD4533AA4,
+0xEE47A8B1, 0xD541AB7C, 0x62998347, 0x3352FE1B, 0xF6701330, 0x45ED05C7, 0xE24E04F0, 0x07D152E0,
+0xCC17012E, 0x7B0AE79D, 0xEA8E9A4E, 0x6B9CB1D4, 0x0A14FB89, 0x1428463A, 0xCD20FE48, 0xA2F06258,
+0xC4C9935E, 0x609CA8C3, 0x9505DC5A, 0x5D6A8960, 0x25C845B7, 0xF4472F91, 0xF4BA06DA, 0xC387D335,
+0x60CAFE37, 0x54521AB6, 0xE954A5DB, 0x807AEDDF, 0xBEA54C4E, 0xAB63189D, 0xC533E9E4, 0xD122036F,
+0xB660C152, 0x16C622DC, 0xA62E4EBC, 0xC1AFA1F0, 0x3F93D72C, 0x516D9036, 0x69F429F1, 0xFF61A62C,
+0x0E0DBA6C, 0x5F8E6270, 0x37EB8C94, 0x02686070, 0x4DEFF6F1, 0xB46F4CD8, 0x9C5F4989, 0x7AF3E147,
+0xB9ABAAE9, 0x530FE486, 0xDA64455B, 0xE1AC28EE, 0xF869E55F, 0x8CDF0629, 0x28CFAE5D, 0xE42511EB,
+0x82A22ACE, 0xD81EDF39, 0xDF29CE78, 0xBD9C0B32, 0x7D55CF04, 0xD24B07E3, 0xDD8C58D6, 0x683D73F7,
+0x67ED7F4E, 0xC44DF267, 0x3348567C, 0xDC58224C, 0x0FD21085, 0xA1AAD313, 0x05D0653A, 0x4668BA1E,
+0xE8E54661, 0x67528EC6, 0x8A96C5C0, 0xAE18B780, 0x12C4F729, 0xED6897B4, 0xEB9BE180, 0x4213D183,
+0x5C2F41F9, 0xF6CF9903, 0xE137CE1C, 0x22472A15, 0x2C49EDE5, 0x4FE2B949, 0x622A5C7C, 0xC60B261A,
+0x23FFB032, 0x7557BB31, 0x73B43B29, 0xBF8F592E, 0xF77D8A06, 0xFDFAD099, 0x682F02DC, 0xE4B88537,
+0x909C487E, 0x6ACF8698, 0xF25317F0, 0x9DDD150A, 0xB6A6B219, 0x2F88A7C2, 0x4F1EFAD7, 0x6844FCEC,
+0x7CB0E34A, 0xE73F1855, 0x3BA461E4, 0x8CD5C541, 0x8FBEDD90, 0x5F7428E3, 0xCAC85442, 0x3F35E219,
+0x70DB1A13, 0x77956148, 0x73DFCA5B, 0x8AD5DFC4, 0x68D5634D, 0xB102D653, 0x5F02FA10, 0x149B86A7,
+0x8BD11AF0, 0x4E5B51AE, 0x93BC007A, 0xD2044B19, 0xCDBCCD58, 0xF72F9D4E, 0x2C6523CC, 0x64EA5F68,
+0x6B4756A7, 0xDE2200AE, 0x75604B42, 0xC272519C, 0x78351E10, 0x45A909E0, 0x7D60FC9B, 0x4AD3D619,
+0xF6CB1E85, 0xC922F020, 0x6B8ED326, 0x016123DB, 0xA4B01ECA, 0xCAEA94DF, 0x758F1531, 0x7853E744,
+0x75E076F4, 0x89E63239, 0x18076EFD, 0x73F6B66B, 0xEC1E50E9, 0x6665B92D, 0x7FE3A0A0, 0x765D6E3D,
+0x269CC3E6, 0x151BF69E, 0x5D888F2C, 0x8606D58B, 0x34556C2D, 0x772BFD84, 0xD2CEC1F1, 0x19657FC7,
+0xFE618CB3, 0xB1D72F2D, 0xE564F765, 0x75C308E3, 0xF08F38FA, 0x30353774, 0xF513517C, 0x6C49903F,
+0x7E7BBB0D, 0x40C36AD6, 0x492B7B4C, 0x39757376, 0xBB9C60F2, 0xED812418, 0xB2291400, 0x4FB57E8C,
+0x1820B510, 0x4764C4DA, 0xEE7040A6, 0x6041E905, 0xF4330270, 0x868AE751, 0xE38DEAB9, 0xD3B20918,
+0x79C258E0, 0xAC874D8E, 0x9550A947, 0x539FF577, 0x5018EB82, 0x58BC22F0, 0x100BFE26, 0x52491E2B,
+0x513761BB, 0xEB21862F, 0x0195F1F5, 0xA0A522F2, 0x1BD21E11, 0x3A15B38B, 0x1530FE09, 0x3841E8CB,
+0x74B56759, 0xAC907E5E, 0xCC8695B2, 0x513FCAD4, 0x2E284F99, 0x09802A83, 0xFC67F995, 0x6A2BA176,
+0xCE37BAE8, 0x270D8DB8, 0x424D3D63, 0xD0E0F8B8, 0xF01ECFF3, 0x0A4F0B47, 0x6837A59D, 0x76D32DA6,
+0xB24A85D7, 0xAF950042, 0xFFCD9AB0, 0x6BD79F9A, 0x52DF8B2A, 0x62D81BFC, 0x2FF92AAE, 0x578EBB2E,
+0x669772BC, 0x2F755594, 0x71C48903, 0x5AEB6CE7, 0xD0D4695C, 0xD0082CF2, 0x499BC2D2, 0xF4177760,
+0xDE7EE37D, 0x9CC47CE2, 0x55270C58, 0x51DA31C6, 0x6FF550C4, 0x91970735, 0x8604C4F2, 0x21D8812F,
+0x116D329D, 0xCC43378E, 0xCD5C5414, 0xFA23B2CF, 0xC4EA168B, 0x0B95D110, 0x027C1BD9, 0x902522CB,
+0x9D35781A, 0x0FD9620A, 0x0D235356, 0xB0155399, 0xAD93D8DC, 0x863D90A5, 0x07F31447, 0x52C32D67,
+0x42BF7F12, 0x3EA615E2, 0x2EF7C68A, 0xB266CAF2, 0xBF10E1DD, 0x0289B129, 0xC765DE2B, 0x0425F56A,
+0xEF6725AF, 0x15482D61, 0x299BC121, 0x37E3F009, 0x4E1B40CD, 0x21CFD81A, 0x89F59D43, 0xEAE869A5,
+0xC5DA5D72, 0x3D2E05B5, 0x40B1E42F, 0x243CECAC, 0x3E8011E3, 0x05706D92, 0xADB36FB7, 0x368A76C1,
+0x861D14E1, 0x6A75CDF1, 0x9C170293, 0x5D3E7920, 0x2846D4EA, 0xF0A839E9, 0x456E8313, 0x9AFA5F5A,
+0x88E7C02A, 0xE6D7B0C0, 0x888A3119, 0xB7E0C142, 0x33A2672C, 0xF629CD26, 0x1AD95E2D, 0x847C2ACE,
+0x9A6178E6, 0xD1965890, 0xA0AB9C4E, 0xC6F84E66, 0x2EF71F5A, 0x466416A2, 0x64DA94FD, 0xDA420C3F,
+0x628D9DD2, 0xB0660BC9, 0x73D738F7, 0x23474708, 0xB1C01B97, 0x24C409BB, 0xCDA973F1, 0x921F315B,
+0x34E41AD2, 0x98E3D86E, 0x8E9EB06C, 0xFD01C0C5, 0xB53BF406, 0xFC55AA14, 0x465F25EA, 0xC9015011,
+0x2A7981DE, 0xEBA54881, 0xE1DD1AA1, 0xEB0D557A, 0x24E00D48, 0x1B062CEC, 0xBCBEFD4D, 0x4224EE50,
+0xAE018A67, 0x86F89F72, 0x16DF37F0, 0x14280530, 0x8A4FCBA2, 0x34B82D2F, 0x5C75AFD3, 0x9A883077,
+0xBDAD5896, 0xF2D49057, 0x93443C2C, 0x26FC7728, 0xBE68CD8A, 0xF2E58177, 0xFC662BFB, 0x12A8B923,
+0x97E2D7FB, 0x94B46697, 0x3E40F2A6, 0x2B1C779D, 0x429261C8, 0xDC35EACB, 0xB3599132, 0x82411F96,
+0xCF95101B, 0x0ED29D5A, 0x983CBB10, 0x53B856F8, 0x0BD21F78, 0x2D0F70AC, 0x8D9F7BE9, 0x6C289AF6,
+0x0951B4E8, 0x18420FDE, 0x3A0C1647, 0xD7581C3C, 0xB6A581AA, 0x86C36E86, 0xED0DADE7, 0x3DC0A3F8,
+0x9D2486C5, 0x43280493, 0x51A78F3B, 0xA6F3C39D, 0xE4AB1CC9, 0xC1C8E1B3, 0xF4A5CD45, 0x43762C67,
+0x67CA6AC0, 0xBB693E74, 0x95B7DC41, 0xE5C32875, 0xAD1DF5A3, 0x9AEEDB72, 0x4DC689C1, 0x8D1A43CB,
+0xFF3C24C7, 0x6E13B0FD, 0xB80796BC, 0xAA29E2C2, 0x8D41CBFA, 0x08F193A2, 0x166D91BB, 0x5DE3BA7B,
+0xF026AAFB, 0x2D4FF0EB, 0x00763051, 0xA5D87EC5, 0xF2D0952F, 0x264B84D3, 0x7D52BA15, 0xA4DBC32A,
+0x6D37D449, 0x867C429B, 0x24F649DE, 0xA1C05AF9, 0x036864D0, 0xE0C427AE, 0xB66B56F7, 0x4A92DF71,
+0x2BF6EFD0, 0x1527185B, 0x1DB501A0, 0x48E33DFB, 0x799FD1C2, 0x9BE71138, 0x186F8C4B, 0x40637F9C,
+0xCBD2B6D6, 0xB7D2866B, 0xB99F91B1, 0x656DC541, 0x3115BEBA, 0x7F7E186F, 0x33237B58, 0x8F27330E,
+0x629DF2BA, 0x0D65CABA, 0x6EB639E6, 0x75B4838D, 0xB71F0CC9, 0x0A73282E, 0xC5D6E9CC, 0x00E23512,
+0x643B61B8, 0x184DA6CD, 0x507562EC, 0x401A7564, 0x6502C287, 0x1498D3DC, 0xCDB69377, 0x6785C09E,
+0x99A5B15C, 0xEA52FBB5, 0x9CC1FE10, 0x213B92FE, 0x92869B62, 0x0002B391, 0xF6196A22, 0x14E8CCEE,
+0x06952624, 0x8755C50A, 0xCF9FB6D1, 0x8024245F, 0xB330224B, 0xB69B4E23, 0xE900C840, 0x17378F6B,
+0xB1C5C9AA, 0x365D98D7, 0x84372922, 0xA8859E29, 0x8CC062D0, 0x5D14948F, 0x79631FDF, 0x4603A8F6,
+0x3A944E65, 0xFB11FBB7, 0x977B4797, 0xD327ECA0, 0x2C66F4A6, 0xC1ED6C71, 0xCC54322A, 0x666A1D2F,
+0xF9957A72, 0x708FD038, 0xF4939492, 0x16C308AC, 0xBDFE8C4F, 0x03A56B55, 0x599EB4DC, 0x03B7F563,
+0x6CEF20E2, 0x1E830B0A, 0xBE9CC6E7, 0x2F73F67C, 0xFF26AA29, 0x38E01FFE, 0xFCDDB7C0, 0xAD82FD69,
+0xDE2B29BE, 0xEEE44C1A, 0x02E81890, 0x97A26194, 0xB6660513, 0x37953153, 0x8C99F39A, 0xB5257B11,
+0xB5FB5C93, 0x06B16E49, 0xC0C4311C, 0x21517366, 0x534A32F0, 0xF72873CF, 0x9C447EA4, 0x821A428B,
+0x92080B41, 0xF9207690, 0xEC3121A2, 0x88923ADF, 0xB22DD5EF, 0xACCDF948, 0x5FB73CF7, 0x68AD33AD,
+0x1C3F8C54, 0xC7360226, 0xE538F3C7, 0xF0C1418E, 0xC590BD5A, 0x14160C26, 0x2E266276, 0x7CE58F02,
+0xE5A255BD, 0xBEA2A6CA, 0xE85527FF, 0xAB62F48A, 0xF3D56430, 0x36B38A77, 0x4A8E2E37, 0x6B5E55EA,
+0x6F814FED, 0xC17C4E67, 0xC296DF1E, 0x59E9D04D, 0xBC78F5B3, 0xAB37D967, 0xF8428744, 0x6303DDF9,
+0xE1807D98, 0xA0BAE3E3, 0x26E84D01, 0x618E08FA, 0x0CF0FC7A, 0x911A771C, 0xDB458E3E, 0x5D920C83,
+0xFFC40809, 0x235DCFFE, 0x68E1C98A, 0x9020BC6B, 0xD1A00FEE, 0xAE76B089, 0xC8E6F169, 0xDFC541F8,
+0x65876337, 0xDD1D7ACF, 0x5441C29E, 0xA7B5CDC5, 0xDF068CC9, 0xD9AEF898, 0x8748E9F9, 0x8D46B66B,
+0x41CEADE7, 0xD228472C, 0xBAAC5EA3, 0x1459D639, 0x46D7005A, 0x3646D722, 0x5098793C, 0xC3BADAE9,
+0x23831605, 0x88D56902, 0x7D22FBF7, 0x6963BC9B, 0xFFAA0CC0, 0x20ACAEF8, 0x3EB1E8BA, 0x4367A693,
+0x2B15F4A8, 0xEBF05245, 0x1B19BC91, 0x63A52E8F, 0x64E44548, 0x31ADCA08, 0xB8CDD353, 0x55357C6B,
+0xB7549F77, 0xFDA90353, 0x19A52D09, 0x2E630C5A, 0xE251717A, 0xD496D0CD, 0x302392B5, 0xB720E90E,
+0xDECE39D2, 0x167EB923, 0x4AEC7C87, 0x166F0D11, 0x0A7716C0, 0x5EA8A35E, 0x61818795, 0x25619A2F,
+0x0C36E1EB, 0x5301166A, 0x7E6C0972, 0x4C2ACC5C, 0x19379672, 0xB6C89205, 0xB44525A9, 0x4334A835,
+0x522CCADD, 0x8100BFCF, 0xE7FBB2AA, 0xBD2078D4, 0x82BC039C, 0x0028F607, 0x596A819D, 0xC55F98D3,
+0x9741C7C5, 0x2CADFA60, 0x8C0C37DF, 0x14F486EE, 0x43831895, 0x348BED8C, 0x6D96F7DE, 0x561D71EB,
+0x99251352, 0xDBFF7F02, 0x0D2B5D71, 0x61A3F1F6, 0xF6BDDD54, 0x3C1EE6CF, 0x100F993F, 0x522C993E,
+0x81C8B272, 0xBC024046, 0xD3C7F659, 0x0AFC9809, 0x3951666D, 0xA76382D4, 0x213254FA, 0xA0F79581,
+0xA05BDEBE, 0xC424733F, 0x568AF0E2, 0xA79EEB13, 0x38A54B1F, 0x426C64D8, 0xEB63779A, 0xAD0C8182,
+0xFE3C9D54, 0xAD867829, 0x2E1558F7, 0x3B2F60CA, 0x854BDA1D, 0x81E879EB, 0xDB6B191F, 0xA4D81A7D,
+0xB08D004C, 0x257CB37B, 0xD2AE9EE1, 0xADE547CA, 0x1513E54B, 0xE515E8A8, 0xB63382EE, 0xBB5952B7,
+0x3888D3F4, 0x11B9F6A1, 0x736007FC, 0xCAC4DB49, 0xC65BCED3, 0x1534E63C, 0x72B34D87, 0xB46BDA5A,
+0x0B09131B, 0x3248E1A5, 0x982C52D5, 0x312F5B0A, 0x8B5221B7, 0x560EAE75, 0x86E74A54, 0xC45B6ED0,
+0x430FCA58, 0xB54CA555, 0x83E701B6, 0x5E3F1A11, 0xE42595FC, 0xC5D30EBD, 0xCDC3D6A9, 0x281D97DB,
+0x3D48E424, 0xC8F5E788, 0x0A38BD4E, 0x67619920, 0xBA91BD8A, 0x4C2685A8, 0xE12F2D99, 0x68860336,
+0x1EFAD0DE, 0x82E773D9, 0xA9B81507, 0x4F793718, 0x03C89FDE, 0xAAFA74B3, 0xA9923B7F, 0xC60D6383,
+0x25523B53, 0x94B8F271, 0x05F62AAB, 0xD22036AF, 0xFB84E8E3, 0xD26B7725, 0x52CAF750, 0xA6B90733,
+0x1679D26B, 0x46C51D02, 0x872DBA4A, 0x8A6BBACA, 0x44B2C653, 0x4BE93B46, 0x4E50CD1D, 0x360E7674,
+0xDE46E0A9, 0x29165A8F, 0x36769217, 0x25692D35, 0x09C78FBF, 0xAF2CD00A, 0x4E6104A9, 0x30A7CD1D,
+0x2E4CF64B, 0x3E343974, 0x376D1C2C, 0x7CEA27D5, 0xB49AD3F4, 0x8CA5464C, 0x929DB7DD, 0xED365DDC,
+0xCE4C30BB, 0xB309DB4A, 0xB8CF523D, 0xBC1A5DB5, 0x46941CCA, 0x0BB801F3, 0xE5E7BCA4, 0xD2775721,
+0xD12216E1, 0xD1C30356, 0x487CA764, 0xDAA6F07A, 0xB55D9865, 0x1FD2A768, 0x75FB14C6, 0xB95EFD60,
+0xF04B3712, 0x43C690B7, 0xB36E72FD, 0xF19B180A, 0x10885E98, 0x574DFE46, 0xE6E0857C, 0x7D957916,
+0xBA2C5422, 0x901BE8CD, 0x710ED3A6, 0x6B654715, 0x18D47B35, 0xED3DBEEA, 0xDA2EFEFC, 0x1435655C,
+0x48518EA4, 0x925868CF, 0xF7DF8142, 0xABBD187D, 0x664071FC, 0x8B0D1DAE, 0x93B0E1B0, 0x493CBA04,
+0x1DFE1D84, 0x6076959D, 0x0BBD1D1F, 0x174B8F15, 0x05EADB39, 0x85882865, 0xCA2E67B9, 0xDA6B7F16,
+0x6BDECD74, 0x30451F7D, 0xF2CDB314, 0x1B059577, 0xEBA0AAD3, 0xF34F55EC, 0x5642B9F2, 0x35B79FAA,
+0x1BF4C0F5, 0x07553B70, 0xA7D6E2CE, 0x46BFC421, 0xC79D957F, 0x4A1F4664, 0xA553888F, 0x96C1E3F4,
+0xE26DDFDC, 0x9701D42B, 0x7885B76C, 0x2AF0334E, 0xF1C99A18, 0xD4DF3CC6, 0x862368B7, 0x209E33E0,
+0xDE37A458, 0x85189E5A, 0x480B41FA, 0x65596FF4, 0x7F3ED63F, 0x24FF7C1A, 0xD4FA1AE3, 0x0476407B,
+0xF31B57D9, 0x48C12741, 0xCC81C4FA, 0x842E6F92, 0x96AD0091, 0x6DA5E294, 0xBBF7990A, 0xDCC365CC,
+0x588EC677, 0x01541D90, 0x9C1F0C9F, 0xAF545419, 0x15F252FB, 0xFC17416F, 0x2D0AEBA8, 0x20C9F171,
+0x72D7FD24, 0x5ABB1FBC, 0x8C78541F, 0x7DDCA0C5, 0xD6052EDC, 0x1A9B17D5, 0xAF1A0520, 0x41B75608,
+0xCDFD6875, 0x8B090E1E, 0xE051BD80, 0x3880A8CA, 0x7CE8C7F9, 0xBD174BF9, 0x330C93E7, 0x153E3663,
+0xD40FE5AC, 0x18D3524D, 0x2DE90E40, 0xD00FD5FD, 0x3E341A48, 0x4B692F17, 0xBA1846B9, 0x6F6BBF38,
+0xF65D9FC6, 0x79DD8BE8, 0x96697CB7, 0x57A46B02, 0xDA36F017, 0x5C61CA7F, 0x438EEE7C, 0x288BE1F6,
+0xD461CA09, 0xE21A8707, 0x23D613AC, 0xE202078F, 0x435C7ABE, 0x543F7C2E, 0x9C86F08A, 0x9FE5D7EF,
+0xDE3B6F2F, 0xAF314EC0, 0x480F41DB, 0xDB9CCF69, 0xAA84D589, 0xBB86095C, 0x4EB3989C, 0x43AFA06F,
+0x43CBC88D, 0xCFF61FFF, 0x3B19F6AF, 0x7F4DB62A, 0x6877C1BD, 0x00049088, 0x985E6893, 0x25AF7B17,
+0x3B8CC125, 0x110D8178, 0x4225B1D1, 0x6AB332EF, 0x03DAAF48, 0xA727EBD1, 0xC290B4FA, 0x25DEB8F5,
+0xD191E391, 0x16C68527, 0xCDA26352, 0xD015DE2D, 0x1741279C, 0x6FF0F803, 0xCAFA80EF, 0xD642D9F6,
+0xED1DC232, 0x3C59A8C8, 0x9D2225BA, 0x7C0BFC04, 0xDB644EFC, 0xE4B3F2A4, 0x69443508, 0x3D80A30D,
+0xD3B6B1D0, 0x31ACCF5F, 0x80CD2E1A, 0x57825477, 0xF1264F44, 0xEAE834D2, 0x1D92A406, 0xA83D1578,
+0x080992B7, 0x288382FB, 0x12A81D35, 0x4B1075BB, 0xD901809E, 0xAEF2FF44, 0xB5AB83E2, 0x3D2CFB1D,
+0xBC3B924F, 0xDBABC7D2, 0x3D21FE5E, 0xED96310C, 0xD7A58284, 0xAD97D931, 0xB3F22626, 0xE17B26C9,
+0x753C5590, 0x658D2059, 0x10542CC5, 0x1111B130, 0x4511BDC6, 0x4B0130D2, 0xB9A49E56, 0x7B3C0040,
+0x14A7F5B1, 0x284CD74B, 0x5986AA3A, 0x288A6778, 0xCF8C345B, 0x7EC2DB9C, 0x4143723F, 0x8EFFF053,
+0x37F636FB, 0xB3B2C326, 0xB0C691FB, 0xF8B17E9B, 0xC18E4AC3, 0x87E5AEAB, 0xE10C6BCE, 0xC2E5D43C,
+0x16483523, 0x5811BB6E, 0x2491077F, 0xAADD640A, 0xEB482771, 0xE2CF2352, 0x118F3B30, 0x65CAD3D3,
+0x321FE964, 0xE323B837, 0x4661C10A, 0x3E0B9B59, 0xC910DC9A, 0xF469111F, 0xB84BC256, 0x7D4F988A,
+0xBE471C62, 0xAE0B49E3, 0x5CF09417, 0xDA56D516, 0xD058BC34, 0x4ECF94FD, 0x262E56EE, 0x40A6F15D,
+0xF4B3011A, 0xB9A90E28, 0xD16F10D0, 0x78D27564, 0xD2999E23, 0xFE2FC577, 0x51D1CB6C, 0x9305B848,
+0x9C18BB0E, 0xFC325BD2, 0x22CC897F, 0x7BECBF34, 0x71FA7C5C, 0x896A83B9, 0x7B77EE42, 0x9DECA2FE,
+0x99A4DA7F, 0x0577D802, 0xF623F0E5, 0xC13A882A, 0x8A0EACF4, 0x771E5959, 0xBC717207, 0x4DA27722,
+0x3B57A0CB, 0x3CE0C56E, 0xDD13EECB, 0x0E8FB826, 0x49D6FCF5, 0x9C059DB5, 0x75D235AE, 0x5E8EF898,
+0x3D4D21EE, 0x9293C72F, 0x3AE81056, 0x7E881C2A, 0x734578F3, 0xBCA210E5, 0x9F69FEFB, 0x79E858EA,
+0x59338994, 0x77F5BF5A, 0x62CC7CF7, 0x324B66AE, 0xB61F0F28, 0x5960913D, 0x8408FD29, 0x32EA8286,
+0x5540E8CF, 0xCF9ED028, 0xEE5E4CD5, 0xE1F6DE47, 0x66492D8B, 0x33731885, 0x06D58B2F, 0xA22C4480,
+0x720A693C, 0x71DE4D01, 0x40D9C3B0, 0x79034CC1, 0x3C696507, 0xB68925CD, 0xD04ECFF9, 0xF39B20E7,
+0x0878361E, 0x148D1A6C, 0xBEB29DB3, 0xC8A7CAA5, 0x5DD28BF5, 0x3ED0FDB1, 0x9F2F17F0, 0xAEB77A1F,
+0x85A3376C, 0xE45C2545, 0xC3AD7E05, 0xC778D187, 0x28CB977B, 0x935896BC, 0x3062366E, 0xE19F8C28,
+0x613CC306, 0xDE682224, 0xD8681BE6, 0xD07EC9A8, 0x361D7118, 0xC1980698, 0xB9F1A444, 0x19AEF7CD,
+0xEDB3B800, 0xDDF00DF9, 0x434AD5EC, 0x1B9A9F94, 0x473F8951, 0x42A873D2, 0x8FFA7322, 0x2385EEC1,
+0x0B5E64AF, 0x93E6A894, 0x5FE84189, 0x50B49DD1, 0x0F4DA031, 0x195755BE, 0x32D75892, 0x0ACC8DC3,
+0x8004D52D, 0x71468A4C, 0x52212406, 0x4287C465, 0xDF11D168, 0xCC65162A, 0xF5ABF6D7, 0x1FCF4564,
+0x336B65B5, 0x6D8D79F3, 0xEE173A9D, 0xF8B7FEC7, 0x3499122B, 0x3A66F559, 0x638B0106, 0x9AC6A2A2,
+0x506AEFA7, 0x5BFA19AC, 0x0041D429, 0xCC84FBCD, 0x92AB1098, 0x35B14F91, 0x4CA47441, 0x8BEFB0FD,
+0xA676A214, 0xE0BCFF1B, 0xB66BBCFA, 0xF7F51AE3, 0x8923E853, 0x7C8E2648, 0x63DF4DFA, 0x5B126708,
+0x4CF77405, 0x62FC871B, 0xE72B0321, 0x0AAD3B56, 0x85F9D3B6, 0xCBC955E6, 0xAAB642A6, 0x84889402,
+0xCC4F93D8, 0xCCD64C70, 0x6A057B76, 0x3E2772FC, 0x2EA5818A, 0x12529546, 0x52475902, 0x5E880125,
+0x5DA0456C, 0xE7E0B221, 0x67B28F28, 0xFF2BE95D, 0x77E57E3D, 0x0D17692C, 0xD7C794E1, 0x3E84593A,
+0x25336650, 0xBC797326, 0xC15F09B6, 0xF478DE56, 0x4B8FB9DD, 0x7CBBDD49, 0xA6BB7109, 0xC6A8E4AD,
+0xDAF13B13, 0xA27DA108, 0x03F2BCE7, 0x4DC09AEC, 0x28CF76CA, 0xDBF1C1DE, 0x8BD483AE, 0x920C9F94,
+0xC8F8DAFD, 0x1AD6F0E1, 0x1A98DFFA, 0x958A88B6, 0xA4DFDF05, 0x2DCDC1C1, 0xAF1DB965, 0xC49BC2F8,
+0xFBE0068E, 0xDBF0EDB3, 0xE802C7A5, 0x13231111, 0xFE0DEB02, 0x07520A34, 0x48EAF3C2, 0x14BC90FF,
+0xE90FA247, 0x387A087A, 0x33C9B353, 0xF10C31EA, 0xCE1D9AFC, 0xB1CA2313, 0xA64D0F07, 0xB819C617,
+0xDDC74CE9, 0x1E71FD85, 0xF53E59A3, 0x03AD9E1C, 0xD7732E22, 0x7FC3C3B6, 0x01E8B625, 0xC66BC83E,
+0xD79B59C4, 0xE0C2A9BF, 0x6A867FB3, 0x6FAEE85A, 0x0272F51B, 0xFF5C02C8, 0xE5898EA5, 0xE6F1A24F,
+0x7A635176, 0x0CAE04B6, 0x62B2CB88, 0xACC872A2, 0x4CC37EC5, 0x541BD489, 0xA79318E6, 0x10E757F7,
+0x27B15205, 0xB1A7F8E6, 0xD97C6A7E, 0xDC1531F4, 0x32AD9F27, 0x503FECE3, 0x2FE7ADDA, 0xA87FCED5,
+0x3B2491F2, 0xDE3CBDA6, 0xD9B0DAE2, 0xF9E8C840, 0x59889C6E, 0x5C36F39C, 0x5A34AB42, 0xA9F0D73D,
+0x1DDA3D46, 0xEAD8A643, 0x4BB1EEB4, 0x26F9DDC3, 0x4080BDFB, 0x06CCB813, 0x7FEA0F7A, 0x733EB400,
+0xA0924D92, 0x81A2F4AC, 0x2186A2FB, 0x65E3FE75, 0x1C3CEF14, 0x2AD276BF, 0x755A9FBB, 0xA0C06172,
+0xE865A631, 0x51342ADE, 0x4BB57166, 0x9541788E, 0x43560A1E, 0xA6C99C47, 0x3DABB2DF, 0xEE0CDFCA,
+0x73FD7A8F, 0x9BB98F6E, 0x396300BF, 0x2B8F632E, 0x3B7C2C58, 0x6E0B3422, 0x7989D727, 0x0284E1CD,
+0x672E2062, 0xC29D80E7, 0xF4431487, 0x63C036A4, 0x92AED164, 0xD8B2D5A5, 0x5EDB7F85, 0x200F678F,
+0xE666306F, 0x19EB1C1F, 0x568C784B, 0x7EAB553C, 0xD3A81CA7, 0xADFB1A35, 0x81F6C982, 0x5D404242,
+0x1F37F1D8, 0xA0248CA5, 0xCB9429C7, 0x81D2FB09, 0xBF2CCE61, 0x34F94870, 0xCEA29187, 0x8CD6B738,
+0xC852A643, 0xE6FF9838, 0xF672E339, 0xBC9CF529, 0xBC1A7270, 0xF332DE45, 0x2274324F, 0x19D3ADFC,
+0x3A9D6F9F, 0xB6623720, 0x1C0D53C6, 0x9C9B005D, 0xC807DB70, 0xDBEB4D1A, 0x23DF5E6A, 0x31653D24,
+0xE9EE9A3A, 0x883C2682, 0x4FDFDBB8, 0x01931B79, 0xB96B2953, 0xD1BBB9EA, 0xF804DC6F, 0x9FF07047,
+0x0676AEE3, 0x34346AC5, 0x15061183, 0xBD07BC81, 0xB644448D, 0x4C27AE5D, 0xB72888F1, 0x25B28D85,
+0x1528B52C, 0xFEAEE891, 0xAE86255E, 0xA275F0FA, 0x9AA569C4, 0xD8D3C17A, 0x44EAA95F, 0xC8B949BB,
+0x1ECAB3B7, 0xC9BABFC2, 0x2241A16C, 0xAF37C8C0, 0xFC8B9DE0, 0x67AE2B30, 0x1EE955B5, 0x11540BA4,
+0xCEF49C81, 0x955D12F4, 0x5DA56ED9, 0x6D163091, 0x6DBB9A12, 0xA5F18DCF, 0x81C5969D, 0x4BFEFF8B,
+0x2409B4A4, 0xF9802712, 0x95688E12, 0x543A9B08, 0xE7D077F3, 0x543C6AF5, 0xFCF0F959, 0x21B73D30,
+0x117B771D, 0x84678E41, 0x6E8D7916, 0xAAFDA927, 0x404BEBAA, 0x4390DCBE, 0xFD8C4A5C, 0x77027A4B,
+0xCDF46AC2, 0x664ABC99, 0x60A2DE93, 0x75CB8849, 0x6EB635D5, 0x528DA55F, 0xE329AA8A, 0x52B6381B,
+0x5E83B9A3, 0x67808F27, 0xB005F8CD, 0x24234196, 0x802EAA19, 0x9156536E, 0x607876B6, 0x8C6FE71A,
+0x1E83B387, 0x3992472D, 0xAB035E7C, 0x94620352, 0x8E9F5ACB, 0x17D19729, 0x84D30444, 0xDAC9C8A0,
+0xADA6B067, 0xAFB41C42, 0x26AEC18F, 0xF01DE12D, 0x2B6BABE7, 0x72E63284, 0xC7F47DCA, 0x6BD64571,
+0x76BB68C7, 0xCBCDBC20, 0x90A8C3B0, 0x89E963FC, 0xECB61C6F, 0xB58DC18E, 0xBA68A67E, 0xC21640FB,
+0x8BC1D0E5, 0xCB47716B, 0x3C33F7CD, 0xAADD9DB6, 0x8C6A8A66, 0xCD30BF4D, 0x7FF76111, 0xAE29F53E,
+0xFC32445F, 0x450FDE2B, 0xD5F634F6, 0x2F5F6741, 0x32477719, 0x70A0F8B5, 0xE264D3C2, 0x025DBBFA,
+0x3FE0FEEE, 0xB4DD24C7, 0xB230275A, 0x911FE262, 0xD78ABA2A, 0x79C6A18F, 0x005735F6, 0x24DB115C,
+0x6F128739, 0xFBBC7CAE, 0x7C3E4B46, 0xB0D8EE87, 0x33F7C8FB, 0xF01EB196, 0x405B5B38, 0x906E56B4,
+0x2EAC774E, 0x9986FA3E, 0x5E6A832C, 0xDC4B4CB8, 0x10195B71, 0x06D70C7F, 0xA0562BB0, 0xBAF04C11,
+0xF63A8D4D, 0x13F5779B, 0xC5415095, 0x90D790C1, 0xC0F5DB55, 0x49F4237A, 0x44402AAB, 0x6F35EFA7,
+0xA96804E4, 0x617AA899, 0x0A01ABBD, 0x8F217DB6, 0xAF742EBF, 0x879DC6C6, 0xFE3F21E7, 0x170E9968,
+0x41C689BB, 0xBBECB2CC, 0xAC39446B, 0x6D890AF1, 0xEA31805C, 0x33C1DCAF, 0xFF67FDA7, 0x95E170F2,
+0xE37E5224, 0xFD6A0993, 0x4FBAE35A, 0xE928A7E1, 0xE3440663, 0x0A7F1911, 0x09B931B5, 0x7BFD8B80,
+0xFEBD421D, 0xFFA48EB6, 0x64096703, 0x24FD686D, 0x155131F6, 0x2770D1AE, 0xE473653C, 0x3678E19B,
+0x04F21250, 0x08B87FC1, 0xB1917773, 0x64080643, 0xDCF69FB8, 0xF088C3B9, 0x6F64A653, 0x9F348DEA,
+0xABF0F1C1, 0x1FD39B64, 0x3E47445B, 0x6E3B4769, 0x722B1E1B, 0x98EEAE63, 0xFF308A6B, 0x192DD487,
+0xDE74AF9F, 0x44803C3C, 0x9CA2B4BE, 0x73C33EB1, 0x120437D2, 0x7C51E8D3, 0x8AE47C86, 0x4421AE8E,
+0x1B843E51, 0xA2D4BD5A, 0xD4C2312C, 0x96643276, 0x19389387, 0x9196D220, 0xB8515745, 0x6C76A378,
+0xAAD74332, 0x4EC9F23D, 0x3B7B4CE3, 0xC57C623A, 0x76683805, 0x9E98002C, 0x757C422E, 0xBFBD2CB3,
+0xDBF1C71A, 0x306DDB37, 0xD0395249, 0x88A5A466, 0x8D256D8A, 0x192E05F0, 0x2E79E646, 0xE7FCE9DB,
+0xFE24A0C6, 0xB73CEB3B, 0xB9D73638, 0x182DC4BB, 0x5D90723C, 0x6DC608A4, 0x37EFD61D, 0xA34FF13F,
+0x8E2F6AA5, 0x72E20FBE, 0x3DED3B24, 0x17F3202E, 0xDE6FAF05, 0x1F62CF17, 0xE70EEDF1, 0x5127AF8D,
+0xCFC38BFA, 0x3F9CED78, 0x1252D1EC, 0x35E38087, 0xC1F8C137, 0xF7BEFA55, 0x2F6F4CA1, 0x55F78636,
+0xA1A8CEBB, 0x55756604, 0xAFB47899, 0x49E98916, 0x064B04BF, 0xB05FBB4E, 0xB090E573, 0x71D2DF7F,
+0xCDC5C859, 0xE06917F0, 0xA3BDD7A5, 0x408E0DB5, 0xF827C3A4, 0xDCE8765A, 0xE3503B8D, 0x7231CD7C,
+0x84A5D1AE, 0x57013680, 0xDFE4B620, 0x22CB1ED9, 0xA6D08DB3, 0xF73DE329, 0x9DC07300, 0xC05619CC,
+0x35CE8F19, 0x6BEFF184, 0x8D727E4D, 0xF049E4FD, 0x0B0065A4, 0x13D7F103, 0x33A57BB7, 0xC4B32C81,
+0x6CA81879, 0x5CA3BB0B, 0x616996A9, 0x5162FC8A, 0x78CFBD91, 0x35B5D061, 0x31A15388, 0x4979A49F,
+0x6961B983, 0x8E81C934, 0xFC91C8D6, 0xEACCA784, 0xBC6147A1, 0xD24C85AC, 0xBCE4997E, 0xC2DD865B,
+0x985BC21D, 0x9E214DB5, 0xCC7AD88C, 0xB29366BD, 0x12C0DFE6, 0xB711F2C0, 0x7F190EFD, 0x11FF5762,
+0x68171769, 0x1C317A09, 0x6ECAF23D, 0x39130782, 0xD35F2B8A, 0x66E23F0D, 0x37B19F2B, 0x80DAB769,
+0x3825D05F, 0x27479598, 0xB27009BD, 0xDDF527D1, 0x4DBA9737, 0xF9830DA6, 0x71C74142, 0x417A1B0B,
+0x04F012DF, 0x9BD2DEB7, 0x5C313EA3, 0xC3CEC933, 0x3C91B67C, 0xB195244C, 0xC20C3141, 0x4EA31975,
+0xBAEF2E5A, 0xC97272D3, 0xF63D2D33, 0x30D36620, 0x2E49DD8F, 0x785342A0, 0xDE91568E, 0x498E563F,
+0x709D4C2A, 0xDE2A7505, 0x3DC8E2E7, 0xFEE88D97, 0x572E4E5C, 0x5DB919DF, 0xE599F2CB, 0x64F82990,
+0xFA75943E, 0x8B45E86B, 0x77B86A4B, 0x737B9EB5, 0xAED21BCA, 0x47AE7139, 0x3E8D1BE2, 0x390429BB,
+0x70DF6616, 0x968EB93C, 0x581493AC, 0x2B49EF71, 0xCD86A439, 0xEC5546D8, 0x60F3A256, 0x431B36D2,
+0xA6CB5F34, 0xC8647E9D, 0x596360A5, 0x311DF2EE, 0x437A8EDC, 0x68147C13, 0x9AAB35E9, 0x1B9B5DB9,
+0x0F07812C, 0x1EBD9599, 0x2D309AFD, 0xD73C19EE, 0x26ECE3F6, 0x165920B6, 0x7AEE9A42, 0x996EC0C2,
+0xF5CA22E3, 0x790F8588, 0x4C43A978, 0xC0F7B318, 0x8F7A0D22, 0xFD29886B, 0xC4646C39, 0xD8B71318,
+0xB84D73F0, 0x2DE1AE68, 0x15D89CF8, 0x14F5C92E, 0x4AF8C647, 0x59FC2ED5, 0xE675A4B6, 0x9B6A3BC8,
+0x2DD3A622, 0xEE84A970, 0xC1ECE2A3, 0x9BD35712, 0x0BF92118, 0x9D95D05F, 0x70F22FBE, 0xF957EF0C,
+0xB9061C55, 0x683D5261, 0x4E6407A3, 0xA255592E, 0xA09B0F75, 0xB7EE6A65, 0x6B2F3276, 0xFA72F28A,
+0x4814FD8C, 0x66FD3FE0, 0xFA2018CC, 0x2EA5E8BE, 0x9EC25609, 0x291C5B0B, 0x0356E5F7, 0x17E3F404,
+0x32B59D15, 0x5E2D077E, 0x33368EF6, 0x205E7D68, 0x13A185C2, 0xD18A4A4F, 0xEEA519A8, 0x75336424,
+0xB45D6C2C, 0xF87FADF8, 0xBE7E97EF, 0x6648D675, 0xB75E4805, 0x8CD9EAFD, 0x4D4129DC, 0xDF0288BC,
+0x31505210, 0xF6A55759, 0x8E1841CD, 0xFFA76200, 0xE9EE7413, 0xAB556F7D, 0x9E546AFC, 0x53B879DE,
+0xCAAEB70C, 0x933ADD65, 0x193F9ED0, 0x6918952D, 0x6CF5738C, 0xAA355007, 0x7155BEB1, 0xA8B666AD,
+0x98619E48, 0xA2568CE1, 0xFEA05B64, 0x4D8607D4, 0xF7272A11, 0x1A591C15, 0x4A442780, 0xEEA07ADE,
+0x5AF3FA18, 0xF71A88E2, 0x0B1437F2, 0x2E785A77, 0x1C0817DE, 0x98E7815C, 0xEAD7A46D, 0x340138CE,
+0x21931342, 0xED73CE2A, 0xF762BE52, 0x79EAAB2A, 0xFC91D6F2, 0x7C810D6F, 0xBB43DDB5, 0x032CA7EC,
+0xC8B1B040, 0x349C45FE, 0xD67C1B41, 0xB424B8FF, 0xEA9DBDAA, 0x050086B1, 0xFE331D2F, 0x597AA146,
+0x04B98580, 0xEDBA7472, 0x2C42B80F, 0x945A6C23, 0xBCA5CD27, 0x6095D51B, 0x9CA34A73, 0x742F571A,
+0x37A76CB5, 0x819D8A93, 0x47D1EC23, 0x03796A44, 0x22A0208A, 0xE66592DB, 0x95E7F7B8, 0x254E1766,
+0x909F1C3E, 0x151827C0, 0x6ADB63B5, 0x3914AE4D, 0x1FDA8A3E, 0x26458722, 0x26E167F6, 0x6FE66025,
+0xFA9365F5, 0xCDBE40F1, 0x2B4FF777, 0x8E5912D1, 0xE7ABA49A, 0x36DCE397, 0xFE1A585A, 0xC7277F30,
+0x730DE97A, 0x0F306C9D, 0x0EFA5687, 0x64BD276D, 0xFC9E8146, 0x5EC220B8, 0xA222FECE, 0xC4758667,
+0xD63109E1, 0x4640CE29, 0xE6568AD9, 0xFC1FD135, 0x83B0DFF9, 0x8BB57E5F, 0xB70A47DB, 0xF1385706,
+0xA73D2B57, 0xE666AEA7, 0xF2462188, 0x93CB3685, 0xB42C64C4, 0x13AD2671, 0x827C1446, 0x140735C2,
+0xE7D2B7A4, 0xBDFCE9A5, 0xEDAE7A89, 0x8AB32A3C, 0x3320FB36, 0x627FA8BD, 0x5A9102BC, 0x73C6B88F,
+0x2624F821, 0x83773723, 0x5301BF7C, 0xA4AF42B6, 0xABCB98AF, 0xC9B1FECD, 0xC6A3F14F, 0x67F20D0E,
+0xE6A28B1D, 0x9810596F, 0x8E2B9A0D, 0xB3CF829D, 0x795CBB60, 0x7B5EE38F, 0x1E572EDE, 0xE0A8297B,
+0x433B04CA, 0x7D70FC8E, 0xB7441918, 0x3B5DFB81, 0x0023DC7D, 0x22598D97, 0xE016D12C, 0x4032E870,
+0xF4491931, 0xEBEC05C5, 0x88BB87F0, 0x13750B6D, 0xF60096C9, 0xE8CE7C25, 0xD3B3B11D, 0xFD38BDF0,
+0xA0883261, 0x04F1B29F, 0x4027E40A, 0x00E43173, 0x23E596E4, 0x41380852, 0x49A2DB0F, 0x1BB51F91,
+0xD21C63B5, 0x53911683, 0xCD51EFE6, 0x7E23617B, 0x7F5E71B3, 0x4823FBA8, 0xB7DDEFE4, 0xB4BA19A6,
+0x04C1F4B4, 0x79FBBA25, 0x645B8207, 0xFC0C22D1, 0x0C3FF0E4, 0x5BEB599D, 0x8EEF265F, 0x8500B6C7,
+0xCD2567DD, 0x70E8EA70, 0xE1844A00, 0xD771DADC, 0xECF45BA7, 0x8BB4B428, 0xA43182C7, 0xAE6E7F66,
+0x1FF3AC41, 0x43BDC300, 0x193D7DC6, 0x3AFB9EE1, 0x938A935D, 0x73C754FC, 0xD54450CF, 0x558241F9,
+0x9C72AC1B, 0x1F5A9F7A, 0x558F193C, 0x01F55BE8, 0xC63F081E, 0xE8E98E72, 0x067CEBFF, 0xA70BAC31,
+0x0889884F, 0xCA4DA415, 0x457DD785, 0xC02BFAEA, 0xC76A8EDD, 0x2F68A64F, 0x9FF3BD4B, 0x3410BB09,
+0x42CF4833, 0xCFB8BDF7, 0x42A5FD9F, 0x79202E86, 0xA4868093, 0x319A9EF5, 0xA3386778, 0x35305DB3,
+0xCAD0F323, 0x6CA4E196, 0x4213F6AC, 0x6733623A, 0x4ADAA04C, 0x156F4839, 0xB5A5CC4D, 0x97A78471,
+0xC747DA83, 0x84E7E309, 0xD48912D8, 0xC7F0CAE7, 0xFD9A9543, 0x91AA52F3, 0x55DED6D1, 0x61EBDB0D,
+0x7E3167A9, 0x3C1B0275, 0x517E66E9, 0x60C6F8C9, 0x02073079, 0x46D41B0D, 0xBE7B636B, 0x261CEC8E,
+0x4CA5E685, 0xD6BA3B9A, 0xBC2F96AB, 0x563DAFF5, 0x462E959E, 0x9A9F92C4, 0x8049C941, 0x71A521F8,
+0x6B783E8E, 0x190E33E5, 0x5EA9186F, 0x7A0469D8, 0xB830ECCA, 0x4CE828D4, 0xEB087E47, 0xB4D8730F,
+0x655C64E3, 0xCB42BB00, 0x4494F98D, 0x894BB24A, 0x549F7FD4, 0xECEA1E4F, 0x2ABC8EC8, 0x2B225085,
+0x5CEB9E65, 0xCAF983A0, 0x99D3A970, 0x534587D1, 0xCC3B7F60, 0x2A0727BB, 0x76CDF175, 0x044F8818,
+0x3886A523, 0x8DDF9E20, 0xF5B93A09, 0xAB7B1E75, 0xE4565AC5, 0xC993D13E, 0xFA787AEE, 0x6F4DF3B4,
+0x200138F5, 0x53BCCFE2, 0x8C09F780, 0xFF04F48A, 0xEDEE4250, 0xB3A6ECFA, 0x1C3131EE, 0x9EB97F1D,
+0x494E9CAA, 0xAA9DCE18, 0xE7E83CBD, 0xE8370251, 0x7C2BAEDE, 0x26E97727, 0x9B219EF5, 0xF82BCEF5,
+0x4F0CA1D2, 0x7A46AB06, 0xD8AF5285, 0xA00281D8, 0xBF56CC86, 0x22E67FD9, 0x8CAC8EEC, 0xB4FB720D,
+0xE9603573, 0x4E7BFA8D, 0x5E6DA0DB, 0x41B34A79, 0x82A4F034, 0x5F72F6ED, 0xF19C6BB2, 0x571AB961,
+0xC8234D5E, 0xA0859CD4, 0x618EBAAD, 0x7C8D7217, 0xFEF31407, 0x9AA25276, 0x651AE115, 0x679BD467,
+0x39C6027D, 0x8A18A29A, 0xBEB52FE6, 0xE36F3249, 0xDC53FFB7, 0x3E1D1B45, 0x9E1F7387, 0x97506A52,
+0xF8F661BA, 0xA6EB4481, 0x9A5C8F36, 0xD8C58918, 0x5BB9614E, 0x94FA893B, 0x71394B4B, 0x8198DA00,
+0xF73C7B24, 0x08A6ACC1, 0x6DEFDC13, 0xB333A1AB, 0x0CAFA4BA, 0x9F5B5B04, 0x1CB6FDF6, 0xF91705C6,
+0x2AFE58AC, 0x6230B2B3, 0xB1C9C92B, 0xB0D2EF43, 0x7AC8E4CB, 0x5F5F7D4F, 0x56B9A230, 0xD32231F8,
+0xACC6BA5C, 0xB599223B, 0x1F4D2A31, 0xDF6FE4C3, 0x1246E7E5, 0x5849BD36, 0x0B4DD9DE, 0xF2D36FC2,
+0x279343DA, 0xD1AAC6D8, 0xE306D4E3, 0xCC57F3BB, 0x9587B8B5, 0x61F6A33C, 0xE9B7FCBB, 0x20B893B8,
+0x302C9B42, 0x556BA4F2, 0xC29AF430, 0xDFC71EAF, 0x5A5B5440, 0x72153770, 0x0AF63DAA, 0xB5409A65,
+0x760E3326, 0xD3412571, 0xF6AF0AEC, 0x2EF37E92, 0x87796543, 0x6E066B3E, 0xF1A80FCD, 0x61E1ACA8,
+0xCA2D40BD, 0xD5A1EBDD, 0x469BD73A, 0x9233236F, 0xA7321C4F, 0x077AC2A9, 0x5327E3C0, 0xB6FD074D,
+0xD57B66A5, 0x5C9581A8, 0xE7A4DBF8, 0x8C26D721, 0xED4351D5, 0x5DE096D2, 0x086394D0, 0x99FB9F6D,
+0xD75B593A, 0xB312B61D, 0xC319EF43, 0xA105A2E7, 0xCFC7508C, 0xD7F8A4F2, 0xB7ADEB79, 0x1B2BE24B,
+0x279A8C95, 0x0291FD8D, 0x128D91C9, 0x30231099, 0xB417281C, 0x529DEE0C, 0x82E92AA9, 0xCCCD3DE1,
+0x92E36FFC, 0x59877146, 0x15D6EFC2, 0xA1C6E5B1, 0x568C49C4, 0xA29A7722, 0x2F8A7E1A, 0x91F2BF23,
+0xFB21FABC, 0x1011E9A2, 0x2A864710, 0x15905297, 0x70529EB1, 0x3F43900A, 0x04D4769C, 0xCA834F3E,
+0x31DB67BE, 0x381BC50D, 0x33AD9B47, 0xA1A0C447, 0x172734A0, 0x3A9C5E87, 0x31E051EF, 0xFC53F9BE,
+0x6E1EE227, 0x6631DB35, 0xD065B39C, 0x5E840FF6, 0xD5D22D32, 0xF2AF86F2, 0x7472EC73, 0x998C086A,
+0x93C2D00C, 0xC2DF5450, 0x73AC86D7, 0xFE58701D, 0x03C52E8E, 0x7660653E, 0xC5B99255, 0x0737F5AE,
+0x4E94E0A0, 0xE4AF3C1E, 0xA7D2EA67, 0xAC41A9C8, 0x5F1F6589, 0x1BCE73A1, 0x4D64E222, 0x3E49139B,
+0x67B45BE8, 0x21BF1C3F, 0xC475E746, 0x978AFD2D, 0x0533110A, 0x59D09B17, 0xEDF0DCE9, 0xEE333451,
+0x59899F64, 0x9FF69D84, 0x0E3FE08B, 0x04A7E859, 0xAF3666D7, 0x6F854FCA, 0x4E69068E, 0xEA427E47,
+0x07475EB9, 0x6F4996A1, 0xD1080F5B, 0x21160CD6, 0xF9F41BC7, 0x820DFE2C, 0x3545B1BA, 0xB21A9FC0,
+0xF0BAE0D3, 0x9F80597B, 0x85F850A6, 0x7A3CC84F, 0xE179A88B, 0x320C489C, 0xA5677258, 0x9C3E2389,
+0x107FAFAF, 0xB3A3B5BB, 0xD15BED11, 0x6FFEC597, 0x9B967375, 0xD94F3EE2, 0x67ACA769, 0xA031FE43,
+0x9CE5660A, 0xB159AE34, 0x1A3CA566, 0xE9066DED, 0xDB5693A7, 0x08F536C7, 0x7778082E, 0xCFBAB37C,
+0x9A271626, 0x2DE9D31E, 0xF57F9690, 0x2A44A5BF, 0xBDFE949A, 0x3988D72A, 0xB93CE6E0, 0x6A89A1F2,
+0xF83E9DE1, 0x7D113899, 0xC4E24446, 0xF681851C, 0x63F075C2, 0x025B753C, 0xB854F51B, 0x84B81BF6,
+0x1393B07A, 0x4922FC5E, 0xA3FE4F9B, 0x8E9BA90B, 0xBC73E346, 0x9791A958, 0x9DC73FF7, 0xC2D86BC7,
+0x006DC8CF, 0x9C99FAC4, 0x4E32CF60, 0x8D6B3674, 0x49475B7D, 0xDD740D00, 0x3E3AF88C, 0x08154560,
+0x923094E9, 0x48EDB683, 0x6D0F1A0B, 0x28A25A2E, 0x45510885, 0xCFDB3407, 0x05261294, 0x5D51D4E4,
+0x0F7ECEDB, 0x0307A967, 0x14E23B2E, 0x91CAC073, 0x8121028D, 0x4C4CD0F7, 0xA3EFEB55, 0x75578D45,
+0xA0356765, 0x716FBE8C, 0xE25B794D, 0xC5E78C32, 0xD7048076, 0xF1B40A7F, 0xCDAF6CEE, 0xCE074856,
+0x4D87C73E, 0x2D32CCD7, 0x1787959B, 0x177BD6E2, 0x1EBF54C5, 0x5D841B43, 0x16AA7EE4, 0x97CD8E25,
+0xF2A6842E, 0xB0844112, 0x5C5F922F, 0x7131AD8B, 0xCD7069D9, 0xA2EE43B8, 0x20925E66, 0x927525F8,
+0x82530D50, 0xE04D4EB1, 0xA5E33C82, 0xC3882999, 0x96667A94, 0x17CC81FF, 0x06986AEE, 0xE6495124,
+0x08A6F286, 0xC182341F, 0xC1626DC3, 0x266CCF37, 0x96BD8D08, 0xFD87F547, 0x83898EC7, 0x75E689C3,
+0x5BF37766, 0x3D83E73E, 0x7C9EC2A9, 0x26D2DB06, 0x5E9B502B, 0x829F8C9C, 0x63306DE7, 0xE018D672,
+0x893ACCB1, 0x731FF2FC, 0xAF1D175C, 0xEC3644E7, 0xC042E3EB, 0x88A8B12A, 0x9A47954D, 0x83BBE643,
+0x562E4A22, 0xBD41F4B5, 0x0299F8B8, 0xE3C786D4, 0x2161F5F9, 0xF740F6E2, 0x50039811, 0xDB1F4A11,
+0x5011A2A8, 0x9E43E3D4, 0x0F4D704A, 0x48D3A611, 0x8754752B, 0xC1267559, 0x3FEBEC20, 0xB85462B2,
+0xC6D240A2, 0x3477716E, 0x691CFA32, 0x4F7F8C8A, 0xED0B5201, 0xCA78011C, 0x6DD1D5BF, 0xC56FE8B4,
+0x9905578E, 0x1F6A4E43, 0xC9505322, 0x5B418CCA, 0x9797D788, 0x517AB900, 0xB2C84245, 0xC905790F,
+0x63A893B0, 0x8619AFC1, 0xDEFBADD0, 0x5D335214, 0x6EB34E21, 0x229BA606, 0xA960DC57, 0x397E1845,
+0x7AD825D5, 0x04529A10, 0xB7413ECD, 0x7E8FE4EF, 0x408D321F, 0x41D334D2, 0x3E3DE539, 0x68C77F96,
+0x589D1984, 0xDAFCF2F0, 0xC883C6E7, 0xA3F21A26, 0x77174113, 0x43A1D27B, 0xCCBF8ADB, 0xCE888AF4,
+0xA9D459B1, 0xFD351B78, 0xA7EA59BA, 0x746290CA, 0x7FF04E69, 0xD5E4C718, 0x4E793E84, 0x2288ED81,
+0x69FC6BB4, 0x5AEF958C, 0x0995692C, 0x31194621, 0xB95928F0, 0xDAF39FA4, 0x115B277D, 0x054C1B3D,
+0xCED0D71E, 0x30F27DA1, 0xE905B54E, 0x07487935, 0xD9345DBC, 0xAF4E7C97, 0xD6C78D0C, 0x73C0CBF8,
+0x2FBA8327, 0x703E05EC, 0xD9590703, 0xC05B5F22, 0xC80B2709, 0x47A1ADD7, 0x47056D3B, 0xA02C2510,
+0x7CFA448A, 0x5AA3FFBD, 0x9BC4CC74, 0xF39B8FBC, 0x8697DFFB, 0x04AF7AA3, 0xE3806D5D, 0x9232A7E8,
+0x854B72E4, 0x050519BB, 0x466C9527, 0x748AD44B, 0x0D0A2FDC, 0x6A74A97E, 0xA1B3C5EA, 0x6AB66EFA,
+0xF1302467, 0xED4CB9B6, 0x333D667A, 0x903549AC, 0x7155F28F, 0x93AB3F52, 0x639E222A, 0xF05E21BD,
+0x3283FEC2, 0xD9C8B392, 0x748CE5F3, 0xDD6F3351, 0x83F2B2DE, 0x47FE7BF7, 0xBB5426AE, 0x34BB89C1,
+0x8B68E975, 0xA1731A32, 0xBCC76D43, 0xE4185FF5, 0x89D4F0D7, 0xF4749E02, 0x58C8238B, 0x6A2EF7B1,
+0x702684BE, 0x37E11FBB, 0xBD34509A, 0x5B0ABDBA, 0x23DAA0A1, 0x1FE10A01, 0x31D2E2BF, 0x28E4DC70,
+0xCBCE4AD0, 0x5733651D, 0x7E78A53E, 0x10E4F21D, 0x47EB360C, 0x627D18AD, 0x1D900A59, 0x0FB10F2B,
+0xFD66644A, 0x8CAA8C4B, 0xA4D98B10, 0xCEC86571, 0x64863B56, 0x5D88E0E0, 0x4745922A, 0x0D5BB28B,
+0xE9DD4DF6, 0x4AE3BAEE, 0x6B529542, 0xAB928E15, 0xCC6081C9, 0x66E4F650, 0x10C16D40, 0x229D1E86,
+0x69EA8978, 0x93E0C4BE, 0xD2D3CC55, 0x47548A27, 0x7215C3C8, 0x841D59E0, 0xB1060191, 0x276A75D1,
+0x79D4913F, 0x239A08E6, 0xAAD440AC, 0x111BBAFC, 0x259FFF0B, 0x3E10F276, 0x111EAD9C, 0xE3B555BB,
+0x98CF5E31, 0x59233796, 0x2A8CB703, 0xF2F509E6, 0x05EC46C5, 0x13C7059E, 0xF19BEC8F, 0xF9158C6A,
+0x93E349FB, 0x0B14E34D, 0x3AE32475, 0x746FCA5C, 0xAC42C0A9, 0xA3D94D0D, 0x1EE8AF64, 0x9DF85329,
+0xD8DBB861, 0x79DD3A3D, 0x69211585, 0xA0A4061C, 0x5E679458, 0x2B38CF29, 0xEBAC1B74, 0x839F9A39,
+0x0DBD2627, 0x332B3C75, 0xBECB84C1, 0xEFD21DC2, 0xD0E9AED2, 0xA87EF36B, 0x5545E02D, 0x257C7734,
+0x7E6F4AF4, 0x55822C6B, 0x68658888, 0xC07C74C1, 0x5DE4BA38, 0x17A4C851, 0x14955CEB, 0x99A43AEB,
+0x88140C5A, 0xDC47AB84, 0xF0679961, 0x7310D518, 0xAD75FB5A, 0x418EB118, 0x5128BDB6, 0x83BC1AA4,
+0xBC2769C9, 0x55A44C27, 0xD8B3DEEF, 0xC7CE05C3, 0x3E1FBA4F, 0x884698D7, 0xA85DFACF, 0x385CF73F,
+0x17A23FAF, 0x10FBAFF0, 0xD302F5A2, 0xC8EB341F, 0x80C01C4A, 0xFD26EACA, 0xCA7C3444, 0x7153B159,
+0xC1D13ACC, 0xE95AAD8F, 0x9329A117, 0xF5F39779, 0xC9699E7D, 0x2542F0FE, 0x0D683BB8, 0x95813141,
+0xA58136F4, 0xDEE6BA3F, 0x1F45C91B, 0x6611DCC8, 0xF7CBBEA9, 0x9017E89A, 0x5D8C0198, 0x0CF5AC7C,
+0x045C7F6D, 0xB5434EEE, 0xDF045438, 0x4A2D5A94, 0x821BBDC1, 0x69FD8355, 0x2534CAC3, 0x3BF984FE,
+0x96CE6C3E, 0x93D7A73C, 0xB19FF5DB, 0x1AD2C251, 0xCA6EFD05, 0xA9B2213F, 0x5D9954F1, 0x24486750,
+0xF0AAE090, 0x3E96CAEF, 0x0B24FEF5, 0x35CA9D37, 0x88A5DD39, 0x00C93D23, 0xAB049482, 0xE060F5F8,
+0x567415A4, 0xD9B87E49, 0x171A9051, 0x19263657, 0x7D48E90C, 0xE2C345AC, 0x17CB9331, 0x139CE4E2,
+0x5E091B62, 0xC7D5B547, 0xCB49A10A, 0x15B41728, 0x88F12F85, 0x25EF85FD, 0x23298154, 0x597B6145,
+0x1D1E0D3F, 0x975F69AA, 0x20BD38B3, 0x00F02CC2, 0xE15152A9, 0x6FD3FB98, 0xB0A5549D, 0xD4DD074A,
+0x61C91B16, 0x02D0E146, 0x15C8A910, 0xE1308D61, 0x5EA7BD85, 0x96A8E4B9, 0x1627FE3E, 0xDAE5D530,
+0x3C39D95D, 0x0D08CE17, 0x36E9938F, 0x02B068A7, 0xE36FBE22, 0x6867A6A5, 0x0C5A1BA3, 0xA3179777,
+0xE5E63FA0, 0xEAD1A9A5, 0xE472BF3D, 0x805EF3FA, 0xF4859204, 0x7B5E0895, 0xC1BE3CA2, 0xCAD12291,
+0xDB553D20, 0x72D81A5F, 0x79E4CB85, 0xBB679C11, 0x43AECF95, 0xD87F8474, 0xCC8922B4, 0x6FDE8058,
+0xA89687C7, 0xE794D6EC, 0x269FC35D, 0xCCE5FDF8, 0xEBAABEE5, 0x211B0387, 0xF9B819E0, 0x491E5904,
+0x95688133, 0x0F77F6B1, 0xBB00470D, 0xDEE27F37, 0x09240837, 0x2863C039, 0x8EC3D4E2, 0x5B078668,
+0xE3422DA5, 0x130C5923, 0x5E0A0B0F, 0x3F6090FC, 0x70E2EA9E, 0x19EEB03C, 0xA090948C, 0x7AE6EF09,
+0x941B3ACB, 0x34487D39, 0x53602DF5, 0x69428B46, 0x775687FB, 0xB90B3411, 0x584545CD, 0x0249489F,
+0x00EF5935, 0xD4B99BE9, 0x94247471, 0x742F4F59, 0x3E7BE151, 0x19E5B3AA, 0x04A487B4, 0xF7185E86,
+0x48A40C7B, 0x89737A0B, 0xDE5924E5, 0x8CB6D8A5, 0xD8A69590, 0xED82C74F, 0x8BAAE6FD, 0x8EE809D3,
+0xF573025A, 0xC1CAF74A, 0xE9DA52CA, 0x60CA5E9E, 0x923F9B38, 0x1D462BD6, 0x138E1186, 0xCFEE3037,
+0x0590B5D6, 0xA0CF76E5, 0xCDC8804E, 0xC80F2D6E, 0x2248A8BB, 0x1CEDBC0A, 0xFB9634A4, 0x06B63D5B,
+0x8BB4E3B7, 0x8A127E24, 0xE335BBD9, 0x499CE86B, 0x2E63603F, 0x454AB93D, 0xCF647ECA, 0x26D000E5,
+0x814632F7, 0xCDC5A206, 0x0C67D133, 0x6C556502, 0x68DDF823, 0x71C178DB, 0x49AE555B, 0x1E5CA4FA,
+0x4EF57D9E, 0x0D0B46A5, 0x11F45C8F, 0x90A5583B, 0x3D4178E6, 0xB34FC0E7, 0xA1166173, 0x5FE4D2DA,
+0xF2203CF3, 0xBADC8704, 0xAC36CABF, 0xADB338A6, 0x6707B6FB, 0x04E27FE7, 0xDB35F63C, 0x41EC40D3,
+0x35EF9B6F, 0x27E49162, 0xAD2B7731, 0x5F5BFBD1, 0xF0323017, 0x9E7BC89A, 0xDCF8EC44, 0x0D1CCF9D,
+0x3DCD5B4C, 0x3EA9E6EB, 0xD14FD73F, 0x7AC757AA, 0x1DAEFEBC, 0x7B8824C9, 0x32F7642D, 0x441C7028,
+0xD80EA3FA, 0x993F7DDF, 0x67C98608, 0x5FEAAA06, 0xDEED07AE, 0x2FE7BABA, 0x0054EB0C, 0x4C9C9C59,
+0xFE7A0591, 0xE16E4899, 0x0E96F98C, 0xBFFD7905, 0x4B7EEB6F, 0xACAB7AF1, 0xED94E50D, 0x1D54509C,
+0x1F674DD8, 0x5F15E126, 0x0A325F80, 0x3E69D533, 0x011257BA, 0x293C0372, 0x9EFD9AF2, 0x6AECB865,
+0xA80F8E3F, 0x010B88FB, 0xAFEFDFEC, 0xF2ED6028, 0xB272D292, 0x37872932, 0x8A1EC20D, 0x354401AC,
+0x0C041EA4, 0x8F6AE1C2, 0x129A78CB, 0x2D45420D, 0xDAFDEE06, 0xD823B429, 0xF9731383, 0xF8D59385,
+0x562B3969, 0x85A6EF40, 0xC3F52DC0, 0x18985989, 0x2C1591E0, 0x2DAE78F7, 0xA487D549, 0xC895669F,
+0x753230D1, 0x3C9EDFAA, 0x86689D41, 0xC1B29858, 0xE19352A7, 0x1912FACF, 0xB25F6A64, 0x2C91C5E0,
+0x1D403578, 0xC8C852EE, 0x71D44CC6, 0x39CE6C55, 0xF5C47544, 0x41C024C6, 0x241A2D46, 0xE28BE889,
+0xB63CF7DC, 0xC62E31E0, 0x10FBD915, 0x82FD51A4, 0x8E48B861, 0xDC1C19AB, 0x213131B5, 0x10E30B36,
+0xFB105584, 0xFA9BCAE0, 0x70B357DB, 0x3B83F577, 0xA70A44B0, 0xC011AA80, 0x24CD07A5, 0xC6323958,
+0x1EF050A8, 0xBB2AE6BC, 0x3702C0FB, 0xF6582433, 0xBBC27452, 0xD141B0C2, 0xAB552A21, 0x4CD4F6AE,
+0xB59D3839, 0x0BFE38C8, 0x75AE44B9, 0x6AA6E59C, 0xFF4A8412, 0xB0826A92, 0xEAB0795E, 0xF26F7055,
+0xA255FA73, 0xDB844ECD, 0x29BB7F22, 0x7E935EC4, 0xC8B9D0EA, 0x66DCDF9C, 0x44BBF3D0, 0x7A1939AD,
+0x2A1FD957, 0x66CB9359, 0x6B61C7BA, 0xEEFCF3B1, 0xC8ECBB17, 0x4CA033E2, 0x51B63A32, 0x88BB1033,
+0x76FC08D9, 0xDB69BA1A, 0xDAE83A7A, 0x5F82F964, 0xBF04AC4C, 0x152764AE, 0xB53201A7, 0xF16ECF46,
+0xE7F939A0, 0x47E6426E, 0xE876FEDD, 0xCA64FDCB, 0x8765EFA7, 0x729B2D40, 0x01A01B34, 0x8E4499B5,
+0xC88A3EF3, 0xC65A8AEB, 0xE8E88969, 0xB402F3C5, 0x3B9C0AE8, 0x45CEAFBC, 0x4514B544, 0x5FA3A78C,
+0x01048AA9, 0x4FB4DA8E, 0xCF931DD7, 0x5500BD51, 0x2899118B, 0x5EC88DDB, 0x2E82D1D6, 0x9F7E3616,
+0x894F3C3C, 0xA645432A, 0x10524BCC, 0x44428F4E, 0x135CE8AF, 0xB4CAFB34, 0xFA36DF76, 0x7E9F8B0D,
+0x43E44E05, 0xD4154CE2, 0xF928A5DE, 0x950FB59B, 0xA62DE487, 0x7C0D5C3E, 0x00D414E4, 0x1061282C,
+0x2C78A81B, 0x8FF2F77C, 0x961FE3B8, 0x37A4E1AC, 0x1A4D425C, 0x9A401B76, 0xA9334873, 0x7D0EB328,
+0xBC0DD9E5, 0x5D0C1D9F, 0x86DF4418, 0xF2DDE687, 0x9B485811, 0x89DCF1C3, 0xD2AD9097, 0x56996E31,
+0xE095CAC5, 0xCE830548, 0x0A53E857, 0x2A302BA6, 0xAF290B69, 0x19F7C7D9, 0xEB50ECCF, 0x044F8232,
+0x85BC41DE, 0x6E230145, 0x54172E75, 0xCE84C8DE, 0xFB7E1A5C, 0x0CE7F9E9, 0xF2E2D53C, 0xDA3F7564,
+0xACA72FC8, 0x58AFC64A, 0x38EE67C9, 0xE692ED59, 0xFFBB2C0B, 0xEBA3480E, 0x741006EF, 0x11017AA3,
+0x46B9100B, 0xE6F6A5BC, 0x6645DA2E, 0x031333D8, 0x61FBBCBA, 0xABA620D9, 0x035A7E97, 0xDA0EA62E,
+0x82ABF1A5, 0x1978663C, 0xAD692373, 0x836F9313, 0x2AF3CF42, 0x5C1529C0, 0x7F1BC452, 0x4F695A09,
+0x08F47933, 0xD5AC9A15, 0xBA2FF443, 0x095929DF, 0xDCFE2C8A, 0xF278EFF7, 0xEFC02BEA, 0x3F4F5334,
+0x3A09C318, 0x5EC4290B, 0x5E985869, 0x0955310C, 0x2851C9C3, 0x8D30A976, 0xD5096321, 0x0245BD89,
+0x534DECAF, 0x9C228C46, 0xEB6008D1, 0x6B1C291B, 0xAA861186, 0xDA101355, 0xE41FF0F6, 0x0D5FC0AC,
+0xE2763A0C, 0x2E07D166, 0xA8281837, 0xA9C4B514, 0x7D12A45E, 0x68B8BE4A, 0x4281AC06, 0x122D517F,
+0xC8AFDE69, 0x117F7A9A, 0xB53AC279, 0x174FFC91, 0xF6605790, 0x5DF93460, 0x5B1ACC82, 0xA5742490,
+0x1D18A655, 0x513A8579, 0x57AF0B0D, 0x5600310B, 0x998B036A, 0xA50E7CC0, 0x1FEE9AB4, 0x700FCF89,
+0xC8C9C582, 0xE0878A1E, 0x5CBD10F0, 0xCCB9831A, 0x8DF913CA, 0x6942647B, 0xBD195F1E, 0x5F2885D8,
+0xDD109C38, 0xF0E56DDE, 0x79FCFC00, 0x1E309A9C, 0xF814DBD4, 0xCA739BAF, 0xB79B9B05, 0xF61C096A,
+0x17F24B18, 0xA1499C26, 0xD9781DC9, 0x395F0DFD, 0x0C243886, 0xD6B741A9, 0x71E1394B, 0xACFCD89A,
+0xBFF3E6FB, 0x18F68B20, 0x766410DE, 0xCD521A95, 0x904A7476, 0x9488B196, 0x685ED84C, 0x862C775B,
+0x1B87AF76, 0xFD0B3571, 0x853D3CFD, 0x34D6833B, 0xF9356C36, 0x5FFF7723, 0x4E8016EB, 0x2AAD70DA,
+0x2B21DAE9, 0x973CBC84, 0x3AE3CDA8, 0x31F5B26C, 0xE1CD0599, 0x3CE18D7B, 0x6EB6163B, 0x5537D1FF,
+0x0C245ACB, 0xC880CCC9, 0x6E563E2C, 0x9538B272, 0x3437D833, 0x3006E873, 0xEBEE828C, 0x17845DEF,
+0x523D5B89, 0x8CD73BAE, 0x61467CE7, 0x9E397E4C, 0x0FCE02F9, 0xD5C857AB, 0xC48599BC, 0xE97BD64A,
+0x4D199EE8, 0x26E29DBD, 0xC11F6B62, 0xA330785F, 0xD07A6334, 0x724D2A98, 0xC15FDC86, 0x31BD2408,
+0xED01A43A, 0xBD6347E0, 0xA4D6B448, 0x628E5182, 0x7DC87893, 0x7A842E7D, 0x97B7CB13, 0x3083E5E3,
+0xB7E9E372, 0x4910570D, 0x2CDF89E7, 0x72260947, 0x1D0154E1, 0x4EA8B6B2, 0x815D0A56, 0x5A221C5C,
+0x69E191DB, 0x8CD76EA1, 0x02487EA4, 0xA55A4BC2, 0x2EC9F1D3, 0x1E36AA11, 0xB3026AE8, 0x98295736,
+0x0D95214C, 0x73F70BB0, 0xA6AA496F, 0xD23C6A91, 0xB3CEC7C5, 0x73C1A95F, 0xA477E6BA, 0xB616A4D7,
+0x83964707, 0xB019EE36, 0x99F2D581, 0xA0CFDE8B, 0x137CAEA9, 0xCC3EFE92, 0xE981D800, 0x3281117A,
+0xE3E6F3C0, 0x11B5E835, 0xD71DC20A, 0x4933E151, 0x910A9BEB, 0xB08A226D, 0x0C6D868C, 0x931BC662,
+0xDA18BBD7, 0x217520EC, 0xA60C6783, 0x26323307, 0x5AC41D45, 0xF4AC2363, 0x06E2E9F8, 0xD89CB954,
+0x30A8D996, 0xA5EE71B0, 0xCBA57F6F, 0x46F78F9B, 0x0ECAC3A4, 0x5F85AB25, 0xF7CF0E45, 0xE4568188,
+0xA587E22F, 0xD773CC18, 0x4A86093B, 0xF09D8FF7, 0xBA3E8111, 0x62377922, 0x19F37002, 0xDDA8C290,
+0x16D58F19, 0xE1C44548, 0x5898DC30, 0x053CE11D, 0x75E06372, 0x3C4BE82B, 0xEF7B4A63, 0x82738620,
+0x9E3F3EA3, 0x94CCF09E, 0x3A6F05C2, 0x747D1994, 0x265DDDCC, 0x03D1B1F9, 0xC1576B01, 0xCC96CCF8,
+0x65519F5E, 0xCFD2502D, 0xA89F8DA8, 0x53C4CDE6, 0x532130A8, 0xDA06A07B, 0xBC82C4A6, 0xAF2AB639,
+0xD1897514, 0xF8137F6F, 0xED5E0D4B, 0xC357DD0F, 0x808AA750, 0xA1B86BAE, 0x23381E04, 0x5EFCD1D2,
+0xBFCF33E7, 0x8DA44647, 0x5651016F, 0xD28A0D60, 0xA90E42B8, 0x4DCC5CEA, 0x98A02CE8, 0x68898C10,
+0xCAB17E5C, 0xBE666135, 0x124B1792, 0x9920D148, 0x6BC53877, 0xCA794669, 0xF6EE654D, 0x1877B8E9,
+0xDF07387D, 0x6AB56065, 0x81C6E78C, 0xA839BC35, 0xA7085323, 0xA757B551, 0x60FDEF39, 0xE4842267,
+0x02A49D4A, 0x821D99A3, 0xDC45FDC8, 0xA9BDE163, 0xE3487850, 0x29B5B834, 0x07A36831, 0xAC9EAB52,
+0xCF2FE5AA, 0x5472DFC7, 0x9A3FC130, 0x3E1A22BF, 0xE1A5873A, 0x35E1318D, 0xBD41CA97, 0x720D3D3F,
+0xD1182587, 0xBC8423A0, 0xAA661EA7, 0xA2B88012, 0x5595F087, 0x8971282A, 0x417B442B, 0x6F4EC46C,
+0x19C6CAC8, 0xF59C43FC, 0xF1F73AE3, 0x96236722, 0x3EE66099, 0x564F3FFD, 0x4E870161, 0x2AC8E536,
+0xC27AA60F, 0x3A2FF128, 0xEDC3CD17, 0xAF5C7A60, 0xD40127C9, 0x8480370E, 0x8B214948, 0xF5315DF4,
+0x89944298, 0x934AA41A, 0x23FE0276, 0x414D9252, 0x8F78F46E, 0x2569918B, 0xF656C00D, 0xA01E4E13,
+0xAD24E6E8, 0xFB86447C, 0xC4999F56, 0x387B0710, 0x57358A95, 0x290A9174, 0x042440D8, 0x21B5D1CC,
+0xA6BDEC2C, 0x3083BEB6, 0x655B825F, 0xE54D836B, 0x8BE1A40F, 0xBA269216, 0x67304804, 0x601F4F76,
+0xF576C237, 0xAA79599E, 0x838D9142, 0xEDA99E85, 0xC43E1F80, 0x108914D0, 0xCEEAD6C4, 0x1F3A658C,
+0xA7D7FE5E, 0x6AD837B5, 0x2E9E8286, 0xBF66814B, 0x09D0AF85, 0xAB7823EF, 0xDE5B38C7, 0x6810A608,
+0x1161B488, 0xB5053E5A, 0x782EFDE0, 0x3453A68B, 0x963D64DC, 0x6203A078, 0xEEFCA4C7, 0x631B9F0C,
+0x921FDD91, 0x81019397, 0x42B0CB73, 0xE4AE7EC1, 0xBEAF1FDF, 0xC12657FB, 0x27A5D62D, 0xC1F57367,
+0x1023A06E, 0x27174E26, 0xED186314, 0x5EAB3D00, 0xB59BEBB2, 0x1EDB7014, 0x094B2515, 0x38F9ADD3,
+0x7109D1A4, 0x41C858F9, 0x516E2CB6, 0x60ECDF1F, 0xDB5B9150, 0x5585AC80, 0xD3896615, 0xF86B1821,
+0xD5579DCE, 0x862388DF, 0xABAA5BFD, 0x0AC810AB, 0xD7BB2BD2, 0x5EBCEC52, 0xB0736E68, 0x5B063E76,
+0x1782AE94, 0xCCDECF2F, 0x29DD639D, 0x3FCDCD30, 0x84C8A4EE, 0x1B0BB9F4, 0x4F0AC271, 0xB1C6BDDA,
+0xF1607CDC, 0x4DBABDD4, 0x80D6BBE6, 0xF41E9366, 0xA135C385, 0x1958481C, 0x45968092, 0xD4891D1B,
+0xE766F732, 0x63449C34, 0x6C629169, 0x7986545D, 0x193F0D78, 0x8F8B42C4, 0x218A1A87, 0x99BB7E36,
+0xE1D527D5, 0x1457E103, 0xE2D24F9B, 0xC3C07A5C, 0x95C496E7, 0xD7A6BA66, 0x6303343B, 0x5F160517,
+0x2CF1E43E, 0x4840107C, 0xA0BA7439, 0x6DDF3C50, 0xFAFF3355, 0x1CAF86F0, 0x74C006B6, 0xDD916C2C,
+0x2162FA2E, 0x6515DD70, 0x0FA16C32, 0x322878E5, 0xA738F272, 0xF7F5BC34, 0x829B6C52, 0x4CEB4822,
+0xB4D6700A, 0x22B0C2A3, 0x56D1D0B6, 0x0B37BE4F, 0xDEB7ED1C, 0x3E609011, 0x7906D9AC, 0x24D34C0C,
+0x4E7BF365, 0x33ECF689, 0xFE4CFD84, 0x153EBFEA, 0xEE511CF7, 0xE0E9326F, 0x6C458B28, 0xDC7F00D6,
+0xC25BD14B, 0x2143DD06, 0xAC86993C, 0x04735D21, 0x574CC875, 0x4D5B942B, 0x03AA6ED6, 0xFBCE71C2,
+0x5AEF0AA9, 0x7DDBB4F5, 0xC879F2F3, 0x887560EC, 0x1E55A155, 0x9A4F5E5C, 0x356EBCE6, 0x60562F8F,
+0xF41B4C27, 0x3268EBF5, 0x31D8CBB5, 0x26C024F5, 0x25784BBD, 0x7AEDBCDD, 0x6F7970FD, 0x99A63285,
+0x9718C4D7, 0x83239AEA, 0xED020D8D, 0x8801CE87, 0xDD84450C, 0xC4E5ED28, 0xCB0A0158, 0x7922981F,
+0xFBE2913D, 0x2877D654, 0x17EEA162, 0xBC3CC88F, 0x18306EBE, 0xA67C48A7, 0x1DEAB146, 0x1BFE6AD8,
+0x25813161, 0x91AD701A, 0x15240820, 0x3F3B0FD3, 0xD2DCD8AE, 0x301BB1C2, 0xBB1135BB, 0xF609F89B,
+0x2EB7A9C5, 0xABA6DF46, 0x2998A822, 0x5D1CA697, 0xC34EBBD9, 0x94533AC7, 0x2B246F3B, 0x4E9404A7,
+0x56256EB4, 0x75B4C02F, 0x91AAF988, 0xD1E291CF, 0xAA56D6C6, 0x90E869A3, 0x1F1AC03A, 0x619A60F0,
+0x062DC365, 0x83971A75, 0xAAB72DC2, 0x901E6C97, 0x4448516C, 0x23A6BD50, 0x70949BE6, 0x2ACF2586,
+0x0B775F96, 0x21D7C5CC, 0x73364F15, 0x43D25EE7, 0x90E847D3, 0x52F7CF77, 0xC7929A97, 0xAFDC9E74,
+0xA1F0FE1F, 0x51798994, 0x4BF3977B, 0x993BA0BF, 0x98E1CB5F, 0x336362C1, 0xA109F1A8, 0xEABD45FA,
+0x1BD32EEE, 0x05D06FDA, 0x163B9FD7, 0x109626DC, 0x8BDBEE6C, 0xC8AE2549, 0xD55E728E, 0x81F10C50,
+0x131D24DE, 0x05B0C8DE, 0x4230E740, 0xF01F70D4, 0x9264DF25, 0xC30E719F, 0xAD24A900, 0x4096F674,
+0xD04958DF, 0xE9D5ECEF, 0x848E9A56, 0x69A03749, 0x075EC432, 0x947DFFF7, 0x54ED7ABF, 0x9DFBFDB7,
+0x736D8B8D, 0x412DC4E8, 0xD77F815A, 0x627F8046, 0x82AB4F7E, 0xD6702589, 0x51822286, 0x50E5FE91,
+0x44F27292, 0xD0E21C3A, 0xBCC64A75, 0x04888208, 0x6F820A18, 0x009C21E4, 0x2BE0DDE8, 0xC9056874,
+0xA9181962, 0xF51FBF8A, 0x84501216, 0x3474B79F, 0x03DE44DE, 0x66F26BF4, 0xD56E6210, 0xB29980C4,
+0x79DD29AA, 0xF714E554, 0x2CA00BA2, 0xB8D6FB3D, 0x7A1F6160, 0x59283C98, 0xC7A17C1F, 0xD9A42E65,
+0x94C56D5D, 0xE470CDED, 0xE749638A, 0x91E77953, 0x489EAF1F, 0xF276AE33, 0x8853963E, 0xAD7D9714,
+0xA1AA4E8A, 0x3AFAEAD4, 0xD1D828B1, 0x271B6270, 0xD1FD2822, 0xD04CD1E3, 0x7B959D1F, 0xB525C4CF,
+0x6875BCFF, 0x7A6B9DFB, 0x0AA9673E, 0xC3975B92, 0x13A53856, 0xE7749240, 0x34B76603, 0x55AC66F6,
+0x91925F92, 0xEDF20E6C, 0xEC400A82, 0x862B4C20, 0xB14BF98A, 0xC6A238CD, 0x595488D0, 0xB1AE413F,
+0xE1E1208A, 0x4BF37430, 0x61770680, 0xF440A4B0, 0x85357717, 0x3FF22E41, 0x22112ABF, 0x074462C4,
+0x3E2EBCF3, 0xDBF854FC, 0x21ED59A5, 0x61014AD9, 0x5AD07B5D, 0x9E9103C2, 0x3FFC0FAA, 0x65C64D82,
+0x04DE2D8D, 0x9219D8F8, 0xC25E558A, 0x9F2BDD57, 0x99EC033A, 0x5F32FC01, 0x09D8EF24, 0x8EAF9458,
+0xC8EB59C7, 0x594A25F8, 0xBFA83A0F, 0xBC2E5D74, 0xA0D49C31, 0x098D74A8, 0x3F6AB1FC, 0x13AA4950,
+0xBEBAB5C6, 0xD4028F26, 0x4B404B2D, 0xBCEB7284, 0x94213B28, 0xEB2EA724, 0x230B9649, 0xD25D453C,
+0x278E2DBC, 0xB698A0FB, 0xD5D4C6C9, 0xB83B718E, 0x8244A8FD, 0xD6FB05AE, 0xACE61C0D, 0x4C85D2B4,
+0x37B11347, 0xBDA93B23, 0x73210899, 0x049025D8, 0xB07652A5, 0xD4BB03B9, 0x125E8D3F, 0x86E4BE2C,
+0x430A2D09, 0xB7A6B746, 0x942C88B4, 0xC84E2283, 0x5E88AD99, 0x19CC7E58, 0x82A72734, 0x0444D31C,
+0xABE1D1C0, 0xAE874874, 0xC21CF708, 0x9088E53C, 0xF9F3BA7C, 0x5984ABAE, 0xED1C50A8, 0x83D167B8,
+0x17FBF4CB, 0xFD8B8E5B, 0xA601A450, 0x09210028, 0xDBB09AC0, 0x3CFB0DDA, 0x9DBC9700, 0x9B2EF0C8,
+0x2D16FB1D, 0xD9F2373B, 0x3656C2F7, 0x9512784B, 0x224887A9, 0xA222E9E5, 0x6A713969, 0xDCA4F593,
+0xB525E299, 0xD9A3C25E, 0x3F315486, 0x514EE52D, 0x995E2C44, 0xDDF7D879, 0xBBA05866, 0x09373432,
+0xA352296B, 0x4073B7D5, 0x2DA3380A, 0x92B1D2F1, 0x401B533C, 0x8DA476AB, 0x02EBB72E, 0x83F2D49B,
+0xA979F7F1, 0x634D9F1A, 0x8779DB3B, 0xA8C2728F, 0xAFC7FAEA, 0xD916072F, 0xC50A0516, 0xBD762B1B,
+0xA1D832A8, 0x513D88E9, 0x54E5122A, 0x5CFE1BD7, 0x6A5F678F, 0xAD409889, 0xCB6409FF, 0x4E47478D,
+0x6F1F5D97, 0x6F9181F6, 0x167FD760, 0x69F3D961, 0x5CC62F0C, 0xE6EBDA48, 0xA73EDD6F, 0xD771EAE9,
+0x98993616, 0x54531D15, 0xE6BAFE23, 0xCE0C4FE0, 0x7665EDD3, 0xCA0E2864, 0x0E00C7AA, 0xFB9589CA,
+0x3E45BC73, 0x9DD3D3B2, 0xF4858555, 0x6864D444, 0x26B320E5, 0xFAA0D75B, 0x6AF18A0B, 0x6F753473,
+0xD81FE314, 0x2C251AE0, 0x8A48160C, 0x0669D485, 0x533706F4, 0x46A9B0D2, 0x07E960A3, 0x18B91BDF,
+0xAA7C3784, 0x6067875B, 0xC2F7AD4F, 0x77281412, 0xAE6E1984, 0x2F46F53E, 0x74833DBE, 0xD7C4F57F,
+0xAC0224F3, 0x402CB673, 0xF2F33187, 0x43C63CD5, 0x63370C5A, 0x28EAA0B3, 0x15DC0827, 0xF8C13195,
+0xCA7A2301, 0xDA580E64, 0xBC992A21, 0x71FFF777, 0xC55C854E, 0x8D67C095, 0x0C79DCCC, 0x01F820AC,
+0x730966FA, 0x7CB7E3A1, 0x05716CA1, 0x05EA7146, 0x4B21BB4C, 0x57A3A46C, 0xA380C973, 0x0DFFF6E9,
+0x18EE3F11, 0xD8ABDCDF, 0x46E2E144, 0x8F88A329, 0x27C4D6F0, 0xDD4DB1AD, 0x560C9C46, 0xBF1EA842,
+0x68CD1864, 0x29AEE044, 0xCFFE9445, 0x3184F012, 0xB63EF1EF, 0x783E1258, 0xB6E3CE5E, 0x036759B8,
+0x28843EB9, 0x5B169A32, 0xB5FAAC49, 0x72161C31, 0x28EF56DB, 0x913BEC87, 0xDC38B2AA, 0x251D2C95,
+0x9AB65980, 0x5C567F15, 0x7B64B3B0, 0xFDE314E3, 0x3367A8E2, 0xE8087853, 0x05EEF21A, 0xA052A1C3,
+0x654C635A, 0x1868E5E2, 0x997FFC2D, 0xB09B7E98, 0xB3062859, 0xBC1E9BDD, 0xC2A1F4AF, 0x811BBDC2,
+0x174B86DB, 0x9979B634, 0x0F80A1EF, 0xA32CA185, 0x3E7149BE, 0x6AC8A06F, 0x3FB5DDAF, 0x3B7837F2,
+0xD1737C8B, 0xF8A72FA2, 0x2C2635FF, 0x0D5BD18E, 0x4780FD30, 0x8D29F1DE, 0x917DF894, 0xE52C9199,
+0xBFDB3EEC, 0x50E8FFB4, 0xFEF9A1BE, 0x82EFAFD1, 0xEA6694C9, 0x933E880D, 0x46CB6648, 0x6644D5A3,
+0xC8900988, 0xAACC23AB, 0xC8A93A92, 0x18FCB781, 0xD1F0018B, 0xF7E864E6, 0x7F5A7EB3, 0x79214E31,
+0x9682B826, 0xABFA04D4, 0x1DF77F92, 0x907FED6B, 0xD6840AA9, 0x67BAE9BA, 0x4D779B6C, 0xA3CA179C,
+0x9C5B2D8E, 0x1A2CAF1A, 0x0CB80652, 0x981100F0, 0x5C05DAEC, 0xC9E0ABD1, 0x640E910A, 0x3963AB5C,
+0xF10B1CC1, 0xA4959874, 0x48373922, 0x6435B742, 0xF3D4862D, 0xABF551F0, 0x03690B59, 0xE54BEBC5,
+0x9FC92B57, 0x8748BE97, 0x3F29F60D, 0xB0005606, 0x807B1CE8, 0x5307F987, 0x62D2DF3C, 0xC358BE3F,
+0xEB5C5520, 0x3F436B62, 0x71A6E46D, 0x0F335ABF, 0x444AFCA8, 0x89E2AADA, 0x87633F7B, 0xEC095AB1,
+0x25637515, 0xA75EE080, 0xD1011787, 0x07559196, 0x23705BD0, 0xFAF47373, 0x306EA9FB, 0x378D28C7,
+0x4B94695E, 0x44B153B2, 0xF5BD9D87, 0x00530E86, 0x2A1EB708, 0xA8D6B4E1, 0x5DDCA1B6, 0x62390240,
+0x455F2DFC, 0xE4A0E4DA, 0xBDAB0312, 0xB60DE28D, 0x101CEFC2, 0xBCA1132C, 0x0EC8B7CE, 0x90C50439,
+0x9031D7AA, 0x3124E69A, 0x726D201E, 0xA2E941F4, 0x0EC45CD1, 0x14EC8C41, 0xAFF54C66, 0x8D78C343,
+0xA31FB828, 0x4D3E55C0, 0x58C3E3E1, 0xB77CB4C3, 0x0CCA5EB6, 0xE8E9A34E, 0x7FCB63D9, 0x3147C71A,
+0x8DB3205C, 0xDBCACBBF, 0x16530793, 0xA6239263, 0xD7EC7506, 0x8BB600A8, 0xE9C6E150, 0x0B2D5E1F,
+0xBBF82859, 0x7DEF70FF, 0x09D7FAAA, 0x953F2DD7, 0xF0FC710E, 0x630C6807, 0xDC24EDC1, 0x606AE8B7,
+0x073544A7, 0xD9E6FECD, 0x139DA3D8, 0x4182A763, 0x88EDA595, 0x666EBEC4, 0x1E36D7F2, 0x4A5BADDC,
+0x31FCB68B, 0x2015E9B8, 0x7ADF8DF7, 0xE8ABB96F, 0xCCC1F920, 0xE3636221, 0x09987F74, 0x52A542D7,
+0x388732CE, 0x3D554B67, 0x7414DF5B, 0xDC5D7BF8, 0xB7EDB499, 0xEAAD6511, 0x1AF6F596, 0x9EA079E3,
+0x6220072E, 0x9E5BCB2D, 0xBE976247, 0x2304F0B1, 0x9476CDBA, 0xDC708109, 0x97DCDD7C, 0x83FCDE68,
+0x00E24B6B, 0x539B70BC, 0xFD9F786A, 0xADF4931A, 0x5B1705E6, 0xEB4FEAB2, 0x5BB9576F, 0x9E1F5591,
+0x41F4961F, 0xAA2ED7EC, 0x84A7282E, 0x37FD9AF2, 0xFCEDBDC3, 0x1ED640FE, 0x82B16A9A, 0x3D3B6835,
+0x43A3A708, 0x84E423AA, 0x14FC7706, 0xA6DCF024, 0xA852AAB5, 0x65E059CD, 0x2051A5B0, 0x4F9C0914,
+0xB272345D, 0x39FE0BBF, 0x6C85C71C, 0x6C73CC08, 0xD371EB98, 0x22F050E0, 0x01205ACB, 0x02C2B8FB,
+0x4AC82D13, 0x23E076CE, 0x628E6EEA, 0x00C6FF81, 0xF77E9951, 0x5C874674, 0xF130FC4A, 0x84C65D86,
+0x8A3C2896, 0x78236D9F, 0xB104B35A, 0x248FE9B7, 0x7ED9B82F, 0xD95F06D7, 0xC1D5D383, 0x1C8E422D,
+0xD5E73F2E, 0x5003F0D4, 0xB5317382, 0xD8261070, 0x704F4999, 0x3509A734, 0x70A48705, 0x3861CA10,
+0x934D4F1A, 0x2ABE75FC, 0xC3EB62CF, 0xBC0DBE0A, 0xAD50449F, 0x4B73E0E2, 0x296AF528, 0xA40C5251,
+0xBFD6439F, 0x0329B191, 0xC20B364D, 0x2A05B5B1, 0x9191BD32, 0x94B3B25E, 0x8E00BF0B, 0x1526856C,
+0x090033E3, 0x07B6AD6D, 0x0087EFB2, 0x3E9F1C1C, 0x2C0FA3B3, 0xF945E13B, 0x6A120B24, 0x15CD3AB0,
+0x3A71A968, 0x6E3816C5, 0x96A73EC7, 0x927DA68D, 0xDD5527ED, 0x0F262BE4, 0x44C6EBA6, 0x75060DB7,
+0x959F8F6F, 0x03D576A7, 0x7E5245B6, 0x2ED4CC6C, 0xCC6FBDD7, 0xCB5C841D, 0x0A05E417, 0xDC6E714A,
+0xC1E4ED32, 0xE36753DB, 0x8FA41499, 0xBFD5AFD0, 0x6D570030, 0xFF4FCC92, 0x3E4E9100, 0x2FFEE55A,
+0xE715EDA7, 0xB3968AEE, 0x32333CC9, 0x041C7725, 0x54D53497, 0xD14BEB71, 0x13DB6AC9, 0xE1517AE7,
+0x74337094, 0xEFAB3BEC, 0x0ACA155D, 0x4F11631D, 0xC60ECE8F, 0xE797CD53, 0x8244C0E4, 0x74545E18,
+0x7B81FC67, 0x06590B01, 0x4066C7BA, 0x5FFC36B6, 0xB2117E30, 0x2EC8BC45, 0x613866E0, 0x0BCD4E3C,
+0x7EF32966, 0x78154302, 0x78F55AAE, 0xCC58F20B, 0xFB5422C9, 0xDE8C2F19, 0x80FEED38, 0xC5DCCEAE,
+0x4B1ED055, 0xA2572821, 0x759CFD0C, 0x7F997C01, 0xCA262D01, 0x59B0EFF1, 0x80503178, 0x223B023B,
+0xFF102F39, 0xAE87349B, 0x71EFF1D1, 0xB3A6621B, 0xD0072E7A, 0xCA0BD8AD, 0x03859968, 0x681CD574,
+0xD7B989D0, 0xF27815A5, 0x79CD664C, 0xCDD20E74, 0x1DB706FA, 0xE303D88C, 0xA1549CE0, 0xC3AE20C6,
+0x73BA3AEA, 0x2CD4F246, 0x22AA6341, 0xE902B307, 0x819BA7D3, 0x39D1B0DD, 0xC8FDBCD9, 0x6BF46CC6,
+0x26548ACE, 0x73B4AEAD, 0x550B71EC, 0xCBBA3330, 0xD597E961, 0xFCC7A453, 0x34FA66FB, 0xFA45CCBE,
+0x7F4E2435, 0xAFE613F1, 0x04A250EF, 0xC12D30EE, 0x4630450D, 0xD8B0BC01, 0x22D8C004, 0xDFEBAE77,
+0xC947016A, 0xA702A96F, 0x1727D2A7, 0x0E8503BA, 0xFFE82E4E, 0x6265B45F, 0x3C84B972, 0xB00563E4,
+0x3E2DD33C, 0xE022F7EB, 0xE85E2A9B, 0xA3531EFD, 0xA6F451F1, 0x5598706F, 0x741B96A8, 0x8EC9CD4E,
+0xE807428D, 0xCEEAF262, 0xE9146491, 0x8DE1F40B, 0x35EC308A, 0x488B8AB4, 0x369CC00A, 0xED217AB9,
+0x4F09F415, 0xEA74654E, 0x1B0EEB0C, 0x1CEBB3E7, 0xDDD9EAB7, 0x983AED61, 0xDDD6860E, 0x49AEB559,
+0x02AB54F7, 0x3F297BC3, 0xF91F4F28, 0xE3654014, 0x1F559DDD, 0xA22429EE, 0x8ACB7891, 0x5ABCA0A1,
+0x35B3A54A, 0x9A665772, 0x47763281, 0xD60F6F46, 0x5C09F267, 0x1D395872, 0x14FF5624, 0xE5ADDB46,
+0x3B360E2A, 0xB6226FDF, 0xC101B86C, 0x54A4532A, 0x93ABBDFD, 0xB852BD12, 0x129A5002, 0x9C6CB6FA,
+0xC31B037D, 0xFB5F9670, 0x3802C79A, 0x1BBE0E2A, 0xE5B7F874, 0x6E57B6BF, 0xE0C72982, 0xA9443D5D,
+0xB1DA196C, 0x3B146F55, 0xF54A5855, 0x3A4E8D6C, 0xE9B32205, 0xBC9DA1D1, 0x53093EDD, 0xA158718D,
+0x91E34FE6, 0xC435CDB5, 0xD3363D05, 0x8BC5EDEA, 0x628747DF, 0xD09CD76C, 0xE9F1EEC8, 0xED4B82DA,
+0xAD7B5083, 0xCC7BDBB2, 0x5DA33CF9, 0xA9594735, 0x4B6305C3, 0x2C2EB65F, 0xC65A82A5, 0x35A58751,
+0xD58BC1AF, 0xBDA05DD3, 0xD3BF7436, 0x06C7E51F, 0xE216FB65, 0xD73015F7, 0x237E71EB, 0x914DCB68,
+0xB61A238D, 0x1F04AE1E, 0xA9C737E4, 0x204F7E68, 0x39C44996, 0xBEB3B69C, 0x47AE8262, 0xCEA60892,
+0x14731FF7, 0xE6F050DD, 0x4EAA68B0, 0x653470DC, 0x14C8BE4D, 0x21B6030C, 0xBDE6FD3C, 0x0541765B,
+0xA73E59C7, 0xEAD07C14, 0xB99AC885, 0xF39446F7, 0x59EEB547, 0x1BE5BC3D, 0x4132465C, 0x007C4AD1,
+0x5EA16295, 0x8284E9EA, 0xF82D0BA7, 0x0A87E020, 0xDF911195, 0x4F752183, 0xA4157B7E, 0x1024129A,
+0x9F3482EF, 0x474154FB, 0x36BF3621, 0x9CC2FD88, 0x52D087C8, 0xAB8CD640, 0xEC68DCD8, 0x6AC36888,
+0x587A27DD, 0x1A62C0D0, 0x484D5014, 0xAA57F909, 0x96E77A19, 0xC9722A45, 0xBE22335B, 0xA3B1A7F5,
+0xD441919E, 0xC511D8AF, 0xF677DA64, 0x369BF359, 0x7FBDAC52, 0x5F3861E6, 0xBBCD6AA9, 0x5B5F0F40,
+0x2BB82F14, 0xB2131C88, 0xF577CE12, 0xB6D4E259, 0xBD9F38C3, 0xC722A813, 0x40AD813B, 0x4B381809,
+0xECD92E9D, 0x245D1518, 0x55D1BB3D, 0x9C277083, 0x85F8551F, 0x00E94FF7, 0x60C77C3C, 0x40EF10F9,
+0x83722EF4, 0x088C811F, 0xDDFB099D, 0x931A265B, 0xFA64A080, 0xE9C22C04, 0x1A6BEDD4, 0x85A80CA9,
+0x5B0BDA0B, 0x3387666F, 0x07FDA57F, 0xBF1C5EC9, 0x4274C338, 0x7C639502, 0x31AB1418, 0xBA5EAE85,
+0x4EA3AFF3, 0x3F3BB836, 0x8598DDAA, 0x3ADF0464, 0x307E185C, 0x194596BC, 0x4A4DF7C2, 0x7B8CC1EF,
+0xA16E1EFB, 0x599C3786, 0xF20879EE, 0x6FD5EC9D, 0xF586441C, 0x04858B21, 0x70CC2EBE, 0xADE98CE0,
+0x1DF4263B, 0x9BFE3B01, 0x35CECD03, 0xD19DF6B0, 0x5E6C099D, 0xE86E51D2, 0x46A194FD, 0x4BF64456,
+0x4DCD8831, 0x4377AA94, 0x2CE2BD72, 0xC90C5897, 0x47F95EE0, 0xF2941143, 0xF6654C2C, 0x49CC7D45,
+0xB498FCBE, 0x791713ED, 0x3CA912AB, 0x2F103269, 0x63FD081C, 0xD8D7D1D7, 0x3CBF87D9, 0xCE5A8D11,
+0xB0318AF3, 0x0B2D17EE, 0xF0E40B6F, 0xFB2589FE, 0x3A8B2F25, 0x6994ECCE, 0x72F83A67, 0x0A834B3C,
+0x809C6FFC, 0x89F0A30F, 0x6F4C9779, 0xE386E0E8, 0x24509CB8, 0x10E678A4, 0x8D794811, 0xA3EC755E,
+0x717B6AAB, 0x4BC9C9D4, 0x9BF45C0B, 0xD7352482, 0xED5FC4A3, 0x363FEB0B, 0x31602E25, 0xF329D0EE,
+0x1EE5314F, 0x47CBED59, 0x99F379E0, 0x1DD3B481, 0x7CBF0AD0, 0xCA7FADAA, 0xB2B82F5B, 0xC8A3CE2E,
+0x0798C9DE, 0x6AC95338, 0x1272056F, 0x5C100328, 0x7854D34C, 0x5D65B503, 0x4D3A2F57, 0x994922FB,
+0x59D738B6, 0x9D15BD4F, 0x558508E2, 0x0F72E4D7, 0xC2C91EC2, 0x3B7BB706, 0x0860354C, 0xBE0B0685,
+0x3600ED18, 0x7BA7B7D7, 0x3C65176C, 0x27E7EC7F, 0x92BC848A, 0x16D9E8F2, 0x90E4E83E, 0xB9C6C13D,
+0xA01A401F, 0xC354F431, 0xA64FA608, 0xDF48CD1F, 0xFD2DED63, 0xAA21C6CA, 0x861F453F, 0x9D933193,
+0x8B0E7418, 0x64210F7F, 0x2BF32AE8, 0x18AD720E, 0x9F59B9DD, 0x94DFB404, 0x1ACDE1E8, 0xE546C7E2,
+0xACC1B314, 0x9444A6DF, 0x20823138, 0xBDA243C5, 0x331790D5, 0x3EF2966C, 0x9480D27E, 0x2241D946,
+0xF41F17FD, 0x59A4A782, 0xF7B4FB13, 0xA247EFED, 0x9512E8E5, 0x66570136, 0xBF506714, 0x9FA30B45,
+0xCEC0F57E, 0x7A4C4D5A, 0x499B9F03, 0xC3EC852F, 0x9C365777, 0xCD327614, 0x6856C138, 0x56F40CBD,
+0xAFEAE4B3, 0xCEBCAC05, 0x17F20729, 0xDB2F8FA7, 0x521FCEA4, 0x53ED398F, 0x4BDF870A, 0x8D045572,
+0x40289F0B, 0x0741338D, 0x7463EF6A, 0xA321F40A, 0x46223EE2, 0xECD98A9A, 0xE4244BEF, 0xB155EDCE,
+0x8E4DF6D4, 0x4D1BACB6, 0x258C048E, 0xF3651C04, 0x41A204ED, 0x8BD8134D, 0x1457E153, 0xAE31C01C,
+0x34AE84DB, 0xB8AC76A7, 0xEF05536A, 0x606738AD, 0x3F3D776A, 0x1748A733, 0x2CFC0F99, 0xD44C4C65,
+0x10AE9713, 0xC06AD1CD, 0x035DC017, 0x71F7D37E, 0x69F51520, 0x05395E96, 0x7AFEA1D4, 0xD8C805AC,
+0x5A4E9313, 0x1DF446E3, 0xC1643078, 0x2B4509A4, 0x39A961D0, 0x862A3C44, 0x2B88EA87, 0x6608A193,
+0x12884CD8, 0xBA9D57DC, 0x719812C8, 0x6799B768, 0x5C977424, 0x224EECFE, 0x7C25016A, 0x76F2F44E,
+0xB91915E3, 0x0646575B, 0x93F69F88, 0xB9803CAF, 0x9137EC54, 0xA016823C, 0x84CAC8B9, 0x6445EB8B,
+0xE2434194, 0x4DC549E6, 0x63AAF6AC, 0x38498616, 0xA1A6B2A2, 0x5224CE5D, 0x5F7E6E64, 0xDA761B9D,
+0xFB27A804, 0xD9CA3995, 0xEB9F3F13, 0xCB6410F7, 0x72176AC5, 0x21CF30E7, 0x091BF490, 0x3192D17D,
+0x1D97719D, 0xAB62B41D, 0xFBF9730F, 0x6F9250FB, 0xF24EE2EC, 0xBD491390, 0x4CF11E33, 0x307D6C7F,
+0x56C1F6B1, 0x1682BCD6, 0x76F5AC3D, 0x88B25481, 0x64EFFD0D, 0x25A0EA37, 0x3D1DE9F1, 0x026963FA,
+0x545AE800, 0x0350C27D, 0x864EC2C6, 0x2C32391B, 0x1DA57B49, 0x4F7E72F7, 0x8B0C6271, 0x19022919,
+0x95B5A4FF, 0x7AE0CF38, 0xB1872645, 0x430E66F7, 0x0F07499E, 0x4A526A3C, 0x826EE07D, 0xCEF7188E,
+0xB363950C, 0x7EFC0955, 0x64DFE6FE, 0x4C981A92, 0xE0842775, 0x30EB4A20, 0x08F6F830, 0x1DCAB9B0,
+0x1CD6B3D2, 0x5A768CB4, 0xF9864305, 0x322E0E29, 0xAD0EE00E, 0xC7BEAE41, 0xC0BAC204, 0xBF9DA922,
+0x4A794D75, 0x5E5BDECF, 0x7060E623, 0xC8FAA029, 0x84573879, 0x56A3076D, 0xDBDBE247, 0xEBD37D7C,
+0x52EE2F8B, 0x616A38DA, 0xFA82697B, 0xFDA705FA, 0x9B3E2E70, 0x135B88A3, 0x23D2F2D3, 0xD9C66017,
+0x076D271E, 0xD9557974, 0x5A28455B, 0xF598CD12, 0xCB0E3D6D, 0x11F3E1EC, 0x3C0F41CC, 0x8097CF74,
+0x1B53B1A4, 0x094C191F, 0x5756BCE4, 0x443E6D6D, 0x29B6D477, 0xE310BB6B, 0x07A1ECB5, 0xC4B38907,
+0xBCDD1301, 0x6F9BDBFC, 0x80B12B77, 0x2E944BDE, 0xBDFD1EB9, 0x169D96A6, 0x092C7F63, 0xF23E1EF8,
+0xAFA574A9, 0xCB8015B0, 0x6A422790, 0x42FA6F74, 0x6B862A8A, 0x3968D4DB, 0x01262003, 0x4A2C8AAB,
+0x4D75DA80, 0x7B4159CF, 0xD0967C0D, 0x7EE7DDBF, 0xD1502233, 0xAF701064, 0x2B2AEF63, 0x946448B7,
+0xCBEEFB7E, 0x3480BA1A, 0xA5117C25, 0x85F5446F, 0x995E8063, 0xC6B90917, 0x87733039, 0x4B510481,
+0x9D94B817, 0x83A49F8F, 0x7B0471B3, 0x176083D5, 0xD2EAEBD6, 0x6A5BBF8B, 0xC1EBF022, 0xB5FAE24B,
+0x0A9E1A31, 0x2D737AAB, 0xA5D8AEF5, 0x8CBC816D, 0x899FF6A7, 0xFB3FD029, 0xCF266053, 0xE1C5137A,
+0xB4B4A5EF, 0xC57FBD24, 0x0115216B, 0x6A7C8D7B, 0xF6FF6E23, 0x272FD00A, 0x24C32AFC, 0x1FC1D4B4,
+0xCB4CB16A, 0x4E8E0BDB, 0x17F46279, 0xE0E2CB27, 0x453F7663, 0x68E80351, 0x0A2A301A, 0x5A2FB9F6,
+0x29824C1C, 0x647EFDB4, 0x6899A5D5, 0xCCF3A06E, 0xA6FC7892, 0xE6E8BA0D, 0x43F800C3, 0xBBA936F9,
+0xED412CD4, 0xBCE7F82C, 0x1CBE0878, 0xB2626B82, 0xC739EB0A, 0xDDC0822F, 0x7B9958D5, 0x45AD766D,
+0xDAA39A62, 0x5380331B, 0x05FF26F5, 0x5F0CA3EC, 0x19FD906E, 0x1A30A5BD, 0x33788A31, 0xB9D1D7FD,
+0x2156BBCE, 0x1EF2B85B, 0x0F029757, 0x343C31F3, 0xF76E89B4, 0x33FA8194, 0xEEE76A05, 0xC50EEF22,
+0xFD65E32F, 0x05804E86, 0x0385B59D, 0x22C59CA9, 0x372908D1, 0xBBDCEA53, 0x17CF36DD, 0xAA26E8B6,
+0x1E0EF97D, 0x3628F813, 0xE1D0F17F, 0x1EF05060, 0x55CF29B8, 0x7276254D, 0x5A864224, 0xC2803085,
+0x155EEF6C, 0x4AD3D52D, 0xB2586F2F, 0x744A3E04, 0x5044F47A, 0xD470E7B8, 0xBB7F2D35, 0x70491D73,
+0x71BDBF29, 0xCB6CC4EC, 0xBCE70B18, 0x1119D2BD, 0x2F032B6A, 0x1FC1F81E, 0x09765746, 0xD39A2BBC,
+0x28605C09, 0x77235514, 0x8C6E2C7F, 0x36BC004F, 0x229EE3A3, 0x8DE2B47B, 0x5836026A, 0xA632A206,
+0x156C5135, 0xCB737E6F, 0xA35B9EE8, 0xF93F8F5A, 0x1A18C6BA, 0x9ECB8877, 0xCFA3C87D, 0x53848C01,
+0xF0D9D12A, 0x345D32AC, 0x9F180A87, 0x1F3C9F6E, 0x1D5AF2C5, 0xF018F717, 0x72F6B4FD, 0x8332EFD5,
+0xA921926D, 0x024EED2D, 0xAB87F9C8, 0x85072D6F, 0x61B91A05, 0xA6630361, 0x710BC236, 0x1DCA51D3,
+0x7B3C6497, 0xE528ECA2, 0x1B107C88, 0x8437C935, 0xD2D5364C, 0x95256DE4, 0xDF98C6D9, 0x7895C4D2,
+0x03F4175E, 0xBEA51C1E, 0xC02CB1BD, 0xEDC8BB14, 0x4B0B4D14, 0x347A2A21, 0xDE98821E, 0x3D28C01D,
+0xB8CC391A, 0x4321AD0B, 0x4A64079D, 0x63C7D98C, 0x95A5FFDD, 0x3203EF17, 0xEBF0927C, 0x75121B13,
+0x04784862, 0x61DCC975, 0xA2F58FA9, 0x115A346B, 0x21272E61, 0x530FA57B, 0xC4656139, 0x96761B04,
+0x8E9B15B3, 0x06A0DB49, 0x555AD88B, 0xA5BFC130, 0x0D366A26, 0xD4157039, 0x341DD62E, 0xA93BADE3,
+0x087FE343, 0x6548EFF8, 0x6426A0AC, 0xDAE976B7, 0x63B77606, 0xA0316D05, 0xCBBA75F7, 0xE3343E3D,
+0xE9074A6D, 0x004C4590, 0xAB6AC8F9, 0x6267A2E0, 0x35B4ED3A, 0x0F9476A7, 0x0E815EA0, 0x301DD5EC,
+0x8D877881, 0xF7A9256E, 0xE21CCB3F, 0x0D4DDECF, 0x86512320, 0x556AEC54, 0x07D3A52B, 0x1E317896,
+0x0D5726B9, 0x669B19BF, 0x3D155020, 0x31B15E38, 0x9316D466, 0x7C13BAA5, 0xA819D978, 0x10A03253,
+0x5A79B9CC, 0x7BDBACA1, 0xD7AD4DC8, 0x3671D49B, 0xA4D6E963, 0x2348FCD2, 0xED4D9E78, 0xFB1BC33B,
+0x2920B740, 0x4EC2D635, 0xFAA8B674, 0xEF090002, 0x590C402C, 0x96F4EADC, 0x612442ED, 0xF61F3620,
+0x4A935989, 0xB8560133, 0x22FF37DF, 0x48C41FCF, 0xAAEF3A81, 0x45C75537, 0x41AC7560, 0x419BD6F5,
+0xBA507157, 0x69C3D4F8, 0xA9789575, 0xFF20A2ED, 0xBFCA8F8F, 0xA0E9BD89, 0x9AC9E758, 0x31893093,
+0x6760E9C4, 0xC201326F, 0xC532F26F, 0xFAC33466, 0xA8D5AF61, 0xFEDB2574, 0x0F8E5FF1, 0xD27911F0,
+0x859851DA, 0xC2FED909, 0x106B1D39, 0xBE017AF2, 0x57B34654, 0x30CF920E, 0x9354F13B, 0xA554AB2F,
+0x9F4A744E, 0xA792D136, 0x95CD6144, 0x153739E2, 0x29226C16, 0x23F092D2, 0xE8043AD3, 0x7BC0C727,
+0x00D37137, 0xBCEAF21D, 0xE18D8C45, 0x3A136E19, 0xFCC74D52, 0x74941700, 0xE34771FD, 0x2C314D24,
+0xAA8B971C, 0xD0528CD2, 0x195E160A, 0x9F513122, 0x018D0E51, 0x6049ACD5, 0xDD6143B5, 0xA6166758,
+0x69DEBB7B, 0x6D2AF171, 0xE13B3AD9, 0x53973ADE, 0xC760ED15, 0xB79D6C6C, 0xC6D275B4, 0xFD7E7EE3,
+0xA17B5408, 0x04E0EAF4, 0x4DD9D131, 0x7651DD53, 0x16F76981, 0x359EF7D5, 0xCEBBA37E, 0x8DC66BDE,
+0x1CBA6AEF, 0x6D98A339, 0xA1058FF9, 0x01D72D50, 0x98AA493A, 0x20D0707B, 0xE7FE9F6A, 0x144C8B5F,
+0x560989E8, 0x1D78D854, 0xE4396B84, 0xADE349CA, 0xC851F6E9, 0x0186A009, 0x0A38F417, 0xB99937AF,
+0xBD778403, 0xF528F77B, 0x684D151E, 0x1968C826, 0xBB89609D, 0x8BA52BBA, 0xF4B5659C, 0x2756A1A1,
+0xA589C07F, 0xB8201F56, 0xC9D5F5B7, 0x6B02E37A, 0x34DD42D2, 0xCC92E01F, 0x1D9CD2F0, 0x58462E2E,
+0xFD91D8A4, 0x7BD0800D, 0x4E627CE8, 0x02859701, 0xF22B7B71, 0x65BC98DF, 0x317B2108, 0x8358DF2E,
+0x042EDB73, 0x06BA2C46, 0x8E1BC1D7, 0xCEFF6C90, 0x470879EB, 0x0CD1C911, 0x1588071C, 0x78839AF3,
+0x4535BFFC, 0x1B428AE9, 0x528B0718, 0xE1C6F10E, 0x07A2A074, 0x43AD08A7, 0x6310324A, 0xE28A4A2C,
+0x876C6C7B, 0x35551399, 0x435E9DB0, 0x551F8179, 0x3D81E1A5, 0x4FC878F2, 0xC919D73A, 0x2EA6BC4E,
+0xCF18AAD7, 0xF04C382C, 0x255FE6F0, 0x70861F0C, 0x2C1C0F5C, 0xE6B5F83E, 0x9E0A5063, 0xC9F9FC45,
+0xACC7259F, 0xACA78F56, 0x2638915F, 0x575F1FC0, 0x52B79E60, 0x7BD25319, 0x895BE71F, 0x252C505E,
+0x56483710, 0x0FF3C4CB, 0x4F0088E9, 0xBC61D23D, 0x5CC57346, 0xE8552992, 0x02FECD28, 0xD5059423,
+0xE779EA32, 0x42DCF732, 0xE6E5D5B4, 0x8EB2AFE8, 0x77949225, 0x052198E6, 0x0961057D, 0xB1A3DC01,
+0xEB3BA400, 0x6C7E9B98, 0x15BF803B, 0xCF6B0B44, 0x4C4E17DE, 0xA108F72B, 0x84343FF5, 0xFA4CB8DD,
+0xE3C6CD0B, 0x794C355B, 0x2CC34BB2, 0x3F36F403, 0x732F91E1, 0xF70A53D5, 0x0BFF6602, 0x829E3037,
+0x3F9478DE, 0xA908F034, 0xDC9E7A53, 0x5C104992, 0x8C40D9D2, 0x801B3194, 0x4557EFB3, 0xDD1F20D2,
+0xBFE49DCD, 0x619A4A5B, 0xA112EF9F, 0xE3816F55, 0x5CBFB5FF, 0x29453EB0, 0x6943E142, 0x66943ABC,
+0xDAC0ABE3, 0xEE246F81, 0x8C6A3CDC, 0x6EB9B8C0, 0xFE29A1DF, 0x48539447, 0xA359929F, 0x7AA6C88A,
+0xEE047248, 0x66DF81E2, 0x0AB6B694, 0x5E90FB10, 0xFB548E28, 0xA2C88697, 0x2C9684E3, 0x7BE6FC17,
+0xEA1A6B21, 0x58A78993, 0x931E547F, 0x67052623, 0x05A22CB7, 0xBBD4864B, 0x3773A1C9, 0x0F1B242E,
+0xBC18A1B4, 0xE0DC2374, 0x13C4C1EA, 0x8439CC3B, 0xC4095DC5, 0xFFB6D59A, 0x11755D3A, 0x2BD807CB,
+0xB651CDE8, 0x8AC78E70, 0x1A00A983, 0x4DD1C341, 0x9C45F030, 0x5B510AFE, 0x615EDC03, 0x277CE16A,
+0x6714C433, 0xF8679F03, 0x9AE5E849, 0x5540C175, 0xA97F5720, 0x0E667A20, 0x0F39319C, 0x46AA2BBE,
+0xCA20C0B1, 0x42B3309E, 0x716CAC01, 0xF4852F43, 0x24C17856, 0x025B4EDE, 0x68E3EACB, 0xCA280833,
+0x333DF91F, 0xC1EDC2AD, 0x17497161, 0xEE1E25E4, 0x667CD413, 0xEC66048D, 0x17700E1F, 0xD30CA88B,
+0x5B4735C8, 0x4F7ACC0E, 0x357A02B4, 0x01D94137, 0x7E9CE4DA, 0x64E3EAD7, 0xDD31F436, 0xAD309913,
+0x0C8C4675, 0x3A4BDEAA, 0xADD4B74A, 0x3218C506, 0x857CAD47, 0xD28E5AD3, 0xB451B817, 0x5BD41352,
+0x3467F880, 0x486D98BC, 0x848CB1F9, 0xA3D30265, 0xC3231304, 0x3B8A858A, 0x973E95A4, 0x8061B391,
+0x5F42F239, 0x062D68E8, 0x9512A69B, 0xA0A10439, 0xB22C8582, 0xFCF827B9, 0x8C6232FC, 0x0F3FAE94,
+0x6A39A6B6, 0xE34F2190, 0x54512517, 0x5AB8E47B, 0x20E4C919, 0x4578C5F7, 0x697EEBE7, 0xD4B4F129,
+0x2A169A3B, 0x5549F726, 0x95AB98A6, 0x2C9D8B89, 0x10AA5982, 0x4737A3B6, 0x8A97D109, 0xC58DE588,
+0x219BD58A, 0x396C8135, 0x32DE78A1, 0x2402AC07, 0x87B35BEF, 0xB2F4DC72, 0x09C8ED9A, 0x7D0E71E4,
+0x41F314AC, 0xEFAD8FA2, 0xA0566FB6, 0xEFCEC83A, 0x51527434, 0x27837182, 0xFEADE949, 0x7280F7C4,
+0x01EB2834, 0xFBADDA8E, 0xA82C2C6E, 0xB6FCBAB4, 0x7F20ED0F, 0xBFF0702A, 0x6AD47559, 0x662B4738,
+0x2E493F8D, 0xD98BD875, 0x83B2A131, 0xCDDD4653, 0xB9BD38F3, 0x22483903, 0xC9892F75, 0x5C4AAB75,
+0x3BB3395A, 0xA5598221, 0x347F3494, 0x8E7059A0, 0x9B151AF6, 0x6C63FC23, 0x975C38CC, 0x47BB755A,
+0x364832E6, 0x365F6405, 0x5FA7B429, 0xD0A0F2EF, 0x8DD82003, 0xAE52B572, 0x08757601, 0x234D1CB3,
+0x7F9290CE, 0x1435A559, 0x697F3413, 0xF4214BE8, 0x155E120B, 0xD6B03052, 0x054C150F, 0xC39935BF,
+0x9882AE6B, 0xB6546A88, 0x2A19DECD, 0xDD8CC0DF, 0x633573AF, 0xDD47FC37, 0x173A08B4, 0x74D012BA,
+0x6E6BFE41, 0xF7B76A4D, 0x13A07D8E, 0x2CE3F8FC, 0x5EAC7639, 0xB7A8BF2E, 0x7CA9E420, 0xB64AB726,
+0xFBD98EBA, 0x1C3A7EBC, 0xAF9A1745, 0x77ED7A90, 0xE97E80A1, 0xAEA43513, 0x592C4E6F, 0x78F8ED82,
+0x647E5814, 0x1B0E704F, 0xD3A0C518, 0x598015B8, 0x8E2726B7, 0x06881E12, 0xDB7FE774, 0x91CDB6F6,
+0xE9A1863D, 0x1FEA320C, 0xED62ECAE, 0xFBD05B1F, 0x663C3CCF, 0x19884B68, 0x972B6183, 0x2D4FFE1C,
+0x1AEAC764, 0x26DED3A0, 0x943DA580, 0xDF683E97, 0xA71837AF, 0xC5710517, 0x23E2D173, 0xE3E9C54C,
+0xA410EFC5, 0x963C30C4, 0x4CFB2C65, 0xBBBE14E4, 0xB17E789D, 0xB412EA2E, 0x58D7F118, 0xAD521C68,
+0x80195716, 0xF2614A8B, 0xA8943D1C, 0xFE205600, 0x24682A3B, 0x6EEB51DD, 0x99F9C5E1, 0x8500A62E,
+0xA86B4709, 0xC7B3F911, 0xD4979203, 0xEB77576C, 0x5A672642, 0x07DC4550, 0xDAEB5145, 0x450F6116,
+0x9E18573A, 0xD05E93A8, 0x1B9F9B0A, 0x1C341F18, 0x514633F6, 0x81526053, 0x57C35021, 0xBD5C1801,
+0x945C05FB, 0xB071F7F4, 0xDB38686F, 0x788E7971, 0xF860319C, 0x606A0245, 0x53B06548, 0x932E7F26,
+0x03C0F7CD, 0xE681D251, 0xF6554D09, 0xC437C167, 0xC9E0232A, 0x5B149980, 0xF583CD92, 0x5AAA438A,
+0x2B37E226, 0x5C27B092, 0x41A4B95B, 0x131FF73D, 0xA1A435F2, 0xACF50292, 0x8D7F9E9B, 0x95AE4F72,
+0x49C927C6, 0x0EC47F60, 0x8C76E842, 0x38EA34D5, 0xE4D26D52, 0xE684C073, 0x7BA29A99, 0x58C5083B,
+0x39756ACB, 0xBC877B64, 0x0470B76D, 0x1C56020E, 0x39384DAF, 0x2E595FB5, 0xF8DB99D1, 0x95DDDA4A,
+0x2E5D49B5, 0xCB8D422B, 0x36D732A1, 0x013E16C2, 0xA1622964, 0x41F7BA56, 0xBDA235FE, 0xA5F8178A,
+0x0E9F9CDB, 0x3A67AA77, 0x3483163E, 0xEBC66115, 0xFB7B96A9, 0xB452D10D, 0x70B0DA95, 0xFF384E11,
+0xD9422243, 0xB50EC5D5, 0xFA039C62, 0xBFCBD9D2, 0x5C895929, 0xC33DC719, 0x494A9648, 0x3113BAC7,
+0x03BF55A5, 0x623E9491, 0x23D36488, 0xAC26A420, 0x158B2374, 0x1912E2AB, 0xD37B6DE0, 0xC5074EFE,
+0x6DFC6C87, 0x4FB19AA5, 0x1031D896, 0x3B031787, 0x9F580BE0, 0xB43AE757, 0xA413AD0C, 0x0F51FBD6,
+0x7FEB632C, 0x8B8AF215, 0xC7173E2B, 0x33651DDC, 0xC49E19CA, 0x8D1CE05B, 0x296596FC, 0x231E0E9B,
+0xC5D7953E, 0x91B5A814, 0x77FB7165, 0xC2B7C00B, 0x455F9C5D, 0x10E999B3, 0xCA539A1D, 0x9B37A77C,
+0xB471D787, 0x9758261B, 0xEF7857FD, 0x66D7156A, 0x88AD29C6, 0x6772724E, 0x68D49601, 0x1EA2CB86,
+0x7D088743, 0xB07E1CB6, 0x38C6C629, 0xDC538D82, 0x6347BAD5, 0x365F0F73, 0xAC2F180B, 0xF79DF103,
+0x6EC7A4BC, 0x4A2E445D, 0xCB080901, 0x98192E2E, 0x9FE6FBCC, 0x247BD022, 0x8FC7929B, 0xC2CE8758,
+0x1F2E03F9, 0x3F993F5F, 0xA8C0B8FC, 0x4D940F4F, 0xAE071A1B, 0xD9DCE611, 0x59553FF9, 0x735C7F42,
+0x9B9BC7B4, 0xFD71A970, 0x22BA58A2, 0x323EDA46, 0x59FB1A41, 0x6B140763, 0xF7012DE1, 0x3B58545A,
+0x0034E73E, 0x0719C8A8, 0xD76D094F, 0x6B65A7BB, 0xCC9BF7A6, 0xC024E57B, 0x0B1EBA5A, 0xC09986F6,
+0x23B92D66, 0x2EC461EE, 0x2C5F9508, 0x47420C22, 0xF0B8E009, 0x6EAEDF4B, 0xD96C5D93, 0x0F82483F,
+0x2B272241, 0x41AC8C27, 0xD9B37620, 0xB74ACCAE, 0xB259C8C4, 0xB694BEF0, 0x2972EE7A, 0xFAA5662E,
+0x2D0FAB9C, 0xC1804682, 0xA5A7E8C7, 0xE214BBF0, 0x48BCC4CA, 0x7632E6A1, 0xF63D6838, 0x5DA191B4,
+0x39A70AFE, 0x05000310, 0xE32F188B, 0x0E5E8EF4, 0xAAA2743B, 0xB673DBB8, 0x7BB9B95E, 0xEBA2B514,
+0x358344B3, 0xC2C89896, 0x2850E0F8, 0x02E58071, 0x04F67E36, 0x6601D2E1, 0x6F807A57, 0xD1E30B7E,
+0xB8C1BD7C, 0x969FEA75, 0x4A2E830B, 0x0BB3D790, 0xD951ACD2, 0x57C008AA, 0x9A8E9971, 0x5BA49CC7,
+0xDEC8C9AA, 0xABD149FE, 0xE669CEDB, 0xA726FBAB, 0xFA2FDB32, 0xD88A9D73, 0xD9B876A6, 0xEB1A81B2,
+0xBDF0655A, 0xF6B387B8, 0xDDF3E27E, 0x5D3E097F, 0xCE119998, 0xC01F9C9E, 0x5CB18EFD, 0xFEECE0F9,
+0x54C36BBD, 0x4489D42D, 0x9E3A6044, 0x16520E26, 0x52C7D16F, 0xE86814FC, 0xC3D8282B, 0x9BFC4752,
+0x2E5CC391, 0xDC223206, 0xBCF216B3, 0x71CCCF87, 0x515A80D1, 0x6EBCE173, 0xFD247D08, 0x6AEAE34C,
+0xB6A7C2B5, 0x600AC4AC, 0x3AB7CA85, 0x5ACD5B70, 0x184CD7E3, 0xDBB50719, 0x850342F1, 0xA99544FC,
+0x8EEFA246, 0x97EC993B, 0x3CE02984, 0x9C5DBA3D, 0x56270860, 0x1648C4EE, 0xA7798859, 0xDA58C622,
+0xB5693E2F, 0xD88D3E86, 0x871BBCCA, 0xB32B489A, 0x707EAC7B, 0xA430958B, 0x2210BF89, 0x04C1D44E,
+0x7F7FCA18, 0x74549B3A, 0xC2ED8C55, 0x6C44342D, 0x09E27D64, 0x02513414, 0x52265C9A, 0x17147666,
+0xAEB4CFA1, 0xE779D241, 0x5C89E3A5, 0x4101FE9F, 0x4C9A8C3D, 0x6FC70A87, 0x1BAEBD91, 0x9498C28E,
+0x3CA23DD8, 0xF16D850C, 0x022377C1, 0x698CA7C5, 0x7DD00D68, 0xB1D193C8, 0xFA9D4B6C, 0xE494E5FD,
+0x8E0843F7, 0xCA809FDB, 0x1C397698, 0x2EE9348B, 0x38D1BF6F, 0x642481AD, 0x08305919, 0xDDC1DCCA,
+0x9BCA9C0C, 0x544545E4, 0x798C2A36, 0x2192C3FC, 0xF62B972F, 0x2A52DEF5, 0x68898C03, 0xFEF2C5B2,
+0x8806D30E, 0x9CB13089, 0xD4B5087B, 0x00C52974, 0x4C3C074B, 0xC1C8D81C, 0x23A9432D, 0x332A954A,
+0x3C67AD93, 0x4790994B, 0xAD7C846A, 0xE0CC896A, 0xE12AE19B, 0x114863C0, 0xFEBD54E2, 0x742226F9,
+0xB5EE8CF3, 0x45081B60, 0x2874843C, 0x355C3FC0, 0xFCB20E7C, 0x13532DE9, 0x39207B87, 0x3A7D1DBB,
+0xB99BAF3E, 0xEA7126A5, 0x44F41926, 0x650ED605, 0xBD72A122, 0x3FFDAF1E, 0x74E00BC4, 0x68B26E1B,
+0x4FA2C512, 0x15F82BE4, 0x9B7E2761, 0xD695290C, 0x9D0AFC46, 0x02228986, 0xCE23F6A7, 0x1C7D0E27,
+0xE6F2EAFC, 0x41384B85, 0xA7036F39, 0x9D7D0E17, 0x43D68CC9, 0x25F57817, 0x95AE4F9F, 0x3116A9D0,
+0x2B0723ED, 0xD98A6C0F, 0x58D3CA9E, 0xD0C932AF, 0x46C8DEFB, 0xE7DFFC14, 0x3F676879, 0x8DB7619F,
+0x426B79B8, 0xDFB9BA0F, 0xF565F8D6, 0x975AB07D, 0xF46B8224, 0x3875AA18, 0xBBCB24D3, 0x133FB903,
+0xFE71118E, 0x3A1B69E2, 0xF8507B8E, 0x979B437F, 0x8C07BC97, 0x5646CFA3, 0x2849FA1A, 0xF396AF1D,
+0xDFE8712E, 0xC64A7807, 0x62A6FADB, 0xA858AFF7, 0x584F0407, 0xDC8C3D47, 0xC86FD388, 0x129BAEB3,
+0xF6B9E721, 0xCAE6CE83, 0x718362DB, 0x399CB88F, 0x9DEB15D9, 0xAA79858D, 0xA474262E, 0xDABC09AE,
+0x2B6708F3, 0x560A6E6F, 0x206462D7, 0xCD657694, 0xDF9F8025, 0xE3DEABF9, 0x5A093265, 0x2D261B92,
+0xD71BF647, 0x09BAD554, 0x4C948C09, 0x36119FE5, 0x0F9FE171, 0xFEF21B09, 0x3A96D491, 0xAD299F27,
+0xE82C770C, 0x383AD14F, 0xF86CDA7E, 0xB0FB1834, 0xDF47711D, 0x85728D5C, 0x490A433E, 0x61E6F387,
+0xC31696AB, 0x0E6559A3, 0x8151782C, 0x89AF8A87, 0xBF4E0AAA, 0xA813E027, 0x42663B90, 0xEA3496AD,
+0x8C74689E, 0x9AD1992B, 0xA5DF118F, 0x8A8A495A, 0x9E379F08, 0x38F45615, 0x2CA44851, 0x672BDF53,
+0x293B1915, 0x8BA09562, 0x99E06B05, 0xB24E5B80, 0xAB2B5D90, 0x00AF2B1B, 0x97D77A36, 0x8E9E8BB3,
+0x4921FC0E, 0xCD4AC73E, 0x77661F34, 0xC1E5F623, 0x16169B26, 0x97B3F735, 0xB05BAD69, 0xE08C31A4,
+0x56D76FA7, 0xA4BD82A0, 0xE2183360, 0x407EC429, 0x5830DBDC, 0x93DE1E92, 0x7AF18B0C, 0x0E0C1D98,
+0xEC321763, 0x525DBD90, 0x54574823, 0x0FDCD6AA, 0x08FC1242, 0xB76A7C0D, 0x6449E5E8, 0xE9685706,
+0x4D383391, 0xADD86B08, 0xDF81F31D, 0x1C560FB4, 0x436D2224, 0x57B5AE06, 0x875EDA6C, 0x48958911,
+0xC58AF352, 0x3C60483A, 0x251A570B, 0x21AECF8F, 0x52469034, 0x1FD60D41, 0xAF14A324, 0x4B48385A,
+0x75CC622F, 0xEA4176C9, 0xFAE47230, 0x32AFF67D, 0xFCF0ACDF, 0xC59686C9, 0x1EA7526F, 0x0F97772F,
+0x887F73E2, 0x4EAD0A61, 0x8FA6E4C7, 0x3A4D9DC7, 0xF3699141, 0xAA7D7C98, 0xCF698F49, 0x8881538E,
+0x5C55E269, 0xAAA39365, 0x84BDA84E, 0x872A04EA, 0xA0E742D6, 0x3B38DF74, 0x756DDB4D, 0x643E8C6A,
+0xD2835F37, 0x8E213E95, 0x0D3F15C3, 0x98273CB1, 0x1E2E5B7D, 0xE3381F6C, 0x5BB7124C, 0xB90C85D1,
+0x151A5D98, 0x9660F2C5, 0xBB43DE82, 0x04F78291, 0x623D9AB4, 0x7BE3A126, 0x142CD08F, 0xBC337E82,
+0x2F585C01, 0x7A632B10, 0x2A12B371, 0xFBCB3B2D, 0x4933B64A, 0xD35B245B, 0x8E6731C1, 0x8031BE25,
+0x3A1F7D84, 0x9DB7ADF4, 0xA4F7FE39, 0x3AEAADAB, 0x7DADDDDA, 0xD410D072, 0x2D83C2E1, 0x66F72AED,
+0x853B77B4, 0x6F645C3F, 0x56888789, 0x2D84841A, 0xA77DFB45, 0xA9B96A16, 0x8A7212CB, 0x045F4638,
+0x7F8C8210, 0xEA1EE979, 0x2CC9478C, 0x10B5F317, 0xA0643760, 0x8EED494D, 0x3AB97279, 0xEE241B72,
+0x2D9A8CC0, 0x237A50C4, 0x28AE634B, 0xC4416BFC, 0xCF2B1E3C, 0xE5EA68A7, 0x11BD9E1B, 0xE3A43958,
+0x38B3C304, 0x50D412C9, 0x34DB42F2, 0x6BF2A826, 0x738E8D16, 0x6B6E30B2, 0x0355A2E7, 0xF8C557E3,
+0x1A977240, 0x48839704, 0x44B5C2F7, 0x230F3DE2, 0xDFF556C9, 0xE140F92A, 0x30789BC4, 0x278327E7,
+0x50BFDC25, 0x975C464D, 0xD9D96278, 0x9736528C, 0xD3405400, 0x220AC407, 0xE2BA8DFA, 0x672EC917,
+0xF7E5FF0C, 0xEC791230, 0x6072ED76, 0x0031C91F, 0x69BBB13C, 0x2241B502, 0x9DCF3442, 0x41FE9F43,
+0xDB3E11C6, 0x28D7F0F1, 0x5920143C, 0x417540F3, 0xF6047617, 0xA4D943F9, 0x53B77E84, 0x5E2C51BB,
+0xF53A0107, 0x2DD4B17E, 0xC4CF0BE9, 0xF1A84F7F, 0xE8109CB1, 0xBE6E1FEE, 0xE96849F0, 0x47CE263D,
+0x527F2AFE, 0x8AEBF67D, 0x20CF9BD4, 0x46B3FB0F, 0x2FC98916, 0x5BD0E8D4, 0x3F02CCCD, 0x66AFE2C1,
+0x2EE95E74, 0x0E4E373E, 0x9B8F6286, 0x5D4DB6E6, 0x08D0A5C3, 0x3B0C4B62, 0xE1EF416B, 0x53ED220E,
+0x9D44C359, 0x8ABAF47A, 0xC666FFAC, 0xEA683B18, 0xF4AAEA99, 0x78F13439, 0xFFAD38A7, 0xA12866B8,
+0x82775A81, 0x4C133569, 0x74C6CA5D, 0x7F01DAA4, 0xC48CCD19, 0x08A57638, 0x6598193E, 0x91A32E36,
+0xF404AC0E, 0xF2C1117E, 0xD2B6FD6B, 0x2D133DEC, 0x331C91D3, 0x388266BB, 0x0527508D, 0xEAD13356,
+0xCC247FFE, 0x04B3DCBA, 0xF95D21EC, 0x0FF2BE41, 0x3AACF29D, 0xE2EAF43F, 0x9D9F7FA7, 0x319ACAB2,
+0x31D08C31, 0xDECEC55F, 0x9C335D83, 0x909B9149, 0x598EBA9F, 0xA4F0C8C5, 0xFEF4C928, 0xFA6C9760,
+0x65E3BA4C, 0xE333AB00, 0xB69D636E, 0xF1D3F045, 0xEB14DC8A, 0xF082D812, 0xE6F3A822, 0x6DDFC3DA,
+0x1E02C6B9, 0xB9016798, 0xB53AC837, 0x36952B8B, 0xD3A1B742, 0xC9CD66DD, 0x9527CAEC, 0x6CDD71C2,
+0xC053887F, 0x94262A49, 0xF72E309D, 0x320D7F93, 0xB62D7F57, 0x87C178B8, 0x04EA256D, 0xB31D7BED,
+0xFE02FFA7, 0x3A82903A, 0x4B337846, 0xECE646B8, 0x101BB18F, 0xD6AEA545, 0x89AA765B, 0x8110DB0C,
+0x06D29320, 0x0464992F, 0x0DEE98A8, 0x54B01C29, 0x2C8FE82E, 0x07E0629A, 0x6C749319, 0xFF30C210,
+0xA94CA503, 0xB6B6A243, 0xE0D9919A, 0x001BEF48, 0x81343D7F, 0x260A3529, 0xA3996744, 0x57B59960,
+0x42660CD7, 0x43E4156F, 0x6295F74E, 0x511AD885, 0xD10678D6, 0x8B4D61F4, 0xD221773E, 0xD8684B3F,
+0x6E6B9001, 0xAD4D8E53, 0x612AC125, 0x0C660159, 0x03C9F921, 0x1C1FF870, 0xF3B24BBB, 0x21A1AFF7,
+0x194690E1, 0x23A23C19, 0xE7D3C66E, 0x80804F94, 0x123FC0F6, 0x48BCA1E0, 0xCCE562B7, 0x3E843F73,
+0xA82E9DB2, 0x05B85007, 0xEBE2BF97, 0xF6C63F0E, 0x85FA78E7, 0x6DE9CE10, 0x027DFFB2, 0xAB2E9602,
+0xD1A472C2, 0xA38C6EAA, 0xA006DEE8, 0x7ED14721, 0xCD5ACE89, 0x3F2A0A60, 0x820E2C17, 0xF92E64D8,
+0xD5D9ED74, 0x673A377E, 0x41DE4B18, 0xC6A824BB, 0x3C03A855, 0x8932C1FB, 0xB206DBC2, 0x08C3B1FE,
+0x5BFF263D, 0x578A9771, 0x18068478, 0x87647560, 0x6027E0F8, 0x5A04D1A6, 0x886AC3EF, 0x7FC7B373,
+0x3EA1C703, 0xD507CB85, 0x19FF3F25, 0x77BCA6B6, 0xCF14F0BD, 0x8209DFD3, 0x182E2A45, 0xEBF49229,
+0x70BB7D9D, 0x365FB246, 0x796400A9, 0xFF272019, 0x519A2904, 0x3BE763CF, 0x3CBC9AD8, 0xDEDDBDA7,
+0xF9966BBE, 0xCC437735, 0x028537C9, 0xBEF289EA, 0x98ED0F45, 0x46A1B793, 0x48C15CD1, 0x2CBACA6F,
+0xE1D6E6D0, 0xD9B0814A, 0xA4673D23, 0xC5569364, 0x7F5A8214, 0x002A527E, 0x61C7C7B1, 0xFDCBC4C6,
+0xF7D61ED9, 0xE28A8BB3, 0x7E3116F3, 0x6DA636A0, 0x9D766CAD, 0x5B873EAB, 0x92BF0DE7, 0x5DA3A0DC,
+0xED0186CD, 0xB09E462F, 0xED87EBA0, 0x2F0AC9F4, 0x2E540EEA, 0x200F06A7, 0xCA515E4B, 0x3EAF8E36,
+0xE5C56B2C, 0x8B2808DA, 0xA7BC3E15, 0x909E1522, 0xBB60DBA2, 0x088AD314, 0x8A086A66, 0x6F17553C,
+0x422DAE74, 0x1BF992EE, 0x20941811, 0xBD6CE96E, 0x21872F08, 0x58569DCC, 0xB552ED2F, 0x7A48DE34,
+0x97249902, 0x2EAE6B17, 0xBCA4013C, 0x5F0601B3, 0x6E567A2F, 0x488F24D4, 0x6D357A64, 0xF70996B7,
+0xAC4CB1E9, 0x8C3E372C, 0x5D8BB6AD, 0x23EE338E, 0x90B88736, 0x71E6DC8C, 0xC03C07B2, 0x3EDB0C7C,
+0x0968210B, 0xB3146D6B, 0x1FFAC6CD, 0x1D795C83, 0xDC7C9029, 0x7BA007F0, 0xDD833414, 0x976A5736,
+0xF4C9B276, 0xD654E2FD, 0x3C82868C, 0x9C52BC78, 0x2C177DC7, 0xEFB4879D, 0x6E9C1C92, 0x7AC028A2,
+0xE6ABC0B4, 0x69198DE8, 0xE91CDAA7, 0xC470A34E, 0x1DB6E635, 0xB12DD1D2, 0xC4D41721, 0x9E7247C6,
+0xFE812E48, 0xF9C3B5EC, 0xFD3E9A49, 0xC23F3E82, 0x1B6E3103, 0x5718C931, 0x5F895A3B, 0x73B65C14,
+0xACE14260, 0x785F72A9, 0xA2944A06, 0xA09DFCAB, 0xF66642F2, 0x6F5AB576, 0x63649C7E, 0x6DFBC977,
+0xF20A7C97, 0xD5E7B8BD, 0xD290530C, 0x103F411A, 0x850B0E41, 0xD478B7DF, 0x1BA188C5, 0x6F62847C,
+0x3ECB2759, 0xFB4E24C0, 0x675B6DE4, 0xD3A67357, 0x515AEC61, 0x370B99FE, 0x7654EBE5, 0x593C7A8C,
+0xF3D3EF5C, 0xEF898B99, 0xD2982E95, 0xE486721C, 0x5A42D45F, 0x9D89866E, 0x3DFBCF0E, 0x42A27144,
+0x9BBD23DB, 0x8E7053F3, 0x2A4C147A, 0xA9D98F19, 0x3323117E, 0x405593F7, 0x5E841EF5, 0x62DB2176,
+0x5513D5BF, 0xA31ECE18, 0x7C00D617, 0xF702DE77, 0x4CA121BD, 0x19E12F0D, 0xFDB62A34, 0xE5CE0CEB,
+0xA2295B9E, 0x4B5AF37B, 0x3681592F, 0xB32199DA, 0xBAC2404C, 0xFF878B85, 0x30243D8F, 0xA7BC2243,
+0xABC10B20, 0x6CCAAA96, 0x2A5FD02D, 0x03665A03, 0x40161F02, 0x7CB6E01C, 0x9BAA314A, 0xB9107F18,
+0x63C89C8D, 0xB4B289D9, 0x2EDDDD6F, 0x93C66E7A, 0x6DC4050A, 0xC861316C, 0x6C654D18, 0x6A8489E5,
+0xC2FB1A4C, 0xB688C22B, 0x57A73A82, 0x92CD9DAC, 0xA45C451E, 0x7A91A0A8, 0x404B9048, 0xD2B837B2,
+0xE21AE12F, 0x691F709C, 0x62A0C8D6, 0x47AD0FD3, 0xB57B902E, 0x27A9F126, 0x9AE8AEAC, 0x285AE395,
+0x46794F00, 0x2897B1D3, 0x239D7D92, 0x76117857, 0x41D5F2C3, 0x58E6639D, 0x75A4D5E5, 0x4B5B9BFC,
+0x1BDCCD42, 0xF593E9A2, 0x2B5F4E18, 0x96126B17, 0x9DF7C3DB, 0xCF2FE0B1, 0xD2F22B67, 0x40B215D8,
+0xB5AB779A, 0xEBEE4497, 0xE05AC4C6, 0x31C771F0, 0xA62F9DAC, 0x2B396BB1, 0xE78E4E00, 0x7034B53B,
+0xE5F716EC, 0xADBC8F54, 0x63383BBA, 0x5313A00D, 0xBC4D3E32, 0xC6A15CF8, 0x3C996E91, 0xC8161D2B,
+0x2493F94C, 0x0843D489, 0x62D8AC2E, 0x42094551, 0x208071A5, 0xA59CCC3E, 0x57EB4BF2, 0x853235F9,
+0x7E5FE76E, 0xB1553809, 0x8B8FC206, 0x134BDB93, 0x7EEFA54A, 0x203703D7, 0x3B8023BB, 0x430FD591,
+0xEB15DFDE, 0xFEA68D55, 0x68A5FA90, 0xAF6EDA0A, 0x503BABEA, 0xBAFB091D, 0x10C5AE1A, 0xFA14A7F4,
+0x16B4D950, 0x21FCCCC3, 0x9451584E, 0xA23E91AB, 0xAD03E5B5, 0x680B1F7A, 0x9D26A46D, 0xE5328E39,
+0x5187455F, 0xAA88645D, 0x068E6220, 0x33A8E22F, 0xDF2E68E8, 0xDD20341B, 0x9DAD1CCA, 0xC50B7A5A,
+0x8BFC5A6A, 0x7FBB506D, 0x18CFA426, 0xFCE62786, 0x1CF4E5E0, 0x8C6A1C3B, 0xA71CC78B, 0x392E34DB,
+0xAD28320C, 0x5D37D08D, 0xD67AD492, 0x7A7A2123, 0x169AE604, 0xA265CEDF, 0xFB6C7B20, 0x654FA2C1,
+0x29B18A39, 0xF13C9956, 0x145B330B, 0x383BFF37, 0x52FC1B8D, 0x27C37B8D, 0x01EBA75A, 0xEFD8CFDC,
+0x1176B51C, 0x0A554770, 0xBC784937, 0x0C8C02D5, 0x3724BA2B, 0x8544F095, 0x073E9938, 0x83307038,
+0xE8AB0117, 0x115A8F94, 0x14539D71, 0xB0B335A3, 0x1555BBAE, 0x58FEC369, 0xA04D3A19, 0x8B906111,
+0xFAE5A89C, 0xF052CA1E, 0x24FD99AD, 0x06E306C7, 0x6B9C015C, 0xA2132315, 0x30576BDF, 0xF813D69C,
+0x70492ABE, 0xCDC46F06, 0x2E1F4D1E, 0xB6D2051C, 0xE99D870E, 0xA19B0004, 0x4F51FC41, 0x567D7DA0,
+0xE733DD61, 0x2DA2AD5B, 0x14F9191F, 0xC1E2BB4A, 0x84DDAF86, 0x55A2AC1B, 0xDEB8B114, 0xF04B0656,
+0xAEE012BD, 0x966D0938, 0x0004DA55, 0x0B882390, 0x20D7CF8C, 0x0836025E, 0x7F1C3F00, 0x928CC8F7,
+0x18571C06, 0x93E2CF4A, 0xD47BD1E0, 0xCA230FD4, 0x16CBA942, 0xF093CF09, 0x82ECC655, 0x5CE36970,
+0x5F0C3A7B, 0xDC6D6C40, 0x68C237FE, 0x70169B0A, 0x4957589F, 0x67964F2B, 0x3FB739A0, 0x0A9358CA,
+0xC2449878, 0xE26B4C7E, 0x1254F3CD, 0xD48C190C, 0x2042CFF7, 0x686F6523, 0x5B360619, 0x5C5B0962,
+0x521FD53C, 0x7F9169E6, 0x00231475, 0x2F78A1D8, 0x75225F1E, 0x090559FD, 0xAD4F500D, 0xF60325A3,
+0x8980B199, 0x7658AD26, 0x827DF8C2, 0xC1EB728C, 0xC13EAA88, 0x96FBAF7F, 0x6FCF40F7, 0x919CEBE3,
+0x5F4B538A, 0xBFE9D695, 0xF6981580, 0x0EA1D79E, 0x6AFED9C6, 0x98FC308A, 0x4DEDB59D, 0x579FC686,
+0xEEB46592, 0x17DB7FC7, 0x5F2605EC, 0x995AC16B, 0x91F40F05, 0xAEF78243, 0x22210D3B, 0x987495A7,
+0x962D9A0A, 0xFAB508EF, 0x3DC21449, 0x83C57212, 0x743B36C5, 0x428D28FE, 0x5219797D, 0x90C42F8F,
+0xEF33F020, 0xB3DD18CD, 0x29C5FDC3, 0xDC55DB9B, 0xE2E7B5E2, 0x0616A953, 0xA1E989AE, 0x49E5A13E,
+0x6B013BF6, 0x66B96C45, 0x2539408C, 0xDBA8F230, 0x692C802D, 0xEA6CD642, 0xAB063198, 0x5B591BCA,
+0xBD53862A, 0xF0B4662E, 0x7529A7EC, 0x0481C385, 0x1E8523DF, 0xAD335057, 0x385DCAF1, 0x2D1D5BAC,
+0x27E63904, 0xEF6B93B4, 0xD1EAB868, 0xDC2016B8, 0xCB7D3628, 0xB2AC8318, 0xFEDCA802, 0x589FBAD0,
+0x716669FD, 0x55EBECB7, 0x0DF001BD, 0x27FCE18D, 0x36B54143, 0xE2D9FC04, 0x0856E3E2, 0xFA6AF3FB,
+0x8BD26F13, 0xB5D44FE1, 0x129E8146, 0x17D97EA9, 0x79B1A00C, 0x12AE299A, 0x4A9BDEA2, 0xEB945E89,
+0xD8A0BACF, 0x164A8D00, 0xD8EDF7FA, 0x7BBB59A3, 0xE1633F63, 0x17B114A7, 0xA9B0C392, 0xBC41E487,
+0x43C2B779, 0x6BB3CF28, 0xBED2EC65, 0x37E2C413, 0x7C09A2B4, 0x6D24AD35, 0x7FBC8D7E, 0x9FEAB926,
+0xF4282E91, 0xD8F5A389, 0x7789FECF, 0x7664F7F2, 0xAF14C86B, 0xE2823995, 0xC3CC77DC, 0x71D49838,
+0xB172BF6B, 0x94E7860D, 0x908E7DD8, 0xDB526B1D, 0xD90BDBEA, 0xFC52555C, 0xD5856D66, 0x40C7A640,
+0xEC864C25, 0x12F9A0A5, 0xB5A92881, 0xB78DB70F, 0x83B2BA91, 0x365E404C, 0xA88A9332, 0x6BA51BD0,
+0x2203F198, 0xEF7F2107, 0x1B9A32C4, 0xF0CCFF6B, 0x3BA51BEB, 0x24DCF2B1, 0xEFE609E8, 0xAA401EB7,
+0xAB481311, 0x8186685A, 0xD9BA410A, 0x8DB98564, 0x63827AD2, 0x287858E3, 0x570B06FA, 0x82239007,
+0xD5384F62, 0x701AF6F7, 0xB5031952, 0x1763FE94, 0xEF4BFC6B, 0xBE8B202B, 0xA2D5F45F, 0xF5E7214C,
+0x5794C83F, 0x0B748266, 0x5F2E202D, 0xCDC98525, 0x7ADB30C9, 0xA0B1774D, 0xD2F6ED82, 0x5AD5A5A8,
+0x7E2B598A, 0x53A6D4BA, 0xCFAF796C, 0xD41D18CB, 0x46F47777, 0x1420A6D3, 0xCB302F90, 0x0828FC3B,
+0x48CB0ABA, 0xAA12A582, 0xDB65A13D, 0xE3DEB0A3, 0xD49D67FD, 0x0F3D5240, 0xCC5FD98B, 0x78147D46,
+0x24ADC6CB, 0x5C42D923, 0x8A63789D, 0x58E26CE0, 0x7E1C7FE6, 0x5304B534, 0x0ECA1571, 0x6C47B58B,
+0x318D0A35, 0xA2C6BCAC, 0x8F980517, 0xD914F566, 0xC3064B86, 0x3D7573CA, 0xC751685B, 0x4BD28F0F,
+0x7DFC7F3F, 0xBF0A7E76, 0x7F402E4A, 0x33CC4D44, 0x67D840DF, 0x0A566922, 0xA80D7301, 0xBA34A4A3,
+0x48C00BCB, 0x1896AC7D, 0xA325D9D2, 0x6290AD72, 0x521C049B, 0x483D428A, 0x69B6224E, 0x5A78E2F0,
+0xDCBEAA21, 0xA91C1627, 0x91F39E76, 0xA262B20A, 0xED634CC7, 0xCD34EC73, 0xE5B89F58, 0x294D6A04,
+0xB62DD283, 0xF51EA7AF, 0x7EC60CAA, 0x89FF4F63, 0x558B1B93, 0x30B1DEFD, 0x4DC033C8, 0x36912616,
+0xC1DA3CC7, 0xAF5E5269, 0x98671E82, 0xE43BA317, 0x333CF29E, 0x23FA49B9, 0xD3DFC827, 0xE801CA46,
+0x89956707, 0x598EE258, 0xCAF43C0F, 0x48745BE6, 0x0B2E495E, 0xC49B4667, 0x6F8C319B, 0x20A896F7,
+0x3653215F, 0x883CC000, 0xCA140795, 0x3FA4D086, 0x5A414E2A, 0x76A860E4, 0x894004B4, 0x87F8030A,
+0xD5F691B8, 0xBFCFFC86, 0xC4663126, 0x1DDE3CB3, 0xF8BE3E2D, 0xBDCF7D7B, 0x04A003CA, 0x3770D989,
+0x86D072F0, 0x0A7617FE, 0x04E444C2, 0xCFAE896D, 0x97327388, 0xCAEC6FF8, 0x842516B9, 0x0637882E,
+0x5A05DF63, 0xF9DA66DE, 0xB21148E5, 0xD3F29B12, 0x9D81A7C9, 0xBE6F582E, 0xAFBA0184, 0xF1938446,
+0x4487438F, 0xA40259A7, 0xF63A9C8A, 0xDB30F229, 0x3CE1F3F0, 0xDD2D2498, 0x477A2FE0, 0xAE0C3D84,
+0x858C1970, 0xC864C887, 0x09621CA9, 0x186C938A, 0xED2B809E, 0xC9890DA6, 0x70D283C5, 0x9D168C70,
+0xE5533A81, 0xCE8F3805, 0x5393EDAC, 0x0F4747E5, 0xFDCD5EFA, 0xF70098CA, 0xEF013BC3, 0x78FFC9CB,
+0xCE83567D, 0xEAAC055D, 0x7BBCD7B6, 0xD6A1CFAB, 0x5E9D90B7, 0x4576C1DF, 0x3C70E753, 0x6C93879B,
+0x23B405A7, 0xE4184EB7, 0x9674EB58, 0x4ADBAA3B, 0x9E6EDAD2, 0x96821BA4, 0x8539C38F, 0x3009F4E1,
+0x0458F94B, 0xB70F6C2D, 0xE66A4CC2, 0x0B6C664C, 0x02FC1963, 0xD5D86373, 0x8977B43F, 0xBBCBA1B3,
+0x72CFDB66, 0x1DE58E76, 0xE1099C57, 0xD52C163A, 0x06D65FB2, 0x8AEB1F15, 0xDAA80659, 0xB85E9A03,
+0xC2E7F367, 0x9BECCADC, 0x10903E02, 0x727C18F4, 0xB8A48379, 0x49D46D9F, 0x5541EA05, 0xAED07F3A,
+0xDE9436A9, 0xE56A36BA, 0xAF7302F4, 0xB92B0B9B, 0xB6396AF6, 0xA03579A0, 0x22208342, 0x8CB99895,
+0xD5EF5CB0, 0x10B42C07, 0x5020E1AF, 0x4CBFFEBE, 0x5D1CE1A3, 0x376FAFAE, 0xBED46C3E, 0x5FDCEF4A,
+0x179E279D, 0xDF508F9E, 0x0953B846, 0x8EAFE8C1, 0xC1647804, 0x9753665C, 0x7E47FEB8, 0xFD95AA69,
+0xC6F4DD10, 0x62B7EB59, 0xF534B7F6, 0x38F1156E, 0xF77F4916, 0x43F531F9, 0xD20A653E, 0xA147C8E6,
+0x7A46F7F1, 0x3A069D9B, 0x1008CC7E, 0x8CCCBED0, 0xD3900885, 0x4B3F926C, 0x93C25C0B, 0x8415E4FB,
+0x0A317184, 0xC68D8673, 0x43076B19, 0xBD608F32, 0x7A5D387E, 0x2110BDE5, 0x3054034F, 0x427CBCC5,
+0x7D4DF0A7, 0x848C3A3C, 0xA6A4FC80, 0x3ACB391E, 0x182C4990, 0x1FB001CF, 0xDFF2850C, 0xCE2FF475,
+0xB8498ECA, 0xC67238CA, 0x08F8BC35, 0xF19D9B2E, 0x4328EC91, 0xED9A6C36, 0xAF96E69C, 0x96E7F5A2,
+0xAB4D6783, 0x903348AB, 0x8439AE25, 0xA70D1AAC, 0xBBF75368, 0x8F4B0286, 0x0FA9861F, 0x46A47328,
+0x29EA50B9, 0x97D4AB9A, 0x9A62A0CB, 0xBF356048, 0xFA0A3BE5, 0x2DD97524, 0x56BA32CB, 0x82CECE76,
+0xF28E0831, 0xB834D4DC, 0x412FB271, 0x452A9986, 0xBBA3404D, 0x3697D88B, 0x4FD31603, 0x9898BE34,
+0x0BF50B87, 0xB71FD3E1, 0x4DE4CDFB, 0x5FBE64FF, 0x37062223, 0x0497D237, 0xC07F1756, 0x1749FE3B,
+0xDF16851C, 0x2F8299E1, 0x42580BD5, 0x1ED044D8, 0xD2685C96, 0xB03E030F, 0xEC1EC5C7, 0x61EB8532,
+0xDCD27E91, 0x045CF8DB, 0x13F936AE, 0x98D5BB31, 0x408C6A2F, 0x49787AC9, 0x161F3356, 0xE16B37B2,
+0x4A02BC7B, 0x42484702, 0x240B9C13, 0x6C00D307, 0x7B67CFF1, 0x2FF05572, 0x787813C4, 0xA745CF18,
+0x2C9C978A, 0x6662F3AF, 0xDC86A938, 0x06CE4567, 0xEEE1BB27, 0xE7455464, 0x5EB701E5, 0x6DC61C3E,
+0x2464040D, 0x16B64AB7, 0xD88880EC, 0x06BAB2A3, 0x1E8E377A, 0x43127A6A, 0xFAA3C6FA, 0x824C8551,
+0x36744C50, 0x70C350DA, 0x5D8C4DA2, 0x7A106CCF, 0xF7F694B4, 0xCE4BEC71, 0x9491DEAD, 0xC6E26DDA,
+0x6F43816E, 0x7F78F21A, 0xA11829F1, 0x76A5EAEA, 0x34D30A5F, 0xFB01BE2F, 0x7DEB843C, 0x5488D6ED,
+0x8FD99CF9, 0x404DD410, 0x54596E7D, 0xB89AFDBC, 0xB90B7B49, 0xF15BA117, 0x30D96B7F, 0xDA03F3CD,
+0x1C01A627, 0xFD13F380, 0x12F85307, 0x7056D4F6, 0xF70157A1, 0xB1BF5605, 0xE06514DD, 0x46A76E0B,
+0x29B63CF5, 0xF49E2692, 0xD42723BD, 0xE489B80A, 0xB04359CF, 0x84DBA8D7, 0xD6EC74A9, 0xF06C28AC,
+0x16A2C28E, 0x3EC00278, 0x47BB3288, 0xEADC524A, 0xD0D23E9C, 0x61A47B6F, 0x4D269AFE, 0xC900B24F,
+0x56444088, 0x778C5F46, 0xEBEC411C, 0x59FD2DF3, 0x1E826D6B, 0x520144C9, 0x07A3D481, 0x6B1068E3,
+0x074E3072, 0xFDE25B8B, 0x25C55A58, 0x6BD45143, 0x9724CE37, 0x771A2DAA, 0x8B781700, 0xDEA9126D,
+0x3055CE17, 0x5E5A06CA, 0x5DAE7768, 0x2181E8DA, 0x53A7E486, 0x63DAB565, 0x86780B2A, 0xB5AF185C,
+0x3089D64A, 0x0DC870E1, 0x05F7BCC3, 0x711AF03E, 0x9F656125, 0x5157A522, 0x9DCB60A9, 0x5E65C504,
+0xFAF9A0FA, 0x026B74C0, 0x817DF6EA, 0x655BABB3, 0xB0D267B4, 0xC2BD1383, 0x23AE3546, 0xB1356DB0,
+0x7D6E6E11, 0xBAC8D9F7, 0x6855827D, 0x1683312A, 0x0CB67502, 0x71C1A4CA, 0x30213F38, 0xFAF94014,
+0xCEB0CBA6, 0x620D11FF, 0xB2537060, 0xEF4A086D, 0x2442137C, 0x86B30161, 0xE5E0FD59, 0x302C54B6,
+0x09DD4A13, 0x1F6AB467, 0x3D1FB2B8, 0xE887CD27, 0xA51AD1E1, 0x056922E9, 0xA3B2AEF3, 0xCD120CB3,
+0xDCAE5B60, 0x8957BDCC, 0x8182EFE1, 0xC2FE39DD, 0xB338660C, 0xD915FBC5, 0x824977EC, 0xD0A16B2D,
+0x6C35705D, 0x42FC9B2D, 0xCC6AD747, 0xAEC4604F, 0x6422B323, 0xDE703C07, 0xB9DBD03D, 0xA5E6EE25,
+0x1552C578, 0x2ADA5112, 0xE7B2A451, 0xE04F9FDB, 0x702A370B, 0xB49ED4F0, 0x0F0881C7, 0x2FE8A1CE,
+0x9C5FE0C9, 0x2B852575, 0x424B0850, 0x02F05098, 0x35296A4A, 0xB4DEEE50, 0xE21EC137, 0xC41DF377,
+0x9B2344FE, 0x82347581, 0x0EEC003E, 0x94EEE367, 0xA75731B6, 0xAA4A9AED, 0x40ACBD53, 0x72608599,
+0xC9D6900E, 0xEEA0220D, 0x774390F1, 0xA792E3B8, 0xC201B206, 0xF71FFC19, 0x4EF49CDE, 0x0AAFA8AF,
+0x64FD6B9F, 0xBDDD9C28, 0xEDED1081, 0x87D05EA3, 0x611A0644, 0xA2C96BFF, 0x4CABCC41, 0x98ED1F34,
+0x197E462A, 0x8A025258, 0x58E73EE6, 0x2E8FBF49, 0x68499731, 0xB3642B29, 0xE7B1C091, 0x5BE646AF,
+0xAC5B2D48, 0x9734B71C, 0x3399A4B5, 0xF7EE85A5, 0x64243602, 0x96E5DA70, 0x4D062F64, 0x4E7429FF,
+0x901F524C, 0x11CDC792, 0x0EA5D848, 0x5C21965F, 0xCA3302CB, 0x1CC756CA, 0x6DE8CA7E, 0xC996FB20,
+0xE10A7AAA, 0x376E9AA4, 0xA0E78932, 0xCCE808C6, 0xB7879970, 0xC715814D, 0x6ACBE624, 0xFAAC2C6E,
+0xD7F5336D, 0xFF849FA8, 0xBF284DFD, 0x6F25D7C2, 0x5D7877B5, 0x89F63A0D, 0xB1FCFA3B, 0x37C12F44,
+0xC031AD81, 0xF826EE49, 0xB78658CD, 0x9968ED0B, 0x33B338C6, 0xC935B6A3, 0x3B2BFD7F, 0x60D0DC6E,
+0xAC9F20DB, 0x0B674B27, 0x6008BCA2, 0x0F1BC901, 0xC262E066, 0x0D95EE6E, 0x73B9EFA5, 0xB0DFEB29,
+0x83A8E7E1, 0x31751206, 0x4CF2BFD9, 0xE28A7B60, 0x980C4E3D, 0x36843121, 0x20A4385C, 0xA3814940,
+0x49FDB570, 0xC9B0600F, 0x67AF57CD, 0x6DC54777, 0x2E0BC7D2, 0x5008801D, 0x60DCD20E, 0x061F31CC,
+0x65306AB7, 0x135B130B, 0x5C9D852C, 0x2EAD403C, 0xF5EE1297, 0x73B0B812, 0x523B56B5, 0x5DBB1917,
+0x577B95C0, 0x6FFF516B, 0xF02B39B8, 0x65079E59, 0xDB666E7F, 0xA5398430, 0x657302CE, 0x82849229,
+0x9E114184, 0x7F0FE07D, 0x5FC5D295, 0x851E2138, 0xE0BC3335, 0x04313A55, 0xF1D6C3A6, 0xDE0D38FB,
+0x3028681A, 0x88CA8F8F, 0xEEA85A52, 0x82E64815, 0xD9F9DB4C, 0xE05EA64A, 0x5817CF46, 0xFEA15D26,
+0x6D1036CB, 0xB93E13E7, 0x62A25EE2, 0xE40071C2, 0xB7A9D99C, 0x8C13349C, 0xDC888FC6, 0xEFF977BC,
+0xE095C75D, 0xDF6A5151, 0x37EA0AD0, 0xD75CC241, 0x6B113358, 0xFEB97FF4, 0xD36C6EB0, 0x8B40F207,
+0xFE581956, 0x9BC639E5, 0x7238983F, 0x5DC89076, 0x35DF2FA9, 0x4D51A214, 0x2D6AC8C9, 0xE0D7EA4B,
+0x071A4E11, 0x0C5D313E, 0x701427CA, 0x11FC8373, 0xE09B802C, 0x160B75B9, 0xD1D60D3B, 0xE6F88749,
+0x661BAEC2, 0x31DBD429, 0x5AD5AA49, 0x2DC448B9, 0x7C271827, 0x4273A8DE, 0xFDDFF26A, 0xAD31CBBE,
+0x969B6E66, 0x10E0F977, 0xEACAF207, 0x5C124D5B, 0x29680874, 0xEC8B86DE, 0x5708E28F, 0x1DD797C2,
+0x1C193DCF, 0x45BFFB6C, 0xBFA126EF, 0x112B391F, 0xF88FE60B, 0xDCA6466B, 0xC0194BAC, 0xD1A031BA,
+0x07994567, 0xE3080CCA, 0x6B33AC4F, 0xD1CFBA32, 0xCE78F521, 0x2044DAAA, 0x5F9B8285, 0xC07DAB4F,
+0x0F5B1CAC, 0x85526F7B, 0x11DD71E2, 0xE83C3696, 0x2AB81918, 0xA8F36C1D, 0xEC1A2422, 0xAC2D8709,
+0xD0F52C54, 0x006E1409, 0x90351B3A, 0x92D2225B, 0x2CED280A, 0xAD4ECBF2, 0x720DD83B, 0x28D29E33,
+0x37154D0C, 0xFEF9361F, 0x1A7307D2, 0xDAACDC87, 0xF5B5239D, 0x8E654172, 0x85F6E0FA, 0xFB588FCA,
+0x041B8289, 0x63056665, 0x3B8E572A, 0xF8A6A6DC, 0x5B2A791C, 0xD6E35E02, 0x08C7052A, 0x441903BF,
+0x253754B8, 0x4C656A5D, 0xAA350C1B, 0xBD1CB2FB, 0xF0A13B3E, 0xA654B363, 0xB19E3F42, 0xEBE2FF5D,
+0x5A236AB8, 0xE26DA837, 0x897FFC7A, 0xC8E8A26C, 0x494392B3, 0xADDC09CD, 0xF701CA4E, 0x2B7578B2,
+0x737B0CE5, 0x4DD1BAD1, 0x18855015, 0x8CA40128, 0x6FAC41C3, 0x6085F1F0, 0x0F81FAFF, 0xC507DD30,
+0x3495F4C9, 0x99134046, 0x122B23A5, 0x42360A4A, 0xFC4EBB73, 0xF2E13E3C, 0xCEF17961, 0x32885E13,
+0x212C57CD, 0x5E5C9203, 0x9DC5F90C, 0x3E8D2DA5, 0x1B8ACBC3, 0x964BD320, 0x26233CCC, 0xA3912EFE,
+0x61AE56F5, 0x31D5E10E, 0x1C328515, 0xA3276FEB, 0x71AE00BD, 0xA53882EE, 0x96478AE5, 0x5156418D,
+0x201CD9E9, 0xE72DDB04, 0x4FCC1AA3, 0x23096C17, 0xD2B0AC2D, 0x7295C3E9, 0xE8BE06B5, 0x49B0AF31,
+0xF81452E4, 0x02A5DBE1, 0x6DED2789, 0xE817C69A, 0xD7F3754F, 0xB739C197, 0x35CE4231, 0x4D4143D6,
+0xCB5B05EC, 0x44B58443, 0x1CF34D21, 0x4B291058, 0x5F9775B7, 0xA57B0B7D, 0xFA0E5DD1, 0xC9FAD368,
+0xD0B11478, 0x1F8DA6A4, 0x11ADDC02, 0xE09322BF, 0x05D44AF0, 0x523A305B, 0xBA7F483C, 0x54351430,
+0xD29A4979, 0xB9FBE435, 0x2DB188AB, 0x49DFDB56, 0xCCBD9674, 0x614D8539, 0xACAE569C, 0xCCE5C24E,
+0x9825D95E, 0x3F12C811, 0x8BF4F0B6, 0x5C1AB2E7, 0x1B4AF697, 0xCA7293DC, 0x170850EA, 0x63A69026,
+0x8E243594, 0x3065D748, 0xF58E7E79, 0x97F4EEA5, 0xC3CBCEE1, 0x08DD2ACB, 0xA4FEAD27, 0x7CB08ADC,
+0xDBC25A04, 0xA2E5DBE2, 0x5EB46BBD, 0xDED19725, 0xD84A31AA, 0x97D75FEC, 0x1C0D8C9B, 0xE08508F1,
+0x68E02E3F, 0x422CB29E, 0x03C74DB8, 0x292EE9C7, 0xC79EC2C8, 0xEC0E01CD, 0x008900CE, 0xBA3D759D,
+0x82D04907, 0x26D55DED, 0xDD48428B, 0xB327A53D, 0xA53B095E, 0xECD18820, 0xF33B4B73, 0x5B715A61,
+0x06CABBFE, 0x4D9D2A3B, 0x8A8DA9D2, 0x5725746C, 0x89B7E1DF, 0x606C276A, 0xD010604E, 0x325F60C8,
+0x35501323, 0xE6FBF10D, 0x66A7384F, 0x956CFE75, 0x5455EBDB, 0x03C3DD66, 0x9409D921, 0x26E41C98,
+0xBC6A1C63, 0xC62E7DE0, 0x6AD40068, 0x90175B73, 0x4E28D937, 0x7BB5D1CE, 0xE2030C8D, 0xE9810D1E,
+0x89066B1B, 0xDB67AD86, 0xD0E43030, 0xDC9E17FD, 0x5D84463B, 0x47579248, 0x7053B0C2, 0x7194CCF8,
+0x461D0B35, 0x73F9AF98, 0xAAD433B6, 0x642E38E7, 0xF05EB6BE, 0x6160E917, 0x4CB6B8C9, 0x8E042EB5,
+0x5193847F, 0x7F8221C8, 0x94C28804, 0xEC647253, 0x49951C21, 0xAB40DC07, 0xFB26CAE3, 0xD6F0B0C5,
+0x8570E138, 0x2A3ADD72, 0x81985AF2, 0x271F8375, 0xECA68C63, 0x21214398, 0x505E68EA, 0xE734EC76,
+0x741D7673, 0x3B3D8992, 0x5716E5DE, 0xC85D48FD, 0xF2207A80, 0x2B54E610, 0x6207F7F7, 0x9D0AC41E,
+0x3F9B6620, 0xAC6265C5, 0x186D19F5, 0x2958A245, 0xF344B045, 0x98626802, 0x24D8D908, 0x17E86EA6,
+0xCF2C9FE7, 0x9F3901E7, 0x705C204B, 0x772B4487, 0x3356B789, 0x2DAA55A5, 0x07B3C042, 0x62E01FCC,
+0x1FB6807D, 0x4BA839FD, 0x3DBC2068, 0xD3AF185F, 0xB2BB6D23, 0xC8855052, 0xAE396866, 0x6ABB8EAB,
+0xB271E198, 0xFCC97E97, 0x2EFB239D, 0x36497538, 0x982D45BB, 0xB7313141, 0xA96C73BD, 0xB554DB43,
+0x185295C8, 0x1F4617F8, 0x13517266, 0x55DC5701, 0x111CD947, 0xA0739068, 0x189F682B, 0x69CBD159,
+0x09FEAC66, 0xE9B9031A, 0x39C2E7B8, 0x4B027FF1, 0xD63613C3, 0x4A035918, 0xDF983E35, 0xCBCB90BE,
+0x7ED0295D, 0x5E962959, 0xE0A6788A, 0x27486477, 0x94C4001F, 0x1E839175, 0x07F598BD, 0x98F33ECE,
+0x2620AB16, 0x534C57D3, 0xC84F2CF8, 0xBB62FFA1, 0x7060D94D, 0xC019FDF5, 0xAB4C8E28, 0xD28D3812,
+0x8C194F08, 0x87F957FE, 0x040CBF27, 0x97F519B6, 0x1828106A, 0x9E940BE3, 0x55191844, 0x941F14EC,
+0xFC2404D3, 0x0A190813, 0x7434DAB8, 0xE7C51CE3, 0xBDF97C05, 0x47039BD4, 0x846772FA, 0x05965F7E,
+0x525DD107, 0x5E861B04, 0xEAF7FD5F, 0x5C62E8D3, 0x312B0B41, 0x9114D199, 0x967EAB40, 0x3EFBAD09,
+0x8785D5EA, 0xF92D86D0, 0x3F50AE89, 0x84B9B811, 0x986DDCDB, 0xFF5FA1C0, 0xE9F57225, 0x305C47F7,
+0x5E33F1D6, 0x4C9E6F6C, 0x1B81495C, 0xFD99C276, 0x691E3CAC, 0x25DDECB2, 0x9F1B0FCB, 0xEDF4942A,
+0x4EB56690, 0x8712B337, 0xDF5815C7, 0x5051B627, 0x31AEED1D, 0x09A681B6, 0x13F530E2, 0xC037D532,
+0xDAB82E51, 0x84612585, 0x46109BAE, 0xA1D634C7, 0x3332E59B, 0xB7999A27, 0x427C4A8E, 0x9FFFB3D7,
+0x62C35F49, 0xC5ACBA47, 0x072E7F8D, 0xF64B4E1E, 0x66A74226, 0x33F7AC75, 0x64FB3EA1, 0x08A88E2B,
+0xABAA0E4D, 0xE00F461E, 0x0685E25D, 0x0AD61253, 0x4C5F7727, 0xDA7DA439, 0x022322AB, 0x11C717AF,
+0xA936C14B, 0xACE0871C, 0xE258467F, 0xD78B2230, 0x7A63D61E, 0x5388F3CE, 0x150F5E20, 0x3BBE049F,
+0x5679EFE6, 0xD2177102, 0xC5B59990, 0x31700357, 0x8900913F, 0x671341FE, 0xD5129E2E, 0x21C16041,
+0x551496E4, 0x21520897, 0xE93BF9B9, 0x6AD185B5, 0x4BA00B23, 0xA2F24410, 0x6327A08A, 0x8086A271,
+0xD16B2B2B, 0xC7299D0D, 0xBFCE1217, 0x7ED89C79, 0xF267B060, 0x17CE18EA, 0xC750B386, 0x72244ED2,
+0x165043A6, 0x235BA50F, 0x80C24F1C, 0x03C1B184, 0xCE1109ED, 0x16A4ABCF, 0x2278E20B, 0x027B6C1D,
+0x41F81BDD, 0x514AFF2E, 0xADE88BDC, 0x1F90A874, 0x424F02A0, 0x701F008A, 0xFE7A2B3B, 0xD767D03E,
+0x8D8CEF0A, 0xDE883286, 0x90E76643, 0x766FDFCF, 0x049A4905, 0x7509A39B, 0xE16EA5C0, 0x4976DF58,
+0x7A944BDD, 0xB50067DE, 0x9861FE39, 0xC627E97D, 0x9DF30A0F, 0x47665568, 0x0ECE7AFE, 0x9C95FB60,
+0x16C4B9F6, 0xC0317322, 0xE7394A3E, 0xCE097C83, 0xFD08087D, 0xEF324E3A, 0xF2C0B3D7, 0xB599EC63,
+0x2EB38A55, 0x289EFAFF, 0x995E3C54, 0xE05D283F, 0x275ABE67, 0xFCA61686, 0x81E76960, 0x1C34BF63,
+0xC4C9AC33, 0x4993778C, 0x767FDBE5, 0x53FE3E73, 0xAC6A424B, 0xC9810E98, 0x6CFF8606, 0x09B85ED0,
+0x70D96206, 0xEE556D74, 0x076586DA, 0x88113E12, 0x38FE5AAD, 0xA573CE85, 0x78F6AD04, 0x524A4BC3,
+0x1ADDE001, 0x24580D8A, 0xC5E458BB, 0x273DF0A9, 0x4C592F51, 0xA6F3F6F4, 0x19738E96, 0x9AF65527,
+0x9078CB8A, 0x620B3BC3, 0x8EE5041F, 0x9BCF2225, 0xC383220C, 0x8F7CB79A, 0x41494C19, 0x7630C9FC,
+0x68540EFF, 0xB04383AC, 0xACDE53B9, 0xB1733217, 0x15E0FB46, 0x412A472B, 0xFD9E45CD, 0xAB136B15,
+0x84A4A949, 0x3C966EAD, 0x9BA98186, 0xA28A4A7C, 0xAD245567, 0x8E54FA96, 0x13E0098A, 0x99E8B848,
+0x5A4AD773, 0x00836ADF, 0xA7F0E372, 0x2231684D, 0x6986578D, 0xED61C5AD, 0xF2C5F45C, 0x351ECE9C,
+0x36FBA8DF, 0xA1F00289, 0x17A63A63, 0x1ECE8098, 0xF1F140C8, 0x1EFC3932, 0x1621D761, 0xAF3E50BF,
+0x90BF9F9E, 0x49D891BF, 0x2FD95FA3, 0xA6B320EC, 0xD9273B29, 0xF5DC28AF, 0x953668F6, 0x84627C5F,
+0xD9E6146B, 0x4240ECE8, 0xA0F4A2CB, 0xD175FE96, 0x3478C088, 0x9EF1BFED, 0xC95E932F, 0x5787E0D2,
+0xDF56AA5C, 0x03B011F6, 0xB05D5756, 0xF9A93370, 0xAA04CC1B, 0xEBB234F6, 0x2C8BD332, 0xBA1299A6,
+0x6BA4F080, 0x09D088A2, 0x420CE06C, 0x9501D478, 0x6D15831A, 0xF964B070, 0xEC285449, 0x5FC6F79E,
+0x0B1ED49C, 0x4156D63E, 0xC5ADA495, 0x0FD23325, 0x5B279989, 0x80095A3B, 0x20E31992, 0xBD8DFCD3,
+0x4837DD91, 0xF3EB4AAA, 0xB17B6629, 0x6B80240D, 0x90180761, 0x1F82A462, 0x33F7F739, 0xBD2D1B06,
+0x1165EA93, 0x36D2484D, 0x7E287BAC, 0x33C25D7E, 0xC3840CC2, 0x46FBB402, 0x1CB2F14A, 0xDEAC0228,
+0x9A882841, 0x93D05071, 0xF3424CD7, 0x76676EB1, 0x481D09FE, 0x604B3D47, 0x6C4AB50E, 0xB7821167,
+0x91ABF580, 0x3FBE7F9A, 0x1E95513F, 0x5DFCFC6F, 0x011D08A0, 0x6F0CAB9D, 0x6AE43007, 0x025A2A75,
+0xB808E95C, 0x669126AD, 0x31DD35A6, 0x07F6E110, 0xA9437AAB, 0x57F69018, 0xED06776C, 0xCBDDE3CE,
+0x8CE79253, 0xC98B5A52, 0x7B81DEC6, 0x72112994, 0x06505B88, 0xD5B120D0, 0x6B327C2A, 0x44B64480,
+0x09CFFA51, 0x668F7E0C, 0xD4B1E6BA, 0x65C2E7D8, 0xCEF856B2, 0xF379F622, 0x6071B74D, 0xAFD68A8D,
+0x779BEA9E, 0xBAF257C0, 0xAA50369A, 0xA7F749A8, 0x62FCE462, 0x2EF6E411, 0x93204CC8, 0x707E8E1F,
+0x4E2975B6, 0x4114FE35, 0xE03D5173, 0x7C63A868, 0x9F483D57, 0x8356C13D, 0x31FBFEA0, 0x5BC3A19B,
+0x1837BA9C, 0xFD13680F, 0x39D6C06C, 0x11268B22, 0x2D50BAF7, 0xD9499657, 0x569C9003, 0xCB31D138,
+0x1E92625F, 0x129B9FC8, 0xE3C233EB, 0x12B5B7EF, 0xDE2254BA, 0x6A919F31, 0x2815A145, 0xD7FC952A,
+0x1BF18743, 0x52A70819, 0x13634747, 0x5FABC4A9, 0xBFA3455C, 0xEE9250C7, 0x4D568800, 0x4F3C742A,
+0x0FC2612E, 0xC64830D5, 0x4E04376E, 0xC8598CD3, 0xEE657EBE, 0x0EB85C07, 0xFD53DF72, 0x8320F0C9,
+0x35421A0D, 0x4B400622, 0x5A198271, 0x511EF2FC, 0x2AC2E1F5, 0xBE2B1377, 0xEAECCB54, 0x780CF6C6,
+0xC2BAAC56, 0xCAF3A17D, 0x5DE86596, 0x04EE1728, 0x9A5D2C37, 0xDD181B75, 0x2DAD8AA8, 0xE7807B18,
+0x72F8C39D, 0xC8B5F2A7, 0x150CEF0F, 0xCE5A24AA, 0x6056FE04, 0xE7982AA5, 0x42DCE76B, 0x3F93C5BB,
+0x22D8B8A1, 0xF6B783AC, 0x9EE5AE65, 0x6FF03BCB, 0x6F4140ED, 0x013F0C6D, 0xB29F0084, 0x12092B9E,
+0x63563C99, 0x481180F6, 0xBDA30A4B, 0x9F558C48, 0x644BB530, 0x5FB9FC2F, 0x9AF2D2AD, 0x5AE79610,
+0x9784C957, 0x3A2169E2, 0x9950A1B7, 0x05F17DEE, 0x5DA301EE, 0xEACAFDAC, 0x5FB09FC9, 0x11CA55A9,
+0xA8E81F2E, 0xC6E97B8E, 0xF28B3E86, 0xC179886C, 0x3692DA04, 0xF8B4EAED, 0xFB2ACD1B, 0xD203EF77,
+0xD7A82785, 0x0C606DC9, 0x7FCE1B58, 0x8E70723C, 0x3B9734FF, 0xAEE10857, 0x72986833, 0x58D7300B,
+0xDE42D1A1, 0x88566EE7, 0x4911A1D0, 0x12E7A147, 0x9045E852, 0xAE11663D, 0x98472928, 0xC1CD17A9,
+0x6AB332C3, 0xC958CA0B, 0x391EAB62, 0xF191161B, 0x6FE2ABE2, 0x8FBEA2F3, 0x70D3AF02, 0xDD854B1A,
+0x2E651BA2, 0x86457EFB, 0x13EA04E5, 0x28EFA236, 0x1F496678, 0x33C40368, 0x6AD81313, 0xC6D31E51,
+0x44D17DE0, 0x4C0CC49C, 0x851D7BB6, 0xC835A5B9, 0x14211202, 0x169EB403, 0x75DAAEAC, 0x7B24797F,
+0xE5132113, 0x832A638E, 0x74ED773C, 0x4BA9607F, 0xAA23B5D4, 0x3DE4FEA4, 0x363B5EF2, 0x2AB1F670,
+0x0B9B91D9, 0x530425A0, 0x44480C4A, 0x0B1AE1D8, 0x8C67EC82, 0xD06C7645, 0x4B71374D, 0xB9FFDCBA,
+0x6B2CEE08, 0x4032E2A4, 0x396238FB, 0xECDE467C, 0xA35439A3, 0x18B96C5F, 0x6089A79E, 0xD2459383,
+0x86505E58, 0x19E4002E, 0xFF11D333, 0x433DD514, 0x5610E496, 0xCB5D99BB, 0x16D22E7F, 0x9F1E41BA,
+0x9CA99ACF, 0x0C45E866, 0x1F908692, 0x671DACE7, 0x8A468DE1, 0xAA02B81D, 0xFBA1A255, 0xB4822ABB,
+0x7A9E6E8B, 0x27FE6F86, 0xE0C397FD, 0x0C68389D, 0x98B69A7C, 0x82AFD2B7, 0xE7BFFD3E, 0xDF52ED63,
+0x46537D46, 0xE768A273, 0x9C0F5128, 0x0434E7D0, 0x894C1E78, 0x97166CB9, 0x94297978, 0xB51954B4,
+0x51174F8D, 0xE18A8562, 0xF14F669E, 0xB2F11A01, 0xECE8A9B8, 0xFD2214AC, 0x725A05CA, 0x1261F3B8,
+0x469CE8CE, 0xA76AD56F, 0xAEF0F99E, 0xD8645AD9, 0xE5A53E76, 0x57BF502B, 0xAF46A1CD, 0x148FBBE7,
+0x712BFD0A, 0xAA6A10F4, 0x7B363DE1, 0xFF695D8E, 0x8FF4DE65, 0xF8C96291, 0x08EC27CB, 0x0E378ACB,
+0x6E0D1491, 0x8F4C91CA, 0xB5E53FC4, 0xF7240E91, 0xC1832498, 0xE3ACBEDF, 0x334F5E2A, 0x474045A8,
+0x285ED46A, 0x0813C149, 0x18C2CA55, 0x67223272, 0x78895E2C, 0x6FA32EDF, 0x94B452F2, 0x94F9A114,
+0x0DA581E4, 0x6FDB7084, 0xFB1EA9E7, 0xA3D5B02E, 0xD0EDA2DA, 0xF64821DA, 0x12A9C136, 0x57954577,
+0xCF9AD25E, 0x8AB6F482, 0x7DABD45E, 0x2C05972F, 0x80DAFEC8, 0xA5CF4423, 0x09F3B22F, 0x1BB94BFA,
+0x74B1BCD8, 0xC9C4EED5, 0x67BEC265, 0x0F4E84C5, 0xA600A54D, 0x238C8C3C, 0x9224D124, 0x0867CDC4,
+0xA7D5B5B5, 0x10AD34AA, 0x9AF2AE2E, 0x048E2216, 0x548122C9, 0x86EB4662, 0x5C023867, 0x0572EF75,
+0x8DB01DDC, 0x087F359C, 0x0152884B, 0x1CA52DB2, 0x8D1B9919, 0x0FA431E5, 0xCE72A2E6, 0x4797C93A,
+0x8C78AC64, 0x9D32BEFA, 0x5E633B0F, 0x464395F7, 0x7FEB88EC, 0xC43A5559, 0x5A34A8FD, 0xA2F1F4F3,
+0x247580AF, 0x7674AAFF, 0x61085692, 0x5B0357E0, 0x7321C252, 0xD1138803, 0xF3F57F56, 0xE7E95F00,
+0x12065207, 0xCDD4C5E3, 0x22226389, 0xD121083B, 0x0D1D0560, 0xD1070E35, 0x5D6F8F8F, 0xDE1C0EF2,
+0xA9B2A5B4, 0xFC7DA784, 0x6EE7D943, 0x29CB1F4E, 0x64836E76, 0xF07D20B2, 0xEE703CE6, 0x34788309,
+0x8D71C7B5, 0x36F17A5E, 0x61E1790F, 0x4ACC83B6, 0x278F255E, 0xDC61B632, 0x332A2E99, 0x13D56E92,
+0x4716B1CD, 0x0C649D57, 0xD13EAF9A, 0x5096627C, 0xB08A057D, 0x3769C151, 0x0047DF37, 0x21BB7B7D,
+0x12D9F07D, 0x336A1E3D, 0x0AF54A21, 0xCB354440, 0xC6486FB6, 0xCE30F25A, 0x5E891E7E, 0xAE97257A,
+0x31E1669D, 0x504E6165, 0x81FCD56C, 0x58EDAF56, 0x02004B6F, 0x75A4358D, 0x634BBF77, 0xBBAA5A51,
+0xD8A50514, 0xC3C10CC7, 0x79D88D3B, 0xECBF422C, 0x13F52DB4, 0x8122EA3B, 0xFDCEF453, 0x3575D861,
+0x92253DA4, 0xBBF49743, 0xBBDE1929, 0x35BB4212, 0x301689A2, 0x2E058C3F, 0x127EDF7E, 0xBD91500D,
+0x81C3D5F7, 0x94050973, 0x2208E17C, 0x2BA5D285, 0x22803A6F, 0xA99B9BD5, 0xE8A3AB85, 0x722C62C1,
+0x2E3697F7, 0xFD849BC2, 0xE81730CD, 0x84F3ABCE, 0x0AA3F57E, 0x4EA4E8FC, 0x7738DBFA, 0x1DB9B523,
+0xCE10CEB5, 0x40041932, 0x28A6E965, 0x272F5CB8, 0x5058337C, 0xB24C35E6, 0x28DCF258, 0x84601712,
+0x6A343CDC, 0xC0AD3B5B, 0xD404C163, 0x0D6B0AED, 0x8B436C5B, 0x4C86C694, 0x5BC0B543, 0x1F562E2F,
+0xD42B9B3A, 0x61810284, 0x99236E0A, 0x75A5EE02, 0x0BE3171B, 0xCF41E29F, 0xB16A231B, 0xC0DAE878,
+0x4D3DA4EE, 0x40EAE706, 0x54585DCF, 0x5B45806F, 0xEF3B152F, 0x379C8C31, 0x48B6BCA8, 0x9D2FF120,
+0x2E9AE717, 0x71670C93, 0x371BCFBA, 0x95D09D23, 0x3A98701B, 0x36F40C80, 0xCD8135B9, 0x7CE43245,
+0x28EEF7EF, 0x3C42D987, 0xC5B86715, 0x6FF8BDC6, 0xD24B457A, 0x51D3CF8F, 0x4397628D, 0x45C2B685,
+0x29540F8F, 0xA9318CDD, 0x7D29F381, 0xE6C327A1, 0x5D7D42A3, 0xCA51E4FC, 0xCA4DD465, 0x8CA046C9,
+0x90B75441, 0x004273EB, 0xD92E7C6D, 0x47BCAEB8, 0x37DBB4F5, 0xBE1A88C0, 0x751EC376, 0x738E08FB,
+0x0A60FA08, 0x1C968066, 0x8B8F273B, 0x91BB4CB2, 0xB4CA1199, 0x795DE8C9, 0xDF5BD804, 0x35A3568B,
+0x40C63911, 0x97F5E15D, 0x534D2019, 0xF955E7EA, 0x58C659B2, 0xEB03F821, 0x4D570AB7, 0x1E625AF1,
+0xE6FB8EB3, 0xCDDBC337, 0xE3977F8E, 0xAC7C0700, 0x8D4A5771, 0xF82C82E6, 0xD2CB0934, 0x32691BF7,
+0x25DBF04F, 0x52923B3B, 0xDA38D70E, 0x826E86D8, 0x9A376BFC, 0x9927DD3B, 0x90275D71, 0x802802AF,
+0x580ADE68, 0xE570C7D2, 0x2F686D44, 0x5B7795E6, 0x68C76722, 0xFAC03E70, 0x1460158D, 0x1E1A2245,
+0x1E219038, 0xEBF1187B, 0xAC98BB68, 0x467AA429, 0x29419424, 0x02406778, 0x3F11F6FE, 0x7E196147,
+0xC05F6C08, 0x025376A2, 0xDC2DA333, 0x250EAEEA, 0x446CDFAF, 0x66DCEEF6, 0x11B8ADC1, 0x910E70D3,
+0x0149147A, 0x28DC5414, 0xA65154BC, 0x49B533B3, 0x6E103861, 0x19D7D13B, 0xCFA439AF, 0xF702F0BB,
+0xAED55275, 0x6190C7F0, 0x9E132B33, 0xE9D9DAB3, 0x206214E7, 0xBF52EB79, 0xF878E417, 0x6D4B61B5,
+0xAA045C41, 0xDA403AF4, 0xC378A220, 0x06E1571E, 0x64016070, 0xB3FDA70F, 0x33617751, 0xB6F5F4A8,
+0x90EA21F0, 0xD0F2B2A5, 0xF0A1747C, 0xB135B369, 0xD67FE964, 0xBE8A7B2F, 0x071BE1A0, 0x4447D8B9,
+0x8B441902, 0x2646ABA1, 0x1EFE8EA0, 0x86F970FF, 0x3DDE18CA, 0x80A00320, 0xD1E2AB07, 0xC784EF9A,
+0x9F550D64, 0x8C69E19E, 0xEC156465, 0x9A13C756, 0xB4592520, 0x410881A5, 0xE85B21AA, 0x27FBB5A9,
+0x256E88AE, 0xEB3C8BB2, 0x9CE6A9A4, 0x23D64A5C, 0x6A807B35, 0xF92862F7, 0x84C0AD29, 0x382763DB,
+0x790BBA82, 0x7E6CF449, 0xB9479E5C, 0x84576270, 0x98AE4A1B, 0xEC50B177, 0x2885E71D, 0x32E500F0,
+0x69BDCEEE, 0xBDA7AD08, 0x9BEE8D27, 0xB3056B1D, 0x6C836E81, 0x302EB1C2, 0x7EE88808, 0xBA5F6F97,
+0x737FAF58, 0xFAEDD6D6, 0x8536FDC2, 0xEF0C67C3, 0x687666A5, 0x38992FF0, 0x542CF4F3, 0x50594BA1,
+0xE50BE34E, 0xA9E284C0, 0x2F74C8BE, 0xC88528F0, 0x190B30A0, 0x54F5109D, 0x35B2E962, 0xC346FE9F,
+0x77E86889, 0xE34C4A72, 0x13B88C27, 0x5D072AE1, 0x4B00F9F8, 0xED8318E4, 0x785E55EC, 0x9795F6F8,
+0xB5DB56F6, 0x8001EFDD, 0xA13258F4, 0x2275BE2E, 0x0E69AD9C, 0xF8ECF67D, 0xBD940791, 0x1576CDC7,
+0x303F1B8B, 0x8CBF4841, 0x6E8E6B6B, 0x8777B854, 0x3C9E46D5, 0x9F97CFFD, 0xAA74996A, 0x61E16DB8,
+0x29C74AF1, 0x524E919F, 0xB9683CEB, 0x2ABDCA26, 0x2C8AF864, 0xC9FC66FD, 0xD9616113, 0xA82FE6D3,
+0x464E1317, 0x4676393C, 0x8C75C1D4, 0x7606D6D7, 0x255E45B7, 0xD8DFFF30, 0x9C22E3FF, 0xC017E50E,
+0x1DBC9BC3, 0xEAB73F15, 0x5F1D30C7, 0x284617CC, 0x8F493575, 0xCA3C0FF4, 0x763F5D63, 0xB90CA38B,
+0xD6667DD8, 0x388BB80E, 0xA9FDD954, 0x75752F86, 0x01E913C9, 0xC87F06D7, 0x6A5B4454, 0xCB612C79,
+0x68D3B1A7, 0x8003BB39, 0xE419BD39, 0x16279680, 0x201D2610, 0x221B6D57, 0x85797920, 0x21EC4DF6,
+0x9654B449, 0x4FA040CC, 0xC4244711, 0x7A126F3D, 0xE7ED8602, 0x3D6C7DE5, 0x83F608A3, 0xC3FB551C,
+0x8D3FB98E, 0xEFC1C71F, 0x49F75614, 0xC73F6C8B, 0xC574E790, 0xC0D6C072, 0xD0E5B96C, 0xCB75401B,
+0x729C0AE3, 0xC56F087B, 0x1C69174E, 0xD66C7E6F, 0x27CB5328, 0x3D3A2DAD, 0x87460DA9, 0x13620D8B,
+0xB092DE75, 0x60E80C34, 0xD619535B, 0xF6F0A531, 0x116BCFA3, 0xDC071AC5, 0x7F061ECB, 0x9FB96B28,
+0xC8B7F246, 0x7ECABC18, 0xE35F0EC0, 0x948FB989, 0x6178D8C5, 0xD3072473, 0x87A3B462, 0x8CA2685B,
+0x2AF97EF3, 0x67CF667F, 0x3311AE61, 0x7C64E873, 0xA9C2A3D0, 0x9CF31F05, 0x6FB55B23, 0x5D73B68D,
+0x756F13DA, 0x6F059771, 0x34D2D8C8, 0xF847E25D, 0x8A691125, 0x8A893CF7, 0xBB8ABE21, 0x16FD9427,
+0xCFAE680B, 0xB70BBC0F, 0xBA239E51, 0x72C719BF, 0x26914258, 0x23CC243A, 0xEED59174, 0x093E5B92,
+0x3D4333F5, 0x3AFD712E, 0xF3881598, 0x6851D5F9, 0x6FDB0082, 0xDABB821F, 0xB78FDA1F, 0x48F5C15F,
+0xB79CA664, 0x173B1CD5, 0x7592E55F, 0x8E80A1DC, 0xCBED9675, 0xDCE8D3BA, 0x24E0FCA9, 0x5B634AA3,
+0x8AD5AC0D, 0xEDEC2F4E, 0x23E91875, 0xB9DB1E33, 0x175CF04B, 0x049A4195, 0x38CAAE06, 0x9D3BF8D9,
+0x47559157, 0xD34CDAEE, 0x24AA5A46, 0x07EB0D0A, 0x9B9A141B, 0x05E5D2DC, 0x888419DA, 0xBF0EDB0F,
+0x30104F8D, 0x2F4B0154, 0xAF91DB76, 0x1192C5EB, 0x4535E33C, 0x60BE986A, 0x4706568A, 0x37CB0CE0,
+0xC814B7F6, 0x89977AFE, 0x29EE49B8, 0x708B78FF, 0x4A9746B6, 0x75AAAB58, 0x59BF56E7, 0x761DABF1,
+0x80CF27DC, 0xBF602AFE, 0x974EA407, 0x4C7B9486, 0xCCEC2C15, 0x4EF6BB7C, 0x32E03D11, 0x48D3C2FB,
+0x5C999ED8, 0x637BD9FE, 0x07CBC5B9, 0x2319E4AC, 0x28A6AF88, 0xB5A5F0E4, 0xBC31598F, 0x987C8B32,
+0x0A2CBD72, 0x304910DF, 0xD33B6AE6, 0xD1ACCF4D, 0x6F3FC315, 0x66AA81D8, 0x2CF1118B, 0x77F60B8E,
+0x4EAFED1F, 0x9DEB1343, 0xB0143E4F, 0xA2A162E7, 0x2276F6B7, 0xB96546CD, 0x22FB9837, 0x05F56410,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+20
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+SYNCRC
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
new file mode 100644
index 0000000..e5fc1a4
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+output0 =
+0x9EE331AF, 0x2AB3B869, 0x980F930D, 0xCDD88511, 0xEB5F2CEA, 0x82FA1DC9, 0xF9B5C9EC, 0xB6F4436E,
+0x9A1522FA, 0x3225D473, 0x2187A0A3, 0xC5E34328, 0x1E41E4C7, 0x67B44A01, 0x89C038A0, 0xECBE2C9B,
+0xF60AA1BC, 0x7E4EAB53, 0x1736724C, 0x01FDCB11, 0x6AB1F4D9, 0xAB48D5C3, 0x85D71100, 0x6585F802,
+0x6CEFB57F, 0xAEAE2086, 0x13B991E1, 0xF3535B2E, 0xF983913A, 0x4CE284A7, 0x8A7D6255, 0x36B48680,
+0x7EA72D08, 0xA2779E89, 0x0D4DABF5, 0x78B63DB6, 0xCAB0EA2E, 0xB9A8BCC7, 0x9E2A0F46, 0x82C6EAF3,
+0xD530159D, 0xC5D0AAD8, 0xA09130D6, 0xD0
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
new file mode 100644
index 0000000..954f700
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xAAC7105F, 0x643D4393, 0xE192891C, 0x83A39F78, 0x2582F55E, 0x26CFD732, 0xC699EBB1, 0x8F2B74A2,
+0x936E735C, 0x13D70FB6, 0x24CE6E8A, 0x50347DF7, 0x48D5C2D3, 0x04785E58, 0x60CA27F7, 0x3170E8E7,
+0x3338715B, 0x3610C008, 0xBD8271EC, 0x72D3EF32, 0xDA1A389F, 0x95FA85E8, 0x9CD1CFA4, 0xAE1D7D96,
+0x3BFB9064, 0x55E28DC6, 0xF7F67F98, 0x38D000DC, 0x6BAD2E54, 0xB0E88829, 0x063A2507, 0x6E76FE1D,
+0x25997E16, 0x0CC0E59F, 0x08E51C73
+
+output0 =
+0x967245D0, 0xBAC4FC7F, 0xF1AB7C86, 0x491785A8, 0x10577FCB, 0x163CF7B8, 0x6B265A8B, 0xE1A8BB63,
+0x0F2A05D8, 0x37557F18, 0xCE7525C3, 0x0CA9387D, 0x17BE76D6, 0x5387FFDB, 0x693CAE17, 0x0798AA28,
+0x48A44F2F, 0x38140D30, 0xE5906BF2, 0x52AC2F8C, 0x33B2A4E5, 0x7B1515B6, 0xB9D55139, 0x5DDA644C,
+0x3E312F73, 0xB95C0A44, 0xE16BE459, 0xE290B588, 0x8777F5A9, 0x08B5EA39, 0x693B5812, 0xA82A2918,
+0xC978FBC7, 0x0D77A295, 0xF9F5A8EE, 0x090853F8, 0xFF4D8021, 0xE3A2632E, 0xE6CB43A7, 0x3827C151,
+0x5494AE3C, 0x0C9ABCD4, 0x934F1B32, 0x00
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
new file mode 100644
index 0000000..c2182f3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3924
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xC1BEAF7C, 0xAFB020F1, 0x79E73901, 0xC5EEBB6A, 0x214101FD, 0x028573E1, 0x74BB7698, 0xD7AC347B,
+0xA05C2979, 0x5FA47D1E
+
+output0 =
+0xB763ED53, 0xC6529760, 0x0414EC8D, 0xF708DD55, 0xCE7892F4, 0xFA2DC816, 0x09D4B196, 0x56675715,
+0x87FA9716, 0xA529691A, 0x23B239F0, 0x22
+
+basegraph=
+1
+
+z_c=
+15
+
+n_cb=
+990
+
+q_m=
+6
+
+n_filler=
+10
+
+e =
+360
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
new file mode 100644
index 0000000..bface0c
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+output0 =
+0x5E7522B1, 0x7FA3382B, 0xA908E1D8, 0x2642E58D, 0xB56933E6, 0x6405F0C9, 0xA77DAD7D, 0xEBC763C4,
+0xA09FA64C, 0x764B1E23, 0x5BF6257D, 0xAFB6ECC1, 0x54E294B1, 0x1B65DD34, 0x4B4C9B37, 0x2C7F1A31,
+0x6EF7DA88, 0x60A11548, 0x74CC96E2, 0xD19CD066, 0x6B0EBF4D, 0xE9E45047, 0xC5AF1B06, 0x940B28AB,
+0x54ED59F0, 0xA0
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
new file mode 100644
index 0000000..b63d4d8
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/12117
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xD7C9BB11, 0xFA37421E, 0x000A635D, 0xEC53B479, 0x64A76ABF, 0x73F9F150, 0xD898CDC2, 0x0DFFDC09,
+0x9C97913E, 0xBA8A4D3D, 0x408D6AC1, 0x277C1D48, 0xF4DA212C, 0x4605688C, 0x103AA068, 0x751A28D6,
+0xFE30E21D, 0xA9EAF00D, 0x8943EB0E, 0x136C8419, 0x267BD625, 0x001067
+
+output0 =
+0x5BD32C8C, 0xF917BBD9, 0xD5835701, 0x6462E24E, 0x3EFAC535, 0xE7245C31, 0xBCED3AC7, 0x0C17F702,
+0xA16C4028, 0x514AC1E2, 0x128792CA, 0xE701A245, 0xECAB018D, 0xC29A0562, 0x58F1C57E, 0xF55D550D,
+0xA7AA6F81, 0x516787A1, 0xCFAA7F82, 0x962C6449, 0x3282A6CE, 0xE2F13841, 0x86ED088C, 0x24601D7A,
+0x63A2D3E4, 0x57A1624A, 0xCF40E224
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+864
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
new file mode 100644
index 0000000..a746bba
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
@@ -0,0 +1,110 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/4740
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x50F16834, 0xF2C53996, 0x03020CA9, 0x3FE7C401, 0xDD82BA62, 0xABE166B1, 0x20567A55, 0x80D9DBFD,
+0x157E8623, 0xD0787894, 0x0850484E, 0x322CFF58, 0x0C9DB7E8, 0xF63C91F4, 0x456AE701, 0xFDA2026A,
+0x9AC638AE, 0xB31103F5, 0xDA853614, 0xCF27450B, 0x4BD897C0, 0x1A09B1C2, 0x4A45966F, 0x3ACA9167,
+0x7F77FF7F, 0x15D56E48, 0x8FA07362, 0x80BBED1D, 0xD05686E3, 0x02CEA3DD, 0xB3C0D1B6, 0x259DAE03,
+0x25977868, 0x1A150EF9, 0x6E64CC85, 0x18A1DE79, 0x526A7853, 0xD5DF5A64, 0x2348D0B4, 0x51285055,
+0x86B05C87, 0xC391340F, 0xF18BCA53, 0x8791813F, 0x50EE99A7, 0x6F2CA384, 0xAF5126BD, 0x2142AD0D,
+0x10541F50, 0xB35BF0C1, 0x70E31CB6, 0xFECF5661, 0x61880F65, 0xBC65B63E, 0xE33B131B, 0x6AF42AED,
+0xD7C04063, 0x78611438, 0x722192D8, 0xA2058194, 0xFECFD4A4, 0xC95A2C4D, 0xC9D8AAA7, 0x56F959F3,
+0xA7B78EB6, 0x167AC217, 0x544688BE, 0x4C9CE796, 0x5324925B, 0xFE87D352, 0x019413EF, 0x95825C9C,
+0x64782300, 0x2714D4E7, 0x02D6E144, 0x9613CA04, 0x7700A0F9, 0xD9774CF3, 0x0F2D4373, 0x589EE52F,
+0x16F83601, 0x149DCDBE, 0x8592209C, 0xAAA899EC, 0x6CE1A873, 0x21D51F5E, 0x0DDC1BF9, 0x02DE0E7B,
+0x2F6E9A41, 0x11FFA908, 0xCFC1DB62, 0x5D1F0F29, 0x98640FFD, 0x45183F40, 0x0E3865A7, 0xB74D193B,
+0xEA77DF41, 0xC10B76EA, 0x44A42C65, 0x8D8D36FC, 0x45DFEFB5, 0x5F90559D, 0x62502A64, 0x00F9E573,
+0x5EE77494, 0x04043D14, 0xFD072D34, 0x3AE1BF9E, 0xF49B4B0F, 0xDA220770, 0x987837FF, 0x1C5A086F,
+0xFE64CBE6, 0x9679050E, 0x31DC1AB5, 0x9B2A557F, 0x2C7F124D, 0xDFDE4E83, 0xA16A8974, 0xCE26BE95,
+0xF27287D7, 0xCE564845, 0xDB35A382, 0x875BD89E, 0x567EB179, 0x1CCC7D32, 0xC83FBCD4, 0x62EE85DB,
+0x9A68B844, 0x6458737E, 0xDB81944E, 0x80299BC2, 0x19786941, 0x5A057F54, 0x7EB814DD, 0x07855BEF,
+0x16AA4F23, 0x1EF06576, 0x41D436E0, 0x403C8F3B, 0x82903B04, 0x0B4ED74B, 0x1699CD89, 0x4F2536F3,
+0x9FF1EF0D, 0x0D63ED56, 0x6F4FF3E2, 0x77013410, 0x729F850A, 0xC4A2B941, 0xB9AA313E, 0xE040B1AE,
+0x644AD780, 0x80751C18, 0x0D47BB25, 0x8CED403F, 0xF4F8807E, 0xB84E513F, 0xDCC2033E, 0x24ECAB63,
+0x0893EAF8, 0xC68786C9, 0x9A82D1C7, 0x13B36060, 0x4B537CCE, 0xDDE3D19C, 0x99112A1D, 0x3E6654F4,
+0x162AEACA, 0x62928B3C, 0x14FCBC98, 0xB44086EC, 0x6DBCED78, 0xE717F17E, 0x3F9B5B02, 0x817599B5,
+0xF347CB34, 0x6F82B71E, 0xC337D8E9, 0x0328A267, 0x427336AA, 0xC934417E, 0xF7B5C032, 0xEA79F0CB,
+0x416FCC09, 0x208D8D80, 0x37C1E3E0, 0x76023916, 0x57350343, 0xE8FB5955, 0x461F1171, 0xF139FDEE,
+0x96BE5220, 0x96A8EFB7, 0x8773204C, 0x43E6363F, 0xFB325A1E, 0x930B38FF, 0x60ECDDFD, 0x23609CAB,
+0x4E5864E8, 0x55636167, 0x75BEE160, 0x0F181B7F, 0x9FE05BC9, 0x9C220345, 0xBC648CA6, 0xD9C544F6,
+0x2294A55C, 0x5F921636, 0xFD5EF715, 0xE9FD8A7D, 0x31342020, 0x3892B312, 0x24ECAD48, 0xF31D850E,
+0x9817D48E, 0x60A26A1F, 0x24C0643B, 0x08BB3ABA, 0x9A2026AB, 0xB6ED1347, 0xCB06B9CF, 0x81028A1F,
+0x0C141510, 0x1173AB81, 0x467D6E76, 0xFC384342, 0xE9CCF66B, 0xEA8AC735, 0x1BD82B06, 0xD4F70487,
+0x4569F29A, 0xE94759AE, 0x298CA0DE, 0x991B05EE, 0xA24EB567, 0xA4F7DDEC, 0xCB46257F, 0x18EA8A0F,
+0xB859761C, 0x8F3BB417, 0x6F07EF91, 0xD94F3769, 0x2B7ED799, 0xA63563E9, 0x175B1B9D, 0x935433D9,
+0xC5EEE108, 0xAB66F1A7, 0x45352A49, 0x22660E7F, 0x93E8B76B, 0x098FC4D5, 0xCF0F90D9, 0xA21C7C47,
+0xA2C8C2D3, 0x566824BA, 0xB1A154DC, 0x09A95A5F, 0xDEEC0D4B, 0xFBD731CC, 0x4DDD1F79, 0x885E80FD
+
+output0 =
+0xBAB69B46, 0x9AEEF4CD, 0xF65CEBB3, 0x3A351B07, 0x0B0F251B, 0xEE1A8EB8, 0xE59C8052, 0x0B2299B0,
+0x1D5CB699, 0x3F2682EA, 0x2121F8C5, 0xEFB15235, 0x704B4B26, 0xBA0E8759, 0x7FAF1CBD, 0x74CE4CA8,
+0x219D8D73, 0xABEEDB0D, 0xCAB2D229, 0xDFD73ED4, 0xAC269345, 0x88616ADC, 0x80B0EA9A, 0xD3F12C4F,
+0x4911C9FF, 0xD0F1B94D, 0x9CD97301, 0x3230D51E, 0xD1E31F4A, 0x18574172, 0xB32ED6A3, 0x59E536F0,
+0x39A86503, 0xFF4852A6, 0x95480468, 0x028B215D, 0x4BB4DEBC, 0x77D6C78A, 0xF3C455B6, 0x2113C0D6,
+0x2DB54E47, 0xB5EA54B2, 0x2CC06535, 0x2AB4A838, 0x0EBB9BC7, 0xD675F3F5, 0x7F45F8A7, 0xA8D1024D,
+0xD0513827, 0xCD53C7C6, 0x1184C8F6, 0x3BB7F6BC, 0xFD116C2C, 0xE3103FD0, 0xB0BA389F, 0x3629A9B5,
+0x40A8AA19, 0x3EE17358, 0x02312A15, 0x466ED0EB, 0x371C20BC, 0x54DAB264, 0x81948A54, 0x1FCD3C1F,
+0x1C76C4D7, 0xC8AE824D, 0xDCA04C66, 0x21EFFE40, 0x498DCB6E, 0x1842DCC4, 0x937CFAD6, 0x9220816C,
+0x10399542, 0x6F2B3DE8, 0xCFE0F0F7, 0xC55FED3F, 0xC11B593D, 0x894A3D36, 0x17C6386E, 0xE76799C7,
+0x029BB9A4, 0xC728B6B7, 0x57AB7BAD, 0xE5212EFD, 0x1B7EBC84, 0xE6D31711, 0x8332412C, 0xCCD8670E,
+0xBF2D5294, 0xE42B6C1B, 0x46A0532A, 0xD20E3D01, 0x48B61D21, 0xDCC59F01, 0xB54A5392, 0xE9A27CBD,
+0x475545D4, 0xC6222B28, 0xC6C6BA23, 0x0D624CDC, 0xA6D11E56, 0xCAE973D1, 0x83C3D00D, 0x285473B8,
+0x9D765A6C, 0x65EC16BD, 0xF2BEB004, 0x392E0DC9, 0x5972E43E, 0x74CE67F8, 0x877881C7, 0xC194D498,
+0x7EA32C7A, 0xFA616DFE, 0xB7F54D05, 0x67D5327D, 0xA1B11114, 0x797C36AC, 0xD2C4BAC0, 0xA3FC0A59,
+0x0A41CEA9, 0x72BCB459, 0xA400ACAD, 0xFF5E0DF3, 0x95330499, 0x5C61382F, 0x17DB60A4, 0xEBC08965,
+0x7BDA7D16, 0x9FDB4A48, 0x8E434902, 0xA37A8206, 0xD6FA9D98, 0x9F7524F1, 0x87484FCB, 0x3D29853B,
+0xCFB8B6E2, 0x6E8FB75E, 0xFFD9715D, 0x9BA4FA21, 0xBEE48708, 0x6994B617, 0xB861D7BB, 0x32965DD8,
+0x54AE0642, 0xE5749364, 0xB7AAEA69, 0x7A72625F, 0x561C0FD3, 0x17C4592A, 0x114FB3BA, 0xAAF6B7B2,
+0x883009FE, 0x8CB14452, 0xA8DCEE5F, 0x32490CF4, 0x12F92890, 0x8751DBDE, 0x036192FE, 0x70944BFB,
+0xCC1EA46D, 0x4A65393B, 0x0D1A8E22, 0x6353AA97, 0x93CC0B72, 0xF31E45D6, 0x7DAFBF7F, 0x564BEB7E,
+0x37965B06, 0xA405E685, 0x792A9757, 0x915293AD, 0x4913CB07, 0x75532849, 0xF7B42E2D, 0x28EC5A1A,
+0x803A3EF8, 0x7604FF7A, 0x188D7B23, 0x96A096AD, 0xE0A73048, 0x304173CB, 0xF52D61A4, 0xB9F4185C,
+0xEED3FF8C, 0x6388190C, 0x9AC54AA2, 0xD815A196, 0x5E688497, 0x123468E7, 0xB9665A24, 0x9BBADD97,
+0x7818CD07, 0x3013A569, 0x84621495, 0x35DDD4C3, 0x62B6CC53, 0xE2C90AB9, 0x80BBCA1C, 0xA069C371,
+0x0D030AF8, 0x055ECF7E, 0x680AE291, 0x13E7E136, 0xB57DF5FF, 0x85AD0124, 0xCEEF4C70, 0x6914CE71,
+0x784E3714, 0x4A8A2D63, 0x766254F9, 0x95944892, 0xFE634D11, 0x5B48B728, 0x2D95EEB4, 0xD7AD4549,
+0x3AD6AAE1, 0x01E35C22, 0x0C731A23, 0xD79593AE, 0x2ADEA548, 0xD68CE22F, 0xE245370F, 0xFD69FC84,
+0x01D3CF55, 0xE5BC524B, 0x17EF955B, 0xE596B8CA, 0x02C0DDA1, 0xACC0746A, 0x489AF9D1, 0xB42334B2,
+0x26BF94F2, 0x6D70EC02, 0x003A3F93, 0x007E706C, 0x36C5E0B5, 0xE5AA5CBA, 0xE3427640, 0x977C3A76,
+0x6A7EFED5, 0x879CC5D9, 0x07C9FA95, 0x3B7DDA84, 0x6DC13FD9, 0xA21D2B49, 0x7E741311, 0x63EB6E7D,
+0x40AB1DD5, 0xDC636C0B, 0x340DD1AE, 0x093A3A70, 0x97EA1AC5, 0x26C91F58, 0xD3F0F15A, 0x0B93E22B,
+0xB572CACA, 0x0BD45EA2, 0x4B2A4791, 0x2EBED3E8, 0x2A793B5A, 0xEA64B0A5, 0x254F5BA1, 0x46B3FB9A,
+0xB43C574E, 0xA0A42D9D, 0x9C285D2A, 0x4E188C28, 0x373B1517, 0xBD3C4473, 0x6978640B, 0x61E35E79,
+0xA9EE34BE, 0x0F40E590, 0x8DD6FF99, 0x85CECE24, 0x8F03BAC6, 0xE3356D6E, 0xA0FD2171, 0x667216E9,
+0x527044D3, 0xF2275856, 0xDAB137B0, 0x82179A34, 0x8B16DF35, 0x7951B0A4, 0x52F5D069, 0x7D1472AC,
+0x4C042345, 0x2A0C91B2, 0x7D1839D1, 0xB4222D22, 0x90335963
+
+basegraph=
+1
+
+z_c=
+384
+
+n_cb=
+25344
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+9372
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..bc84e55
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_DL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
new file mode 100644
index 0000000..584f73a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964 + Rv1
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+
+output0 =
+0xDA254450, 0x16BF9F14, 0x31785356, 0x9609316F, 0x14ECACF8, 0x5EAB72E8, 0xCFE9F14C, 0x7BFAF0DD,
+0xD4D21E0F, 0x2CC35B1C, 0x92EA0BCC, 0xD25EEE4D, 0xD8E2A9E7, 0x45B61C0B, 0xAE2F6F76, 0x156B1B29,
+0x8A3E15A1, 0x42B06E0A, 0x4A169C2A, 0x54E05915, 0x08197AE1, 0x8A19FB84, 0x88DBEE9A, 0x7E45B393,
+0xFF24E790, 0x6C49A2D0, 0x98AFE8BA, 0x31A7465F, 0x6298CE77, 0x28F248D4, 0xFF59D780, 0x10E4719C,
+0xDD2DEA4C, 0xC9B7F303, 0x19333FB7, 0xFB28275A, 0x6A4A2572, 0x39885BA5, 0x86B27F69, 0xB16EE7CA,
+0x7A07FAE6, 0x6628D83D, 0xEA04E4F7, 0x30
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+1
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..79294ec
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..c72680b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
new file mode 100644
index 0000000..a1745ed
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x0ED2B9
+
+output0 =
+0x8b0f2944, 0x8769e4b0, 0x717de578, 0xee86fb44, 0x61760e25, 0x59074fe5, 0xe9a1f641, 0xbbde66f6,
+0x6c68c0bd, 0xdf09f545, 0xd68c48b3, 0x354aca5a, 0x83c83bed, 0xeef81254, 0xcf0dbc28, 0x693c50f0,
+0x9a3cd23c, 0x57e97520, 0x929baf90, 0x8e2ba7d8, 0x5ef0fb8a, 0xffe7b153, 0x9e164074, 0x4d06f0a2,
+0x6bc68e5b, 0xb8274587, 0x69641dfc, 0xf5dc89a0, 0x4f8e741c, 0x1cb682da, 0xc59ce914, 0x8354b8ba,
+0xcbc5fd4a, 0x6fbfd1ce, 0x85f0df47, 0xffdbd201, 0x45818a38, 0x048b52d1, 0x1f634faf, 0x5cb128e9,
+0xb6108c54, 0x78466eda, 0x0f6d92a6, 0x0c7b6be7, 0xe0ee748a, 0xc9a2d65f, 0x4dc2540f, 0x1f5d42cd,
+0x68f26f29, 0x57474b8a, 0x8ae2cfbe, 0x08ef2168, 0x271b2ffd, 0x2e7816f4, 0x7b00c40a, 0x3e23bfe5,
+0x2f3ee3f1, 0x86bd9ff1, 0x7a5538e5, 0x6673490f, 0xae6ba80d, 0x058e0be4, 0x14f9b51e, 0x89a1a5ef,
+0x6ff9cd55, 0x8ed590b6, 0x1907175c, 0xb7b42bf0, 0x15a84025, 0xbd33f5fa, 0xb53d53d0, 0x61d6c75a,
+0x9d8a1eda, 0xb3932c8d, 0x7f9ff48c, 0xa8ed2558, 0xa05cf8a7, 0xccdafaf5, 0xbffeee80, 0x4f48eadb,
+0xa62b030c, 0x7bd235fa, 0xa8de22b0, 0xfe31d275, 0xd29e8be0, 0x386beb07, 0xce4d8545, 0xfbc33ee4,
+0x15e5d244, 0xf6fc92ac, 0x5a84f673, 0x64e55f70, 0xfdfdffc2, 0x8726dd47, 0xf3b5a1ae, 0x9d439055,
+0x54e713da, 0xf53a4390, 0x61cf45da, 0x9c357723, 0xed8c4800, 0xfdcbb758, 0x02d86328, 0xf3d4e1f6,
+0x2fc0f911, 0xb8faadb0, 0xf4d65deb, 0x43bbc6ab, 0x7bdad277, 0x6603c0a8, 0x027903c5, 0xdabfa36a,
+0x92c58ae7, 0x6e9211b3, 0x54c48400, 0x7ecddba4, 0x81e4b116, 0x5b407871, 0x3f427c20, 0xf6ddfe52,
+0xf0eba4f5, 0x2975c9d7, 0x376fc393, 0x3b0bead4, 0x89be294a, 0xc7fd591d, 0x43c2455b, 0x9dc322fb,
+0x00ca6a02, 0x35cccdf0, 0x60d8502b, 0x0500b498, 0x35ab1618, 0x73c6ddab, 0xf0df58da, 0x3e904c4b,
+0x133d6b4b, 0xbdad7f42, 0xee7d1e0d, 0x49fe242c, 0x09e120ad, 0x646339df, 0xa0cd9509, 0x92c6c672,
+0xb864089f, 0x22225244, 0x305f8384, 0x9b4166d5, 0x704fa445, 0x9fca2e0d, 0x839c9f87, 0x7ef495a9,
+0x579e0f8c, 0xa47f1a9e, 0x86581a5c, 0xb81b9445, 0x5acc608e, 0xe369e9b3, 0xfeb80ee5, 0x1399ab02,
+0x30a74bea, 0xcf08b948, 0xb0857028, 0xcd4f9d8c, 0x61e46763, 0xbff862f4, 0x096d276c, 0x72152f4f,
+0xe98e2f04, 0x7407c828, 0x85ee9a47, 0xf99cf671, 0xd7d40758, 0x89ee7d21, 0xb8732d5f, 0x4786742e,
+0x58ca1a9e, 0xe6276c4e, 0x18f29bb1, 0x757e3350, 0xa49c393e, 0x112a978d, 0xfecfbfa2, 0xb0894694,
+0x62fdcf29, 0x7ce4fb98, 0x41eaa9ac, 0x4cfdb430, 0xfe1bbc8f, 0x03e390bf, 0x0c4f25cd, 0x53b11485,
+0xa6734572, 0x923d31aa, 0x72ccb4bf, 0x82b541cc, 0x5f6dd559, 0x7ae48be2, 0xb376651c, 0x9c707d4c,
+0xa0fd5e5c, 0xac767a3a, 0x7f8d546f, 0x83d3c07d, 0xa6059a44, 0x03da8242, 0x71112091
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24A_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
new file mode 100644
index 0000000..244bf03
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f,
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
new file mode 100644
index 0000000..ac27918
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
@@ -0,0 +1,786 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f
+
+input1 =
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
new file mode 100644
index 0000000..e8aa63e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x818181e0, 0x8181817f, 0x7f818179, 0x7f81817f, 0x817f7f81, 0x7f819481, 0x7f7f7f81, 0x7f7f7f7f,
+0xbc7f7f7f, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f58, 0x7f81817f, 0x7f7f817f, 0x817f7f94,
+0x7f81817f, 0x747f7f7f, 0x817f7f7f, 0x81817f7f, 0x81ab8181, 0x7f7f8181, 0x7f7f817f, 0x7fa58144,
+0x81817f81, 0x8d817f7f, 0x7f7f7f81, 0x7f827f81, 0x7f7f6581, 0x82817f81, 0x7f817f7f, 0x7f817f81,
+0x817484c0, 0x817d8181, 0x817f817f, 0x7f7f8181, 0xe481817f, 0x81817f7f, 0xc2818d7f, 0x817f2e7e,
+0x7f7f8181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x81818181, 0x7f7f7f7f, 0x8181517f, 0x81817f7f, 0x917f7f81, 0x947f817f, 0x817f8181, 0x7f7f8181,
+0x7fda7f81, 0x7f81817f, 0x94817f81, 0x817f6f7f, 0x7f597f7f, 0x7f7f7f81, 0x817f7f81, 0x7f817f7f,
+0x81817f7f, 0x8181817f, 0x81867f7f, 0x7f817f7f, 0x7f7f7f81, 0xae8b8184, 0x7f818187, 0x7f817f81,
+0x817f8181, 0x7f817f7f, 0x8a7f8181, 0x7f7f7f7f, 0x7f817f91, 0x81817f7f, 0x7f81817f, 0x7f7f8181,
+0x8181817f, 0x816e7f81, 0x81817f7f, 0x818c7f7f, 0x8181817f, 0x8181817f, 0x81927f91, 0x81818181,
+0x81877f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0xa57f8181, 0x7f7f8187, 0x7f818159, 0x7f7f667f, 0x7f818181, 0x81817f89, 0x817f7f81, 0x81817f7f,
+0x81757f85, 0x7f817f7f, 0x70817f7f, 0x536e817f, 0x818a817f, 0x8181818b, 0x7f4f8181, 0x7b817f87,
+0x7f817f7f, 0xed7f5d85, 0x96816e81, 0x7f7f817f, 0x7f7f817f, 0x9f817f7f, 0x8181817f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x69537f8a, 0x7f1d7181, 0x7f7f817f, 0x817f8b81, 0x817f7f81,
+0x7e817f92, 0x4f697f7f, 0x817f9281, 0x818a9581, 0x7f7f8176, 0x817f7f7f, 0x817f817f, 0x6e817f75,
+0x817f677f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
new file mode 100644
index 0000000..a757869
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
@@ -0,0 +1,352 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD5000000, 0x21E8B7C8, 0x5B2F2C4C, 0xB82FC8DD, 0xD6D53ED2, 0xC4E0B4D4, 0x20C8DA1B,
+0x2525D305, 0x3F393034, 0xD52ECB1D, 0x0B3421C2, 0xD0C42E2C, 0xC2303B2C, 0xDF24DC44, 0x38D6ECCE,
+0x1FF54529, 0x2E32132E, 0x26473034, 0x35DE3D10, 0x14B81CED, 0x1AF01B61, 0xBF102523, 0xED35CAE4,
+0xCA412326, 0xDBDDCBD3, 0xDFE700C9, 0x3B21C300, 0xF41F382B, 0xB1493EC6, 0xC941BF22, 0x4FD22F1E,
+0x3CB9C313, 0x263ED626, 0xF3D3343A, 0x34ED4435, 0xB8EDE1C7, 0xE92137DC, 0xB11EBC35, 0x35381DD7,
+0xF143E322, 0x12272EC9, 0xDE4A1D32, 0x31C20C45, 0x3D2F1FC8, 0xCD46303E, 0xDBD6BC2C, 0xF1C8E2E7,
+0x192B2CD2, 0x352B3E2E, 0x463AD92D, 0x4A2A0200, 0xD82AD836, 0xD3CDB81D, 0xC511F339, 0x34E62EC3,
+0xC2DD383B, 0xE329E119, 0x08E4B233, 0xCCCDDC29, 0xD32EC722, 0x3D20C3CA, 0x2EC52110, 0x1AC50B1D,
+0x1F29DFB8, 0x10C33A24, 0x31D94B1F, 0xC338D337, 0xDDC3FFC2, 0xFCAED40A, 0xE6FFDFC6, 0xDFF321D8,
+0xE8192FE9, 0x3FD13BE9, 0xAF3013D9, 0x00BD43D2, 0x35063C19, 0xEDD029D2, 0xBF462B3A, 0xB718F13D,
+0x37C03CC8, 0xB4E9FD1C, 0x48E3D7C5, 0x4230D2C7, 0xD8EC2F25, 0x24D2C9EE, 0xE81D2BF9, 0xECE9F4D5,
+0xE51219F0, 0xE6F534D2, 0x0CCDD24A, 0x38CD173C, 0xE5CD23B9, 0x29E2E233, 0xDDD5A136, 0x13FECE2F,
+0x41DE4323, 0x34DC37CF, 0x22D50526, 0xC5E2CD3E, 0x3F003144, 0x2719DA49, 0xDFACC831, 0xCF11D936,
+0x3DC9C006, 0xB0D8B9C9, 0xD5304536, 0xE7BC0A1E, 0x3EC1491C, 0xF31B162F, 0xC7403F20, 0x3CDE2D37,
+0x262EEDD7, 0xD822433C, 0xE2A72C0A, 0xC43927D8, 0x30B8DCDA, 0xCE16C8BD, 0x1EB72B1E, 0x0C28073C,
+0x35211A11, 0xD0E9D2AC, 0x2832E21C, 0x382BD133, 0x0751DE0A, 0x2DFDB82F, 0xCBE3463A, 0x42D32730,
+0xCCCA32DE, 0xE02C3748, 0x27E3C933, 0x40E0DB15, 0xE025F727, 0x241930D2, 0xD32020DD, 0xD8F2C4B8,
+0x3019EADD, 0xE71C2315, 0xE9E6D5DF, 0xC5CD5126, 0xB41CA746, 0x2FB83CCD, 0x35C6BED8, 0x3331471E,
+0xCC3FBDC3, 0xA8ECCC3A, 0x3526C0CF, 0xD62B39C6, 0x122EA623, 0x20CF2ECA, 0xB2CED000, 0x08C2313B,
+0x3D264ED3, 0x45D4C0F3, 0x36D6C4D7, 0x21D8B505, 0x15DDD3BE, 0x2619D840, 0x3ADAFFD0, 0xCA46DDBE,
+0x15E20E1B, 0xAFC03D27, 0xC409C8DA, 0xB12904C4, 0xAD3F51C9, 0xBB341C56, 0xDCD205E5, 0x281ECDDB,
+0x3FD11FC7, 0xBB49D632, 0xC1BD1CC2, 0xE12ED2C6, 0xDAE04719, 0xDDC54F21, 0x00CF332B, 0xE745DC2E,
+0x51C42D2C, 0xCF5AE21E, 0x0F39D514, 0xD623D246, 0xE2173C2C, 0xD341EF30, 0x291E2929, 0xEE2837BE,
+0x1ECC31C0, 0xD13ADA1E, 0x16CA2DF4, 0x18E636DB, 0x113914E1, 0x3BC2F5CF, 0xDDE01DC3, 0x5225F8D6,
+0xD9CBE9C0, 0x2BEBC7C0, 0x31E1CD29, 0xAC2AD33A, 0xC8CE5831, 0x1E48E62D, 0xF62E37CA, 0xD800B9F0,
+0x3033ED3E, 0xE4BEBFBA, 0xCACA26FC, 0xF133DE3D, 0xEC2CE33F, 0x48BACFA5, 0xC9B7CD46, 0xD4CF1FC1,
+0x4B24C2D8, 0xDAAB3B15, 0xC7F0D93F, 0xE9293C25, 0xC0F0B11F, 0xD7BDCAD2, 0xDD114C1F, 0x27200223,
+0xCD442EC6, 0x2FE9BD19, 0xCDDA27B0, 0xCF322DD8, 0xF7C734E5, 0xDCAFAFDF, 0xDD38CAC5, 0x10CE13D0,
+0x2E1B00E8, 0xE5F444D6, 0x465230CA, 0xD9DCF1CF, 0x35BC2ED4, 0x3CEBCDBD, 0xBA452E2D, 0x07C6C33F,
+0xE3F11B42, 0xC9E136DA, 0x3FCE0135, 0x35D9C7BF, 0x31C732CA, 0x4E33D2BF, 0xDB4B2526, 0xD4BC33C3,
+0x20E1C120, 0x1A301A40, 0xCFCADFBC, 0xEFE357E2, 0xAB3C2ED1, 0x37DB0C3A, 0xE2EDE232, 0x283DEAF5,
+0xCC443B2F, 0x1C365400, 0xD6DFC328, 0x234926B4, 0xC52EC63E, 0x0A38CA47, 0x2EEBD55C, 0xD1DA421F,
+0x462BC4E2, 0x1DEDE743, 0x3BD3EBF5, 0x2B4F422E, 0xE3E80C30, 0x3F3CADC7, 0x2444CA30, 0xC4091AC0,
+0x222DBB15, 0xCC2AFDD6, 0xD4352CCD, 0x03291233, 0xA73EDC22, 0x33D6CAD0, 0x2ED742D9, 0xC117CE2F,
+0x2C1221EF, 0x00C812DC, 0x4CE0CFD6, 0x17F234C3, 0xC9DCB32B, 0xCCCC1BA5, 0x2322D42E, 0xBED82250,
+0xD2CA5031, 0x2EE92411, 0x2F30DCD0, 0xCADA2925, 0xB42529A2, 0xD526E4D6, 0x2F171BC8, 0x322A2837,
+0xD6DD47D4, 0x172D12E7, 0xCCC526CA, 0xDEF43720, 0x28DDB219, 0x025BD0DD, 0x3CD7C7E3, 0xECC42AD4,
+0x342B34E7, 0xE329C1E5, 0xE700EB32, 0xD1ECAE41, 0x2ADACA0B, 0x1CC215E3, 0x29D5CF28, 0xD719D642,
+0xF9DAD2D2, 0xD3E4EA4E, 0xE03B1BC5, 0xEF31D23B, 0xE22B23F9, 0x2FD43443, 0xA9E228F8, 0x283C2EC0,
+0xED2A11C7, 0xECF1BE2B, 0xE3C5390D, 0x2D43EBD8, 0xE0222A44, 0x34D1D9DB, 0xBD1FCDCF, 0x28101F2B,
+0xC42BC3CF, 0x19DBEAC1, 0x47D72F45, 0xB5174435, 0xD4CCEB24, 0xE356E022, 0x38B333BB, 0x3BC73927,
+0xDFE3C627, 0xECC720CF, 0x1BE122FC, 0xFAC539C8, 0xD934D60E, 0xFF3BB81E, 0x32F7E51D, 0xF3FEEA40,
+0xD523F02A, 0xCACAD52C, 0xEB4330BB, 0x372B0FBE, 0xDD11353E, 0x1E24D0D8, 0xD83CCBD6, 0xCAD63818,
+0x120D2ACC, 0xCCA7C93F, 0xC53310B6, 0xFE222AC6, 0x3D26C300, 0x20C72923, 0xD06724CF, 0x34D8CE24,
+0x42AE08C9, 0x3C3DDDD7, 0xF2363225, 0x32CC3332, 0x2213CCC0, 0x27D0E22D, 0xD9D22517, 0x41B5D21A,
+0x3BFD1CDA, 0xD1D8CAC7, 0xD51CD8C2, 0xCE42D334, 0x3FC3E60D, 0xD63BD519, 0xC320CD2E, 0x35BDC63B,
+0xC21BE5D5, 0xCD324024, 0xD9C43FCE, 0x5CC2C1D5, 0x00E03011, 0xD923D9D3, 0xEEB92931, 0x24E536DC,
+0xCAB72344, 0x1E21B8DD, 0xD1D210BB, 0x2ED3EF2F, 0x3BE7DF27, 0xD5DDECCD, 0xCFE7D32D, 0x3CCE4F27,
+0xC512C9D5, 0x1B36F9CD, 0x1EE6C1D5, 0x402EB534, 0x1F1A2621, 0x482F35E7, 0x3B303031, 0xD8DC1EB6,
+0xCCC23338, 0xD92E14D8, 0xE818B353, 0xB2FAE6CC, 0x41D9382F, 0xCB00E0D2, 0xFF002A3E, 0xB9CAC8B5,
+0xA9F53F2B, 0xC7D6C336, 0x2641243B, 0xDC3D1038, 0xB8C2C6CE, 0x3637201D, 0xD03D2F25, 0x33B92EE7,
+0x2DD6CE2F, 0xDD56D31F, 0x29BB3F15, 0xE449CA35, 0x1CCBECD5, 0xC2C2CBC4, 0xE2412244, 0x30B6D42F,
+0x673B341F, 0x2321CF50, 0xC7C7EDC0, 0xC9F63F26, 0xD6D12C14, 0x2BDD30DA, 0x38C000D5, 0x17DA48CC,
+0xC2E2B83E, 0xD73ED9C1, 0xE131C12C, 0xC2FFBF31, 0x27D4DC39, 0x4828341C, 0xCCD5CD3E, 0xD4EEA83F,
+0xC446C5BE, 0x2E1C33C7, 0xEDCFC616, 0x2008DD37, 0x453CC9BE, 0x3538D42D, 0xCB3ACAE1, 0xC7D621C3,
+0xD0E5B6D2, 0x40461624, 0xE420D3C3, 0xC71D39F5, 0x2031D7F9, 0xAFF0D352, 0x3EB8B707, 0xD22D3000,
+0x33E02A28, 0x4026D2B6, 0xCED02235, 0xC3E1CD37, 0xDC3FCB3A, 0x31B3CFDC, 0x212DC7B5, 0xDFB236DD,
+0xBDE2C9EE, 0x2434312F, 0x372F359B, 0xE1AC3532, 0x3311EBBF, 0xB744CCD7, 0x2FC3BD6C, 0xC50537CB,
+0x1DBD2721, 0xA9C82DE8, 0x28CAC0CC, 0x5116211D, 0x3E331439, 0xDCDB10E8, 0x31CAD4B7, 0x00D5B32C,
+0x2BCAAFD9, 0xF54CCBCD, 0xE22BF32C, 0xE9D3354E, 0xC31444C9, 0xCB2F322F, 0xDD36CAEB, 0x1D2627D2,
+0x3DC022E3, 0xDEC3C9DD, 0x431B39D0, 0xF30A373D, 0x15C9F1E8, 0x2AD4D84B, 0x36504241, 0x36C203CB,
+0xCB15E43E, 0xDFF4C8C9, 0x17DD22D7, 0xBC2547CA, 0x24CB26D9, 0x3DE9D021, 0x39A921F0, 0xE0DC14E6,
+0xC500B423, 0x0CC318E5, 0x24DABDC0, 0x49B12C37, 0x20F2D523, 0x2F6924B9, 0x271935BA, 0xE3D6B1E2,
+0xFDC3E606, 0xC3E10A5C, 0xCC50C136, 0x25C4323E, 0x383BE3CF, 0x39E8D1C7, 0xD9342B2F, 0x9EED4137,
+0x2C2B1325, 0x31B5CAB0, 0xD1D6472D, 0xD924DC3C, 0x418EE537, 0x1B140B46, 0xBCDB1806, 0xD7C4B8CC,
+0x37EDCB1F, 0x28C0E1E6, 0xE124413D, 0x29D52CC8, 0xD7BDDF14, 0xB7D020FF, 0xD2DAE61C, 0x3F2D26DB,
+0xCEDB0ECF, 0xDA46EAEA, 0x26E31F2A, 0x0DDADD2C, 0xDFCDDE2F, 0x44BC2F30, 0x3C3CE9DC, 0x24B6DFC3,
+0xDFDA3729, 0x33EBF92C, 0xE620E3E2, 0x10A822E1, 0x28D12CD5, 0xC83ADFC9, 0xB746E025, 0xC23A3128,
+0xCA2AD4E4, 0x202CD518, 0xD51DCD00, 0xE8C517D9, 0xCFBFE2CD, 0xCCDD39DE, 0x1AC9C0E1, 0x18152622,
+0xF5283AB4, 0x223F33E2, 0xE72B1608, 0xD0CF27D7, 0x2D32BC29, 0x28C4CAD8, 0x303130D8, 0x3F15C2E2,
+0xBBE6303B, 0x25CC2EF5, 0x19D62458, 0xEDD21331, 0xCAE5D442, 0xE2C9322D, 0xCC3137CD, 0x2EA6D820,
+0x54C213CF, 0xDAD4DAC5, 0x0015E2F1, 0x2F453615, 0x4ECF1B3D, 0x1AC9CC3C, 0xD1D7AE26, 0xC72EF8C9,
+0x2CCB3C29, 0xCAD0D82C, 0x06533040, 0xB64DD6D5, 0xDC49E628, 0x44E2CCC3, 0xC940CF26, 0x372EE24D,
+0xBBE02948, 0x2A37CA35, 0xEA38E82A, 0x1BC9D0C6, 0xC4422BCC, 0x24C63E2E, 0xE3C3C22A, 0xDADD055F,
+0x3B39C61A, 0x13EFB4C3, 0xCECD3AD6, 0xD0002B22, 0x291A43D1, 0x12D5BCAF, 0x47E8272C, 0x23D21741,
+0x3E332E32, 0x3023ADB6, 0xD7D8D12D, 0xBA164DCB, 0xCCD4DBB5, 0x04232D2D, 0x4CC332BE, 0xD33FB819,
+0x31D02BDE, 0xC8163418, 0x402829CD, 0x373D1D26, 0xCB3439CB, 0xC129CF21, 0xC42E323E, 0x16C74614,
+0xCDD0DD3A, 0xF0C9D5F7, 0x21D938B9, 0x36C52327, 0xD3AA00C8, 0xCE26DD29, 0xD74DE03C, 0xC32BBB25,
+0xDEBB25CD, 0x4A483843, 0x2A35BFD9, 0x3B1940C8, 0xCBC71C2E, 0x47DF1DBE, 0x4437FA22, 0x36CDC148,
+0xC7D3D8E7, 0x33C6AF39, 0xD61DCCD1, 0x4C3D12EB, 0x20C5C5DA, 0x351A2C23, 0x36EB1A17, 0x3134C42F,
+0xF9B2E72F, 0xC64837DF, 0x464438CF, 0x1214D6D8, 0x10EA2F22, 0x9EB95900, 0x1B21C1E0, 0xCBD22E34,
+0x3137C536, 0x27B900EB, 0xDAC60E17, 0xC6BAC5CC, 0xE5D21DE2, 0x2ADDD132, 0x311342DA, 0xBFC4AC3E,
+0x0BD62C3E, 0xDF49CDDE, 0xE021E247, 0xCC2111C4, 0xD72DCD2B, 0xC4BABDBA, 0xE0C8082E, 0x171E30D5,
+0x1E44BD23, 0xB2D824E0, 0xE5D5CA1B, 0x1B26B917, 0x31EB173C, 0x001CEF39, 0x36C63F34, 0xD4EB14D9,
+0xC4251BBC, 0xBF3FB720, 0x3F4DEC00, 0xC6203232, 0xF741D825, 0x1BC31ED8, 0xBE30BF29, 0x2B2C21B7,
+0x2BC8B2D6, 0x1A3AE0DE, 0x3031253D, 0xF10929A3, 0x222EE535, 0xBE1521D6, 0x3734C4EC, 0x262A46EC,
+0x3B4211CF, 0xB429F148, 0xE03E342B, 0x24D2C612, 0x412D2233, 0xAF3BE02D, 0x2F00FA33, 0xCFC2D3C9,
+0x154AB434, 0xE2CEC811, 0xDF37CE34, 0xBF1B43AB, 0x49353E28, 0x3F330B1E, 0x33CC48E7, 0xA7D2DC58,
+0xCBD24C0A, 0xEC1038D8, 0x172DBFD9, 0x4DD51F56, 0xD14930C9, 0x1ECECDDE, 0x113E3649, 0x2D29BB20,
+0xCAD4D519, 0xC2CDD82F, 0xAA0E3BC3, 0xB42220C3, 0x3036F5B5, 0x2A12CB33, 0xD9FE2840, 0x3D2E13BB,
+0xD6BE30C2, 0x2C352ACB, 0xD9282D47, 0xDFDE40D8, 0xACDCDDCF, 0x13EB27CE, 0x45CBCBFA, 0xDF2D322B,
+0xEABC3C44, 0x04C6D9D6, 0x18CB1415, 0xCDDD1F52, 0xC0C7DE3C, 0x19393AD8, 0x39DF28B5, 0xC2DBFBDD,
+0x4E152DE9, 0x312D25D4, 0xECD1DF49, 0xC7C2DDC5, 0x1B3A2A3E, 0xD51FE8C6, 0xD827DDC9, 0xE0C934C7,
+0xBBD10000, 0xDAC6D9D2, 0xF92D1E42, 0x1E65CE2E, 0x3EE8C7F4, 0xD1D3DCC2, 0x17CA3BE0, 0x332A323E,
+0xD7362F0D, 0xE333CBCA, 0x24C750CD, 0xE22E2638, 0xD0BDCBCE, 0x18E12CD3, 0x442DD5BB, 0x362C33F1,
+0x3E152DBD, 0xD2D7E3DF, 0xD8354028, 0x35E533A8, 0xDC123432, 0xEBCE2326, 0xD035D2D0, 0xF4CA28C6,
+0x2BDD42D9, 0x23D82E1F, 0xBC3ACB33, 0xD43902CD, 0x1A293643, 0xB0B9020D, 0x37BECB29, 0x20423725,
+0xC6DC1635, 0xDD2116C7, 0x5612C503, 0x3843D9CE, 0xCD20DA2F, 0xE6D2C5E2, 0x33EB3E30, 0x391C183A,
+0xEECCD2D9, 0x50D0F3E9, 0x3428122A, 0x1D272C3E, 0x1DD0232A, 0xD3E340CB, 0xEA2AD333, 0xEE2422D6,
+0x25B624CC, 0x0000E237, 0xD4E3A330, 0x2C48F4E0, 0xD2B6D6C8, 0x2E2328C0, 0xBDBFE127, 0x3FE21830,
+0xB6360B23, 0xE2CECAE7, 0xDB26CACB, 0xF610C63D, 0xB9B7373D, 0x3DD2DC2D, 0xCC2E27BE, 0xE9EB30E5,
+0x4E3B4EDB, 0xD221E9F0, 0x40EABE42, 0xCAD019D8, 0xCFED3E3F, 0x233F37E0, 0x21BBBA29, 0x2BC205CE,
+0x220F4126, 0x1F33DCCA, 0x42C9FA44, 0x08D13533, 0xCE261FD2, 0x18F21A24, 0xBF39C732, 0x49362925,
+0x31C5EDDE, 0x1DCD12C8, 0x1EBECA2B, 0xDE4FC423, 0x2D24D73B, 0xE3CD2E29, 0x2F1D2114, 0x4D3ED124,
+0xDE264432, 0x3E1A4AC7, 0x1AE4D7E3, 0xCBB714D5, 0xE8C930D4, 0xDD4130DB, 0x3FF71706, 0xD21E380C,
+0xCF2821E7, 0xC4DCD6DC, 0xD4D12FD5, 0x0E2B0000, 0xB731D9E0, 0xD32E3CE0, 0x3F12D60F, 0x3ACC29C6,
+0x3F252128, 0xE3CD5139, 0x3033F445, 0xCFC424E3, 0xE824C624, 0xD641D523, 0x23DAD636, 0xD529F73D,
+0xCF524AB1, 0xC846CFD0, 0x3124EACA, 0xE2DED6E8, 0xE52DE303, 0xE61D33E1, 0x3AD8F00F, 0x24E4E32E,
+0x1BC81AD4, 0xCC1018E0, 0x24C4E826, 0xE033D93E, 0x09DADFE0, 0xDDCBD8CB, 0xD1D13ACF, 0xB816D348,
+0x30E0CAE9, 0x4EDF37A9, 0x0B0FCE1F, 0x49D1E3CD, 0xEF24DAFF, 0x34223BCA, 0xC9CBC641, 0xC1E3B3E5,
+0xCDEF2C3E, 0x3427DCD1, 0x532FDDD6, 0xB8F0F425, 0xDEE7C9C9, 0xC3DBD3C9, 0x26EB281F, 0x1310E0B8,
+0xC032EA30, 0x162A2E2C, 0x0DC7C131, 0x1AD81240, 0x0000E313, 0xDD1CF2DD, 0xDF2FC7EB, 0xD926C532,
+0xD2C31E0C, 0x3021CAC7, 0x3D3531D8, 0xCFCA272C, 0xAF17CFD0, 0x2EC91E4E, 0x483EC3D2, 0x26D1BE1B,
+0x01C832FF, 0xF8DB2BD5, 0x16272CD7, 0xCB3F46F9, 0xD6A43316, 0x1BCCF4E3, 0xC6D42546, 0xD7453106,
+0x11C336AC, 0x30F6B221, 0x34481FD0, 0xDC4CD91D, 0x4E40CE22, 0x3D26C421, 0x21EECCCD, 0xBD3219CC,
+0xEC25E136, 0xF6C7E4C4, 0xFF37E71C, 0x1827EACC, 0x190B3AB7, 0xD12F2ECA, 0x3E26DE25, 0xD1DA1C28,
+0xD4D7BDBC, 0xBB1D23E8, 0x2BAD1624, 0xE4CCDB33, 0x1A3AC8D6, 0x2E2F37D3, 0xCBCF3253, 0xE92F2E28,
+0x2E2E4FD8, 0xDB1A35D7, 0x2DF01EBB, 0x4AE9C6D4, 0xD007E02C, 0x1444C6D5, 0x2E0C0000, 0xC4DBEDAE,
+0x2FCEBFEA, 0x2C3B40BA, 0x142F47BC, 0x1CF00BD6, 0xE0DC27C4, 0xDDE239D5, 0xF9B5DF3A, 0xB5C82FC8,
+0xE0D93618, 0xD8E941CB, 0xDF27E3D2, 0x3CF4D533, 0x31CAE4D7, 0x24E8C738, 0xDA29D1D8, 0xF4ED30CB,
+0xC41C4434, 0xEC35D1D3, 0x231756D0, 0xE9C2272A, 0xD137CAE6, 0xCEBC2836, 0xD3E1D1DD, 0xABCF0B3B,
+0x41CC23B1, 0xD63B4C32, 0x171BDFC6, 0x4FD5CFEA, 0x2E4E50D9, 0xDEECB2DD, 0x233FE437, 0xB01B32D0,
+0x22252EF6, 0xCD2B1C3B, 0x28CDCE3E, 0xC5D82D2A, 0x33C7AA9C, 0xE3E8CE26, 0x591EDF30, 0x21C21ED5,
+0x2A34E8C5, 0xD22A24C1, 0xE0402F3E, 0xCFC0FBCA, 0x33164123, 0x203E3C1A, 0x3CBECCBD, 0x0000D237,
+0xD61ECBCF, 0x1DDFE3F7, 0xDAFC2A29, 0xCA2F2B0F, 0xAEACD72C, 0x3017D4BF, 0xC74F1EB4, 0x2E3FCB3C,
+0xD927BC18, 0xC43922D5, 0xDDEB13C4, 0xA32437B9, 0xEFE81FF9, 0xBAE82C0D, 0xC7E6C9DD, 0xB921D0AE,
+0x39D1E5D5, 0x2E361F3B, 0x2043C9D3, 0xC2011AD6, 0xB3133928, 0x31BCC938, 0xD2D7B6C4, 0x25C04D1C,
+0xC729CEC3, 0x22383E2E, 0x2EDF3323, 0xDBC4DDCC, 0xDFDFD551, 0xE531CA1F, 0xCAD1DFE9, 0x3EBACB2A,
+0x38CF3BDA, 0xDEEC142A, 0x0CDFDA28, 0x071ABBD2, 0x422557D2, 0x1D334039, 0xC5331AB2, 0x21E1D4C6,
+0xB630392A, 0xB6D8C0F2, 0x322E2548, 0xD8C7C3C1, 0xC2E4C6EE, 0xE6E8D3D3, 0xE019314C, 0xE9CC51E4,
+0xBD2EE4C2, 0xDFCC0000, 0xD9EEC634, 0xC137BECB, 0x263C3ADC, 0x11CB4ED2, 0xBB302CA8, 0x3347262A,
+0x2732ED40, 0x3126D9DB, 0xBE391CC2, 0x2B14B7E9, 0x19DBDBC1, 0x23D22EBF, 0xCD23C2BF, 0xB13D392A,
+0x4825ECD8, 0xB620E4F9, 0x373E38CA, 0xBE2FC3D7, 0x3AC1D32A, 0xCF26452F, 0x3B01D1CA, 0x44DA41BC,
+0xBE2EDDF4, 0x4ADECBD7, 0x08D9223E, 0x3BDCDCDF, 0xBDC336D6, 0xC8D7C237, 0x2ABED6C3, 0xEF38AF11,
+0xD5EDD5C9, 0x333A3D29, 0xEAD4DABE, 0x01F2BBDA, 0x3FD8CCEE, 0x3BDBBDBB, 0xC535E822, 0xD5E031C7,
+0xCD1E31CE, 0x30C04919, 0xC8D33AD3, 0xC71F3639, 0xCB2D2910, 0xC442B5BC, 0xC24110A5, 0x2430DD27,
+0xEE3D12DD, 0x2AE45124, 0xD4CA4C3B, 0x2ACC31D6, 0x3941E4BA, 0x39DAF13C, 0xAA98D351, 0xB1DDC0BD,
+0xDED4CBD2, 0x4C2DDBB5, 0xDACFF1DC, 0xDB24DC4F, 0xD3E3E033, 0x1CBF3DBC, 0xB8BB1C16, 0x293E26B5,
+0x223A2A34, 0x2AC5CE13, 0xD7C84002, 0xBF33C0B3, 0xE815D02B, 0xD7CF2DD8, 0xF20DC0CA, 0x3725CCDD,
+0x44C4E4B8, 0x2AC918B4, 0xD7EC4025, 0xD1C53EC6, 0xC0DADFC2, 0xE8C0DD45, 0xD3344C19, 0xDEC741E6,
+0x05302D55, 0xC128D64B, 0x2CB7E53B, 0xDC02E1BC, 0xFDC74612, 0x1F4B1521, 0x3CE9E219, 0x07C633D2,
+0x2836D0B1, 0x27E6D0D7, 0xDDDC3027, 0xEA3A2F16, 0xD226313A, 0xDCDD19E0, 0xCC5CD1DA, 0x412B2FDE,
+0x0E30C7C6, 0xD755DAEF, 0xC62DC85A, 0x40213CD1, 0x42CC0000, 0xE43230C4, 0xC43D22D7, 0x36CB31C2,
+0x3B2E2429, 0xD9D73DC0, 0x43DFD2E5, 0x41B9E2CA, 0x12C7E32D, 0xC6DE9BDF, 0xCBC136E5, 0x24262DE8,
+0x2D1AB81B, 0x0B31BDD9, 0x3EBA1A39, 0x0D322ABA, 0xCCD9B31C, 0xDBD1DE54, 0xDBE3F33E, 0xD3BD38E5,
+0x28272330, 0xCFDCC3E2, 0x153DB3C0, 0x2E2227C9, 0xF5CDCBCD, 0x2338C0B8, 0x2C30C92E, 0x2B4AEA32,
+0xE4E5BA42, 0x45C2F21B, 0xEFFD2D04, 0x3FF63A44, 0xED3DD7DA, 0x2BE4262B, 0x0D3AE8D9, 0xDAEDF922,
+0x263F4E45, 0x1DD0D5F2, 0x4039D7EA, 0x3DDFE309, 0xD021CD37, 0xEA4FC829, 0xDADDC4B0, 0x26E6E2D5,
+0xABDAC00C, 0xDF3945E4, 0x32E6223F, 0xD5D709DE, 0xEC3BECBD, 0x0000DDA5, 0xCB49E8C8, 0xD0F72E2E,
+0x2DE4451C, 0xCB35C4E1, 0xC929D024, 0xE0A839DA, 0x2018BE30, 0xD51E252D, 0x1DE218BB, 0xD4EF9DC5,
+0xC1D6CF15, 0xC6EC202F, 0xDEE0243A, 0xD0CB2437, 0xDB4137C8, 0x1FCCD0CB, 0x494BDCE4, 0x21DDEC3E,
+0x32BFC82D, 0xE312CCD4, 0x24E9E03A, 0x2A25D026, 0x4238E8B8, 0xC53CD824, 0x35CC2CD3, 0x30360D33,
+0x31441C1F, 0x3BC2BB37, 0xBEBFD8B1, 0xBED4432D, 0x15DF3817, 0x0F552C4C, 0x2C3229CF, 0x093131DE,
+0xEADAD0CA, 0x20DB1DE4, 0x36CA19D7, 0x452EC9E3, 0xFAC8F1DB, 0x2FD72035, 0x3ED2E34D, 0x2924363D,
+0xC038C2E9, 0x3AD83425, 0x12D730D9, 0x272326B8, 0xC51F36DE, 0xE8E92A3C, 0x31EACEDB, 0xCB190000,
+0x2C3D1DE1, 0x000029D7, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x6D6C0FC7, 0x695E19CA, 0x7EB05A2B, 0x097E1C19, 0xF638B020, 0x434867BF, 0xB2F7A7F9, 0xD5E4675F,
+0x1484C629, 0x6D2398C9, 0x2E9D9825, 0xF77207AB, 0x2298BE4E, 0x9F0348E7, 0x63F5E6D9, 0xFCED9D5F,
+0xC3156E03, 0x3DDED87F, 0x82A04AD8, 0x46830814, 0x0ABC6AF6, 0x8460B3FA, 0xA125DB70, 0xFD2E5A73,
+0xCCA0D482, 0xD24F74B2, 0xA165BF2D, 0x7AEB7769, 0xD2E8E792, 0x8074937C, 0x304C10C8, 0x04D042E6,
+0x6F6FB346, 0x3F0DF322, 0xC33CCB51, 0x945F718B, 0xDFFAED2E, 0xC6256C5D, 0xEC4EC0B3, 0x6D158698,
+0xFAF192F1, 0x1C1B11DE, 0x1E0516AC, 0xA3EA4F89, 0xB3160AED, 0xB8F5B07F, 0x83DA2542, 0xED25300F,
+0xE72E3F2A, 0x4D65C154, 0x4A4A5AB2, 0x8750C7C7, 0x9186FAF5, 0x40340A94, 0xC5051EB6, 0x9D817A5E,
+0x20FA4764, 0x9B9785E9, 0xAB3A74A7, 0x24780C31, 0x72E2728C, 0x4281C451, 0xC58214EE, 0x17A374BA,
+0xB32FB444, 0x5CEB53DF, 0xA4F9F01A, 0xE040A0D2, 0x5C8387C6, 0xC402D081, 0xEE12B765, 0x66DBDE72,
+0x57768125, 0xA622CA43, 0xE27FC00D, 0x813CCAE8, 0x6250F3BE, 0xBA33C25D, 0x066FA4BB, 0x5D45B957,
+0x693C22DC, 0x2F92B6BA, 0xED8195FF, 0x1A8FA7A2, 0xAA901FC3, 0x5D3D3B01, 0xF9B29B46, 0x264EC79D,
+0x626D3F38, 0x026FC327, 0xC3F162F6, 0x0764E575, 0x64434EDD, 0xB4005E0F, 0xC0C5887B, 0xFC61AFB1,
+0x051E5849, 0x7256EF9E
+
+e =
+4914
+
+k =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..f765d99
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
@@ -0,0 +1,1034 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x21000000, 0x2b3bd538, 0xb93735b8, 0xc7df202c, 0xdb3827e4, 0x24403757, 0xbb23e931, 0x4dc9d04b,
+0x33e84c40, 0xe7dac343, 0xc33ad6fe, 0x0937db31, 0xc1f1e52f, 0xca46d5da, 0xd1b8fcf8, 0xc552c5e4,
+0xffcbddc1, 0x34c414db, 0xcf233f19, 0x1a23d12b, 0xc01539e6, 0x1c2a3654, 0xb9fb1fdb, 0xce2e3d5a,
+0xd64d38cf, 0x4331dd33, 0x1fd1b830, 0x272ac0af, 0x2ec74548, 0x39edde48, 0xdce0e533, 0x162a281a,
+0xb026112f, 0xcee2ec3d, 0xccdad2d5, 0x1c252f15, 0xf4cec5c9, 0xf7d8dec4, 0x343a39f2, 0xbe37130a,
+0xd2d0df43, 0x09202c38, 0xde253c1d, 0x352c2f19, 0xd2e03824, 0x0f430bd3, 0x3ff526bb, 0xcac0483d,
+0x00c8cac9, 0xecd7e347, 0xce280821, 0x27561f27, 0x413c34ae, 0xdde745b6, 0x4030d24e, 0xe115e1cf,
+0xddd54dd7, 0xd147c5ce, 0xd01a2746, 0xd6c12942, 0xc92642af, 0xee28b81a, 0x37222933, 0xe4e121f8,
+0xd8c2211e, 0x43cac91b, 0xdacfc2d3, 0x3acfcbc6, 0xebbecbcd, 0x1c1af2c5, 0x39c0de3a, 0x3237e446,
+0x3d3e3f13, 0x24393bcc, 0xd13c19bc, 0x1dcd53d3, 0xaf14bcc6, 0xc13a3f22, 0xe2c1e6c7, 0xd118c932,
+0xb2152926, 0x1e21ce29, 0xcf2ac6d8, 0xc8232b0b, 0xba22d6d5, 0x25e2e6be, 0x35dcc72e, 0x3adddcc7,
+0x34c422f2, 0xb023bcc7, 0xcd13df34, 0x43c2262f, 0x1b0ccdc9, 0xcd2b1022, 0x25d8323e, 0xd5d9441f,
+0xeb29393a, 0xd2c5ed00, 0xcf13a7cc, 0x10c539e9, 0xf83a3d31, 0xd5d5e3d6, 0xd4dd2cd5, 0xc8cb0cbe,
+0x1c1418c9, 0x35c5112d, 0x2028ebce, 0xd93ac6ca, 0x4042ced9, 0xd7d232bb, 0xccccf528, 0xd522d3b9,
+0x15242128, 0xbf51d1d9, 0x22103826, 0x3a0325b7, 0xcf3ae830, 0x394510c1, 0xe0334744, 0xebf12b2c,
+0x57bb0fa8, 0xcb0f303d, 0xe5f3062e, 0xdf323a0b, 0x1d34bed2, 0x2a1be5b6, 0xc53bcbd9, 0xb04f2fc7,
+0xe736bf1f, 0x0fe9b6ce, 0x37222b25, 0xaae9ce1b, 0xb62fe0e8, 0xc13adc2d, 0xd23c2740, 0xa93de410,
+0x2eafdc3b, 0x2454f134, 0x23d63f45, 0xb1edbf0b, 0x44e83847, 0xcc40e231, 0x05d133c0, 0x08bccf24,
+0xcf49dece, 0xf12c0023, 0x19c8d6d9, 0xd8d03644, 0x4748c0cd, 0x20d03322, 0x1ce62bdb, 0xd02e1ad9,
+0x46391416, 0x30e9ea35, 0xd63ec7cc, 0x3fc9d4cc, 0x41e1c3bb, 0x1920ba18, 0x2d2d1317, 0x2a1bde1f,
+0x1fe1d4c7, 0xc638b2da, 0x2adce33d, 0xb6c6dec7, 0x9fdec6c6, 0x1f3d1add, 0x46192041, 0x38e44c34,
+0x2d2323e3, 0xc9e83ed4, 0xc1cfaac7, 0xc70fc918, 0x2b2bc3ef, 0x21c133d4, 0xc5f10a34, 0xbdc51620,
+0x3bc4383f, 0x3d2fd731, 0x3429caae, 0xd4c5e4cf, 0xd41f451d, 0x2a2837c5, 0x46e1d6d6, 0xd0cb2f2a,
+0xf616d434, 0xbe13293a, 0xcefac92d, 0xc1badc29, 0x1c2b1e37, 0xbd173ac9, 0x3332bfc8, 0xd3cf49d7,
+0xc7e9d0e1, 0xd60037f8, 0x32cf332b, 0xd8412ebd, 0xd9da3fca, 0x2220bb12, 0xc1e316d1, 0x2f4dc224,
+0x3840dc1d, 0x202adb3f, 0x36cdbfc2, 0x23c5d5e3, 0xbb41c025, 0xddcbae17, 0xdbd9c2c2, 0x462d1045,
+0xc3ccd03f, 0x2232312b, 0xcc25d2d4, 0xc90bcdd8, 0xc6d6dc48, 0xd95f28c3, 0xe02a26f1, 0xe125ded9,
+0xd9c049ee, 0x33283431, 0xd23c2dbe, 0xd4d826c9, 0xdb14f123, 0x3fcb3e4a, 0x3fc7c4cb, 0x2fede31c,
+0x372cd243, 0xb7c608e4, 0x33cd371a, 0xd84632b2, 0x3239c2c3, 0xd525f2d8, 0x17b724d9, 0x3f3729d6,
+0x39e3e125, 0x21db42bd, 0x1cb6bb3a, 0x38303a26, 0x3632e32f, 0x2e28ccbd, 0x321bcdd3, 0xca1cbab3,
+0xd636e535, 0x403d2d31, 0x2c262b49, 0xe0d25442, 0xc230e5f3, 0x292523ca, 0x260fe3dc, 0xc81420fa,
+0x0b2541fb, 0xddd95bd9, 0x3e3a48de, 0x212128c2, 0x44e02e30, 0x47d2d83d, 0xc92149c8, 0xd520cad6,
+0x3cc467ea, 0x3f31ebde, 0xe12bd8c1, 0xd8cb2dc4, 0xa6461a2d, 0x16be0dcb, 0x35d82bba, 0xce3653de,
+0xc7db1d20, 0x30b817c0, 0x2746e3c8, 0xdb12302f, 0xd0b93824, 0xdbd0d455, 0xd4d63b1f, 0x2fd0cb3a,
+0x3e26dfea, 0xe0521ec6, 0x3ddac146, 0xdd2b29c9, 0x3f0938d0, 0x3fc713c7, 0x261b21d9, 0xbfc8d3c2,
+0x35de3d34, 0x03fb0fbb, 0xd24bd619, 0xd0283634, 0xdd3add4f, 0x38dce12c, 0x5cd149b0, 0x3e51263d,
+0xb7e2d5cc, 0xca3222e1, 0x222b4f00, 0x46cf1837, 0x333021c6, 0xc33b331a, 0x303724d5, 0x2c4cbbdd,
+0x29e4d615, 0x58c7cc42, 0x3d44dd4a, 0xd010d4bf, 0x26291fd9, 0xb930f3b0, 0xce30ea39, 0x1bd74df1,
+0x23d82bd4, 0xcd25504b, 0xcfcae618, 0x3b351d3e, 0xba37c7d5, 0x33bcd7d0, 0xb4293adb, 0xd71dc6e7,
+0xe1222636, 0xcfee25b7, 0xadc44668, 0x26d332db, 0xce2c1440, 0xc5acbf1a, 0xb6d4d7df, 0x303c26cb,
+0xbd55d341, 0xd3cef3e0, 0xbb44a629, 0x2a36bba1, 0x0d37c70b, 0xd1e734d0, 0xc8cd33db, 0x273d4534,
+0xc5e33d0c, 0x323c21f3, 0x37c5c137, 0xd624c207, 0xeac5c828, 0x1618e022, 0xc332dccb, 0x133ccf40,
+0xb6d7b5ca, 0x275ccd30, 0xc0f40061, 0xc2dede26, 0x22d61ad2, 0xe224c231, 0x2334e63e, 0x13c7e2e0,
+0x33dbcddf, 0x3941b31b, 0x4924cc27, 0x3bd0ed2b, 0xddd91bc2, 0x402c2a17, 0x31373e49, 0xc4e433c9,
+0xde0a3e33, 0x48bcbec7, 0xb3de19de, 0x4c561f3a, 0xc8d9d020, 0xdc3128fb, 0x2e25d437, 0xe62833da,
+0x4fdbd815, 0xe734c0ea, 0x142c22e4, 0x4e37c5ee, 0xe9d7d042, 0xd9d4c623, 0xa4f929d8, 0x2a1f2e3c,
+0x65433a47, 0xc9d8ca3d, 0xf01cd531, 0x4dcbbc22, 0xc5d4e1f3, 0xd33f34c2, 0xc60d1f2f, 0xe1ba2312,
+0xefead314, 0xebbef445, 0xd2d32426, 0x1a41dd2d, 0xd4e3cdc9, 0xefcfd2dc, 0x25cc292e, 0xc3ecd0ca,
+0xf4cc2d28, 0x4de2c525, 0x3100334a, 0x3e12daee, 0xdfef340b, 0xc74938e4, 0xb228d1d3, 0x1348413e,
+0x1529c8f0, 0x482b2cc7, 0x04d8bf1e, 0x3e3bd637, 0xdae0cb50, 0x3334e20f, 0xd4c5e035, 0x52d33734,
+0xed3b2fcc, 0x30e62321, 0xd02633ed, 0x19d5e3de, 0x3821c3c5, 0xd309c7e4, 0xc3e430d7, 0xcb2b22d4,
+0xc6341bd6, 0xd5282638, 0xde2a2a1e, 0x3b3ce023, 0xdd48bdb8, 0x32272ada, 0xd84ae4df, 0xca2d48d0,
+0xd33dc931, 0xb53ed0de, 0x23cd35d6, 0xb216112b, 0xd4c83a41, 0xe9dd4fea, 0xc9d14bff, 0xeba82816,
+0x4ed62d13, 0x37eef1d6, 0xa4dc3110, 0xbcbe2c15, 0xdc354bc3, 0x2ed20d25, 0x131fcac3, 0x25e1dc30,
+0x24c3c416, 0x3035c527, 0x0020001b, 0xeee141df, 0x16ca2fc6, 0x1b2bbe34, 0xd60b322b, 0xee09d023,
+0x3243c423, 0x52c42eba, 0x242fe8c9, 0xe9d5b925, 0xb9211244, 0x272e13c4, 0xe9cdca16, 0xc1ddeb0f,
+0x1cb2252f, 0xc3ec48d7, 0x07ae39d1, 0xcfdbd1d6, 0xd0efd937, 0xdf44ce24, 0x1b1e153f, 0x12cfc6c8,
+0x382dbfc7, 0xcd39c4dd, 0xda1b2528, 0xbe1cd5d2, 0x39d94147, 0xba3a39a1, 0x4a17f0bf, 0xbcea2ade,
+0x063927c0, 0x29122abc, 0x360cd8df, 0xd0ebdfc3, 0x2a313cc2, 0xc7b241dc, 0xcc282ad0, 0xda5334dd,
+0xe848e2c4, 0x2ebb2f3d, 0xcd5bcd1c, 0x2e201eee, 0xcd2dcdbd, 0x2f3152d5, 0xe0160ec5, 0x493ac035,
+0xdf174427, 0xead72f3c, 0xd8cb2f37, 0xc8d72d00, 0x2fe6e039, 0xe8e32d1d, 0x2ec4dbc8, 0xe23a454d,
+0x3351bfd6, 0x09da3acd, 0xd1d7dcd0, 0xcb45cc4a, 0xd51a10d0, 0xd2c3aada, 0xcfbcd530, 0x27cebe26,
+0x3abed442, 0xd126d93a, 0x1d3fcb2a, 0xe247bfdf, 0xad3e1434, 0xcd4ab1b5, 0xdb38212c, 0xcb291f27,
+0x0adfc2ea, 0xd236d7d6, 0x4d3423eb, 0xccded207, 0x362ad71c, 0xe2ca2041, 0xc72cd2a5, 0xdad9cbfb,
+0x4f29da19, 0xf23826ba, 0xb6d0291d, 0xd23bd0e0, 0xdd16d02d, 0x41111a3b, 0xc6c83351, 0x30bdc934,
+0xd721ef3c, 0xd1152cb7, 0x2023be12, 0x07c2ece3, 0xd2be45ef, 0xd1d1d9d2, 0x2a432327, 0xd0c6ddc1,
+0x1def40b5, 0x263f1f2d, 0xdbd8e325, 0x1fd30014, 0xd5daeae0, 0x14d9cac2, 0x3fd23919, 0xecdad1e1,
+0xe829d3e7, 0x3a29551f, 0xee2f35e1, 0xcad018db, 0xe6cc4239, 0x2959d2d6, 0x2530d2d9, 0xd9c54744,
+0x23e7d0cf, 0x4d37dfd1, 0x0f2439c0, 0x402a3319, 0xc232d5c9, 0x1816d9ed, 0xdee5aedd, 0x3fd7dfe7,
+0xe02fb85d, 0x04d4bbe2, 0x1933c820, 0xee2630b8, 0xd831132c, 0x0fd71f24, 0xc0f234d6, 0x234c36ca,
+0x1f27143e, 0x2b2e284f, 0x4f3c2a21, 0x38dedc3c, 0x1e2f2ccb, 0xbc26444d, 0xc43e1d26, 0xd2371f1d,
+0xe4f1e3c7, 0xcdc452cd, 0xd52141cd, 0xc627d418, 0xbe330bd4, 0x43c24b40, 0x33ac4128, 0xb9cabdc4,
+0xbd2defb9, 0xe9043be2, 0x38cb27c6, 0xcc004247, 0x27c62b22, 0x33ccdb23, 0xbab84cd5, 0xb9d938e2,
+0xbb2e332f, 0x4fed3932, 0x50d5cebc, 0xc7e84425, 0xdcca2b2e, 0x2c3729d0, 0xd247dd28, 0x2cdf09cf,
+0xe12352d1, 0xd2372c51, 0xd517da26, 0xdce63bd7, 0xca3926d7, 0x0bd144c5, 0xef37d830, 0x38b73a22,
+0xe03f2936, 0x33c8d7b2, 0xbc2adac1, 0x3650c52c, 0xc84d2317, 0xdec2ef28, 0xdb29df20, 0x2bced846,
+0x2e452fde, 0xdf1c3ebd, 0x482d203e, 0x2537efb8, 0x2235e42f, 0xc3bb2ad6, 0xc4fe2f29, 0xd324313d,
+0x38bfddf5, 0xd6de3a2b, 0xda3a272f, 0x2bd6bbd3, 0x2c35bcc2, 0xcf2fd248, 0x4551b9e2, 0xadf0b1d0,
+0x4038c4db, 0xc71427f0, 0xe1e32f40, 0xe71b3dd8, 0xc73810dd, 0x3d4d223d, 0x3116e9d9, 0x44b0c7ca,
+0x5037ccd0, 0xe5d52a0e, 0xc644111e, 0x35272fd3, 0x361421d5, 0xc9cad2cd, 0xdd360cc9, 0xaddd2ce7,
+0x2aee4aeb, 0xbd0713b3, 0xf5f3c02e, 0xeec531cd, 0x20da0841, 0x2f09e526, 0x332e2628, 0x3bc81726,
+0x111bf6dc, 0xc0c4c718, 0xea2d49df, 0xe3ce2d40, 0x242640ea, 0x0ae5cd37, 0x3f39e1d5, 0x5031edd7,
+0x3018322b, 0xc7d6ccbd, 0xc94429f1, 0xc93a1f33, 0xd32dceb2, 0xdf3317d7, 0x2fd5c1c5, 0xd02f4130,
+0x42aebc06, 0xda2bdab4, 0x47c5c033, 0xdf2ed3e1, 0xbace19ce, 0xda1feac1, 0xe04a1821, 0xe7d6b9d5,
+0x10d2a41f, 0xe0e330c3, 0xc7ea3f34, 0xbccb22d2, 0xce2e1a00, 0x27c43a0e, 0x3321ef35, 0xf6cb3437,
+0xcd41d1da, 0x36eec4c7, 0xd93b5aed, 0x152125e5, 0x41ca3bdc, 0xc1eceac8, 0xc8ca0601, 0xd32dc440,
+0xbebe2042, 0x3039cec9, 0xc4371645, 0xd529cadf, 0x423ee1ea, 0xe2dc1bf1, 0xdbbbd443, 0x3ceefff0,
+0xc0362841, 0xe3dc26e7, 0x272de1fd, 0x58d2441e, 0x1820f554, 0x3acacd0c, 0x3fccc9d2, 0x22332dd4,
+0x32d6b939, 0xc4d03dd8, 0xb03ebfcd, 0xe6beecaa, 0xc95528c5, 0xd2e131d1, 0x34373842, 0x44da4bbb,
+0x431e3ac8, 0x26ccc93a, 0xd8dab0b0, 0x42dfc643, 0xd2d8d6df, 0x4132c042, 0x2935cf22, 0x2921bb02,
+0xe8e73e2d, 0xdfd829b8, 0xe4233637, 0x2cdccbd9, 0x212e003c, 0x1943c2ee, 0xddd5c0c4, 0x30ccd4d6,
+0xb42613c8, 0xd5c92440, 0xf24edec6, 0xd7d51d2a, 0x1dd0dd42, 0x2915e7b4, 0x4dddd445, 0xb1e636ce,
+0x17cf1c3d, 0xdb2dd7e0, 0xc438c118, 0xda4aeb25, 0xec24d04b, 0x27d4402e, 0x2eeee6da, 0x3aca41e4,
+0xd9d53824, 0xbd4735dc, 0xc9323fe1, 0xd2d0c02b, 0x2fe82c34, 0x47cf34e4, 0xed23523f, 0xc5223e12,
+0xea47b7e3, 0xcaca2b47, 0xd95c32ca, 0xdad423e5, 0x21c2b832, 0x3cdfcb31, 0x2ec5b3ef, 0x16d429ec,
+0xc5c7c93a, 0x3edacc1f, 0xd137dbaa, 0xbbd6d1df, 0xef3b3a19, 0xc0dd2bc2, 0x3c2430e1, 0x454ec7cc,
+0xc23ce234, 0xf3382a2c, 0x32e13f12, 0xcae6c4b6, 0x2900b70f, 0x2d1dca3e, 0xca20cde4, 0x2f3aead4,
+0xc53ecb3d, 0xe348c2ed, 0x3e43d9cd, 0xd4b21cca, 0x31d6d9da, 0x1cc2c936, 0x2537d5cb, 0xd2e5e7de,
+0x1b423012, 0xe537c5d5, 0x332bdb1e, 0xe41dd0ce, 0x3dcce6ed, 0xc3dcbed3, 0x3046e2d2, 0x2e193ad1,
+0x1e6549bc, 0x3820d03a, 0xf8d0affa, 0x371c211a, 0xdbe4d2d8, 0x24cc2134, 0xcd1ae0d8, 0x3913ce3a,
+0x281f3a4a, 0x22c53152, 0x3a11fd2d, 0xd82a33f3, 0xdbe91a46, 0xc71a1d20, 0xcbeabe1d, 0xc7c54632,
+0x344fcfbd, 0xc831211c, 0x19a227bc, 0x49c83ec8, 0xe02242bf, 0x40efbabc, 0xc94039dc, 0x22263acb,
+0x2b2634e7, 0xdf391d36, 0x49ce3038, 0x20152fe7, 0x003ff136, 0xd5231029, 0xc9232f1b, 0x22c7d42e,
+0xeb0ac538, 0x2fdcdd4c, 0xd7402336, 0xcae1d2d3, 0x16d1ba27, 0x4f263c40, 0xda203a35, 0x2b162ad4,
+0xcdd9281c, 0x362a28bd, 0x39c5a4d7, 0x27e9cfcc, 0x30231e21, 0xbac94dd4, 0x39341723, 0xbae563e0,
+0xbd1134c3, 0xec0f33ab, 0xcb2936dd, 0xf92d2ee0, 0x34dcc04e, 0xc5ef1b12, 0x1d3aeebe, 0x1af4e6e9,
+0x23dcd858, 0xc01f40d1, 0xc9c9c4d9, 0xd63e143e, 0x04bad9e5, 0x4bdecd22, 0xc042cccc, 0x285118e4,
+0xd548d326, 0xf5c5c224, 0x46afe1bd, 0x41d02d31, 0x3961433a, 0x392345d4, 0x30cb3c2c, 0xd5d00dcd,
+0xf22a2100, 0x14d2333e, 0x22bcd334, 0x3a2dcfa5, 0xe80bc1c5, 0x264b1f00, 0x13d12bbf, 0xc8d9442c,
+0x353b382a, 0x234341ca, 0x2d352ebf, 0x41cfde43, 0xd63120cf, 0x3cc734e8, 0xd036e825, 0x3d3c1fce,
+0x041e373b, 0x091e2c30, 0xbc29e235, 0xc0e42cc7, 0xa7252b39, 0xc63b25cb, 0xc23b1a2a, 0x2936c337,
+0x3f2ac9cc, 0x0a1cd9ae, 0x1dd233e0, 0x2bc21dc0, 0xa6e2c62c, 0xdee544df, 0xca3329c0, 0xe0c43942,
+0x1ca739d2, 0x241633d6, 0xb826de18, 0x33cb1935, 0x1a37ca2d, 0xc90fd1e3, 0x20262fc7, 0xc34cd3c4,
+0xcb4fcbb4, 0xe5d32f2d, 0xe1c3331b, 0xd0c1c833, 0xd52e33ba, 0x33d8352a, 0xe3472a24, 0xd01a31e3,
+0x4026f4c7, 0x1dcc1dc4, 0x36ca47c2, 0x41bee407, 0x02e33a39, 0xefcd00b8, 0x08cdb333, 0xde2d2528,
+0xbf2038e1, 0x27d9c636, 0x2c9e2620, 0x311fefb4, 0xddc0e2da, 0xf0ec291a, 0x47ca3ae8, 0xe9e8b8bd,
+0xc7341ec8, 0xcbdb2f4f, 0x2efe005b, 0x3338db40, 0x313ec7e8, 0x1cceeb2d, 0x372b3cd9, 0x39d5d1d4,
+0xc9b22450, 0x265e2325, 0xb6bedbee, 0x2c2e07cd, 0x1dcb29ce, 0x2539b7c9, 0xcdb263d4, 0x4fced731,
+0xdee0c2d7, 0xfe2e49af, 0xc82eefb4, 0x4be5d6b9, 0xf0eb13f8, 0xe6ceaedd, 0xafe21fcd, 0xe52ac125,
+0x2ee00523, 0x30db3fda, 0xd0e6fd14, 0xc51e4f33, 0xe0fd0fd5, 0x3c194ae6, 0x241ea923, 0x343e1f21,
+0x22d5dcc8, 0xd2411033, 0xbbe939e4, 0xb5dc40cb, 0xc3ddf617, 0xe800ca33, 0xd03cce1c, 0x2fcb2def,
+0xd1cdd3f2, 0x113ec74c, 0x3d10373f, 0xec2538d9, 0x28c3d733, 0xe74916f3, 0x37cef6f5, 0x3532bc0d,
+0xdec3cc2f, 0xdcdcf4dd, 0xdbe1c3d4, 0xc32e212b, 0xc12155cb, 0xed5ad9b2, 0xb43847ab, 0xc2dc4acc,
+0xd2223b28, 0xcd25dd31, 0x3fd7b6d9, 0xdee1f8e5, 0x3cb337eb, 0xdf19d333, 0x3344ebd3, 0x32eb22f0,
+0xdfb3262e, 0xaedc41bb, 0x25d7dfd6, 0xaa13401f, 0x2eceedc6, 0xc02e36c9, 0x28da38df, 0xc41c34d1,
+0xc8442bdb, 0x48c9332a, 0x3acae6ec, 0x271bbe3f, 0xf121e2c7, 0x3edc1edd, 0x2bbe35b0, 0xe03c42cd,
+0xcbe84331, 0x1428cf17, 0x1cdce821, 0xe4351ad8, 0x38284ed8, 0x263e19bb, 0x182bbc10, 0xf438d2da,
+0xe4f3b8ed, 0xd63bfb1d, 0xc1cae51e, 0x36194bcb, 0x19cd21fc, 0xea322e41, 0xd5146635, 0xc8f9e1e7,
+0x48423123, 0x42c4331c, 0xe1d04141, 0xdac0e12d, 0xdce73f25, 0xbec6d0cf, 0xe52a41d2, 0x452ae9d2,
+0xc9e7bfd5, 0x3f033022, 0x21d21b44, 0xe335332e, 0x40ebbd29, 0x2bdf2cdd, 0xf336e53f, 0xe54b2b13,
+0x4d12243c, 0x31b9c5db, 0x111ccc18, 0xd5d31315, 0xd2f9dfb7, 0x3f4b1ecc, 0xe5e3db46, 0x27cd2c59,
+0xbfd10ac0, 0x25c33252, 0xe1293553, 0xdb1635c2, 0xd62db8bd, 0xd8daca35, 0x49d8daec, 0xc951ded1,
+0x2e2ce7e3, 0x1321d4d8, 0x33ee3a37, 0xe1ef3d2a, 0x12932fd0, 0xcad0de3c, 0x20c3e300, 0x36ed3adb,
+0xddcdbb39, 0xe7184dde, 0x564cb8b1, 0x41ea2ae8, 0x3ad6c619, 0xc722d34a, 0x4bc52c36, 0x27df1bda,
+0xc9e2bb64, 0xd5394036, 0x1b3b30d7, 0x12d71cca, 0x233d432d, 0x2ec6d2c1, 0xeb26242f, 0xd2ffe5c7,
+0xc6d9dbcf, 0xea3329d2, 0xd129ebbc, 0x1e39193d, 0xc6ecdcd6, 0xe64ac331, 0xdfd6c413, 0xc8c8eb1b,
+0x26bfc3ea, 0x2bea33d7, 0xecd10bd8, 0xba3c27d4, 0xacdadcd2, 0x2bcd2ddc, 0xd141dbe1, 0x2ecec0dc,
+0x272fd8f9, 0x0bc3e8e1, 0x47e5e91a, 0x24152c15, 0x2927d5d8, 0x28b8dc2e, 0x28e4c5de, 0x26202ed3,
+0xc734eb0f, 0x2e53cdd7, 0xce2b1f48, 0xc11ae321, 0xbb343531, 0x3f2128d1, 0x2c4a001e, 0x23d13c12,
+0xf4d3432e, 0xd62a3d30, 0xfdac20d6, 0xc32d1fd9, 0x3bcfc9e2, 0xc2d50dab, 0x310c46b9, 0xd12eb92a,
+0x3739c436, 0xdbd3e6cb, 0x39d52cd3, 0xccbb3e28, 0x47ec4326, 0x5fe1d645, 0xdb15d716, 0x223b3dc9,
+0x25de3d2d, 0xdfe4e244, 0x3b2daf28, 0xd62acb34, 0x1c42f1d5, 0xbece4217, 0xc3d03928, 0x4dbdd6d2,
+0x2eeb1617, 0x32bbd2e9, 0xc2bcdadc, 0xebc424d1, 0xcba8c820, 0x2ae6533b, 0xee3f1ee8, 0x30d4dd2a,
+0xdb3120c9, 0xced82d2e, 0x35e32f1f, 0x1031d711, 0xcec5d3ca, 0x3400dedc, 0xc32c342a, 0x3ae2d43f,
+0xb2c9b4f7, 0x4ec7ffda, 0x281e43ea, 0xf12641c7, 0x33474ebc, 0xc414372d, 0xc9003ba5, 0xe949ca30,
+0xc82fe4cb, 0xd222cd1d, 0xdddce1de, 0x3ccd2530, 0x44273c36, 0xdbedc2c4, 0x352e3ece, 0xb5d641be,
+0xc9cbe347, 0xdf282fe4, 0x1b232338, 0x26c4ecc6, 0x2fcccb1c, 0xcc391cd5, 0xcc46ffe9, 0x3d28b724,
+0xc949cb0c, 0xc03deb26, 0xc9c01f28, 0x24ca3cd3, 0x2f1acf47, 0x4fd72ad5, 0xd339cf1f, 0xd7d4be34,
+0x3d1f0abc, 0xe5373935, 0x3a2b3219, 0x3cc9dab7, 0x1eafc313, 0xe53cd2ee, 0x18d2e8cd, 0xe5d3c519,
+0xe9dfcc3e, 0x2836c6c6, 0xd8ebe638, 0x3ed9dadc, 0x2a45d3c0, 0xc3263bcb, 0xc428dec1, 0xd6dbdf28,
+0xd517272a, 0xbb26bd0d, 0x3814da33, 0xd8d0ca31, 0xc00fc5dd, 0x28d49e21, 0x00401518, 0xafcece36,
+0x383ce72d, 0xdb131a2d, 0x3327da10, 0xdac2a82c, 0xd8302d18, 0x39c4212c, 0x1a352fc9, 0xdfbf2332,
+0x21331428, 0x170145be, 0x29ee1dc9, 0x3233a2c2, 0xc9d7b43f, 0xdd4129c1, 0x27c91bd5, 0x1925173c,
+0xb0e3023a, 0x48e63bca, 0x37c000e6, 0x132c23c6, 0x2e24d22d, 0xd7c2ce3d, 0xce4213f8, 0xbed82ede,
+0x1cdcd6e4, 0xcccc1033, 0x27cf1120, 0x29dd37b8, 0xc7e53bc1, 0xbf2f3849, 0x443845e0, 0xdaac1c26,
+0xce093720, 0x422c4036, 0xccfb38e1, 0x1fd425bb, 0xc733ea10, 0xec1534d4, 0xded22ac4, 0xe42c1d25,
+0xca28d7b8, 0xc14bd845, 0x341bccb8, 0xbd1e2230, 0xf3d9d631, 0x1dd9d921, 0xca23d50a, 0x22343f00,
+0x35e0c7ad, 0x22d522dd, 0x342cdac0, 0x315c0a19, 0xde5634b8, 0xd5b8b5d0, 0xd24135b2, 0xbfbecc29,
+0x3dd12bd0, 0x2fc2ee29, 0x3ed4dfca, 0xcc0cc3f3, 0xdd3a23ca, 0x2fc316c4, 0x343036f1, 0x14db430b,
+0x35d6c2cc, 0x37bfdae3, 0x2d19c4f5, 0xbdd03129, 0xd42fc7b8, 0xe9d6deb7, 0xf12fd3ed, 0xcada19cf,
+0x1bace9d9, 0xcdbecacb, 0xd2d5273a, 0x40c63522, 0x3628d34a, 0x36e803c2, 0x332c42c7, 0x2eb1352c,
+0xbed4c3eb, 0xc21d42d2, 0xd430c85a, 0x2bd538d1, 0x21de45d1, 0x1bdbc34c, 0xd9ce3dc1, 0x1b46bdb5,
+0x3ad92c22, 0xbd2b202a, 0xc342eaec, 0xdabd561e, 0xd52ec801, 0xb3211923, 0xd825360e, 0x37130018,
+0xe7f04ed0, 0xcdd8ea30, 0xe230c7af, 0x38134f36, 0x2dd93139, 0x36c549d4, 0x1ed2e5d9, 0x3c2d39f4,
+0x23cad716, 0x3f03371c, 0xf61ed0c9, 0xdd25c83a, 0x2320d52a, 0x4a22313c, 0xedc43d2b, 0xce492bbd,
+0xd0ce2b4c, 0x3b1933e1, 0xdfd02940, 0x3dcbda3b, 0xcfcdbf2d, 0xe0b1b5bb, 0x1a2aee5d, 0x441c1e44,
+0x313a2c3e, 0xdfdcdc3f, 0xd72349e9, 0x261e3619, 0xda05ca32, 0xe6e12ddd, 0x47371f2a, 0xc3e2bcd3,
+0x4934c1db, 0x0f331e30, 0xbcf02906, 0x553ec733, 0xdc29203f, 0xca37cc47, 0xd3d93c3b, 0xdfbae42e,
+0x3dd31c1d, 0xe6da2a2b, 0xdcbcc234, 0x37f3c6dd, 0xce152725, 0x1b2b2ce4, 0xe4e64c39, 0x390046ce,
+0xba3730d4, 0x2e3224c7, 0x36cf3aaf, 0x31cc184d, 0x3e5cec43, 0x28391a31, 0xcfe4ce20, 0x2cc22918,
+0xf0e611c7, 0x48fa302f, 0x1edd2ad1, 0xe1b6caf2, 0x3b1fd815, 0x2a26d9ce, 0xc1ce2ec8, 0x3e3d1dcf,
+0xc246dec8, 0xd3f839c3, 0xdbedbf19, 0xd8eac1bf, 0xd5d71add, 0x283eb4dc, 0xe331cccd, 0xcdb8c1eb,
+0x372526cb, 0x2e281436, 0x2f2e39ca, 0x49bac623, 0x28dee328, 0x3431c4cd, 0x2fdf4d45, 0x353ce7c0,
+0xc82edb47, 0xb8193e35, 0x2ada22d9, 0xdbcd3fd6, 0x1e19e43f, 0x13c3c5f3, 0xd9d53b47, 0xe62531d5,
+0xb91b21d9, 0xdb4ba1c9, 0xd036e20d, 0x23171eec, 0x2e3e53d3, 0xe4e9cc1a, 0xf0d3412e, 0x31c1292b,
+0x24bbe2d9, 0xc527d531, 0xd4c04149, 0x09e038dd, 0xd3cfe3bf, 0xde3d442d, 0x2af1c438, 0x213328c6,
+0xd616342a, 0xdbd2e5d5, 0x21cb393c, 0x2d331e47, 0xbcd5e436, 0x20d2dbb5, 0x2b2f2fde, 0x412fd5c7,
+0x2f2422c2, 0x3de9dcc2, 0x5cbf2816, 0xbdda1f25, 0x2c483930, 0xecd0c7da, 0xeec5e2d3, 0x23d4d325,
+0x6e282d24, 0x38173029, 0x2b222f1f, 0xdbe2edcd, 0xd71018c7, 0xdbe3c9b7, 0xce42d837, 0x18d33d37,
+0x2eb6f515, 0xceccf822, 0x4cd63db8, 0xf5e3c7d6, 0x361819e1, 0xd6bfbd0f, 0xe1c2e1cb, 0x3d3b33e6,
+0xcbd34c20, 0x0640369e, 0x39c82c17, 0x3eb542c5, 0xd52e3dc3, 0xdd26cfce, 0xae29d138, 0x38b4c0dc,
+0x1d350000, 0x162eea1f, 0x21432923, 0xd534dcb6, 0xe4eada29, 0xecced02b, 0x2a2c30da, 0x2dc735fd,
+0xcac1cecb, 0x23c93eca, 0xd73d2037, 0xe80c43bf, 0x522824ba, 0x17ce1e26, 0x5e33e53f, 0xd5e9d4ba,
+0xe5cb1ecb, 0xd737d255, 0xb7e3db38, 0x410a2eb4, 0x3be4253d, 0xdffd4216, 0xbf18f018, 0xced2d9d3,
+0x4a23d0d3, 0xe4ebcf39, 0x1bd0cc2a, 0x39c7da35, 0xe24128d4, 0xe2cd313a, 0xdc20ea53, 0x2df0cd26,
+0xc7db42f5, 0xccd4d9c6, 0xe5dcdb34, 0x3b2909ce, 0x4218e450, 0xbdd5cd2e, 0x421ae9c3, 0x40262fe6,
+0x3800d33b, 0xd5c5c52e, 0xd6dc3727, 0x4cdb2ccf, 0xcbaabada, 0xc2d125c2, 0x41e236d8, 0x36ba20e2,
+0x2bd2ce3b, 0xb9e401e3, 0x073ac323, 0xcdda311c, 0x35c1b7c6, 0x31e54930, 0x33315330, 0x47403db6,
+0x0dc9ddb9, 0xd7cc1fc2, 0x35ea4532, 0x252915e4, 0x4f13d9a4, 0x1d22f3dd, 0xe8c3c2b1, 0xe9b336fc,
+0x0b231ad2, 0xc532c7e3, 0xcc0fc31d, 0xc1d6ea13, 0xe4193daf, 0x46d3da14, 0xc310da46, 0x36140ecd,
+0xf9b521cd, 0x3dd2bd13, 0xd539f7c5, 0x093f3ce3, 0x0f352cdf, 0x29412fe2, 0xccd4d732, 0x1e35b5e8,
+0xd8d250df, 0xda32242d, 0xdecaf62b, 0xbd53b43e, 0x024d2b2b, 0xd4e3d434, 0xbcd33334, 0xcc19340e,
+0xdd212a38, 0xd62b432f, 0x3fcdc4d2, 0xda4d4ad1, 0xf3d6dc2b, 0xa4d72fdf, 0xd0c5392d, 0x2d29b8d3,
+0x0000273c, 0xd73f08cd, 0x202ad7e8, 0x3fcbe634, 0x25c6cec6, 0x3b5815cd, 0xc82ad7d2, 0x28e5e6c3,
+0x260e451f, 0x49d830eb, 0xd2cf4cc7, 0xd122d1b4, 0x0bc82b33, 0xcc2fe53e, 0x41d5d9ec, 0xd0d0cd31,
+0x4c39d7c7, 0x163c23cf, 0xd53639de, 0xc352cfd3, 0xe0e323c2, 0xd1423716, 0x302b1c3b, 0x29d02fec,
+0xeaccddd5, 0xc13137d4, 0xd4bd394a, 0xc11ae6c5, 0x4dd5bea1, 0xd5df323b, 0x3b26a74b, 0xabd7402a,
+0x2cb4301e, 0x2027f735, 0x2713f5df, 0xe3d3b327, 0xddee3124, 0xce23bf32, 0xb3c9260e, 0x3e46da32,
+0xcc3cd5e0, 0x392dd02a, 0xd5d52822, 0x3235b2c6, 0x36e0f522, 0x202bcbcb, 0xc6dd54be, 0x2b3b39d8,
+0x311fd9e5, 0x32c7dcd1, 0xd81bbdd3, 0x26434fce, 0xc6ba392c, 0x212ee515, 0xc5d8efdf, 0xdfe62930,
+0x1c1a2f4f, 0xc91a2e32, 0x30d01357, 0xf02e1c20, 0x5bb93a20, 0xf0e9bd31, 0x243ee036, 0xe139c7b9,
+0x21463b1f, 0x412bec29, 0x3015c6e0, 0x3925d411, 0xbb13d939, 0x2b50c1c9, 0xc92ae71e, 0xc0d61a49,
+0x20d2e542, 0x0f3216d4, 0xc8d4da44, 0x4cee380e, 0xb5b8ce1a, 0x4731353c, 0x413fe1e0, 0x0ac939d9,
+0xe109c4d0, 0x3534c019, 0xcd213bc9, 0x1729f730, 0x252b4955, 0x02d01f33, 0x2536d123, 0xb3b3e947,
+0x4ba9c924, 0xba1d2440, 0x2d29b910, 0x21294ab9, 0xf124cd2d, 0x2ed723c6, 0xc01ebe31, 0x1da6cbad,
+0xce2ad830, 0xc32b0000, 0x15ebe1da, 0xdf2c3852, 0x3218262d, 0xd0a3e05d, 0xd6b8c3b8, 0xd421c622,
+0x0fe039cb, 0x2314d7c2, 0xcbe02dec, 0xd9d11424, 0xd03dc750, 0xd12a3835, 0x09ed00ba, 0x20281dc2,
+0xdddcbc3c, 0xe3c05037, 0x043ac03c, 0x480de436, 0x229eebba, 0x42193947, 0xd02ed3db, 0x123ccbfe,
+0xc8372d41, 0x222b49ca, 0x1128d9e7, 0xb2d04637, 0xbb1ce931, 0xd4d04226, 0x2f3cb534, 0x642fdef4,
+0x1923f02b, 0x50b22619, 0xd3b84031, 0xcb412737, 0x1ec9e227, 0x26dd1430, 0x3831211c, 0x32d043c7,
+0x2ee6bca5, 0xd33629c9, 0xf5282b1e, 0xc73c2d18, 0xcad52336, 0x31dee3c0, 0x2025d231, 0x4321cf47,
+0x24c7c0cc, 0x410dbfce, 0x4502cfcf, 0x2d41182a, 0xf01e1bb8, 0x37c94512, 0xd32a4fbb, 0x23b0cae9,
+0x29f52adf, 0xd02729c0, 0xb71ef6bc, 0x2a1f1633, 0xc64aba1e, 0x322fb9f4, 0x09242ff5, 0x20dcd9cb,
+0x35c0e12d, 0xc2d2ca21, 0x20a2bfd3, 0xb5d82cd9, 0x37e7d642, 0x2ae639c2, 0xe1364a3e, 0x2615d12c,
+0xd62c2127, 0x2304b12d, 0xd21cedec, 0xdf34d829, 0x2d1acde7, 0xe01e2534, 0xd333c8d2, 0xe2e0d410,
+0xd0df4930, 0xd231293b, 0xd4d33617, 0x1d4344bb, 0xddd1de20, 0xcaf4272e, 0xb72f46dd, 0x172e2920,
+0x2a27c742, 0xd4e01a30, 0xca35b7e8, 0xdc1d0c3b, 0xd02fc71c, 0x3ee13ee3, 0xd53db622, 0x4bd33127,
+0x4ad7c6f2, 0x0000d9ef, 0x14161a3f, 0x28e8dfc4, 0x2c1e38d1, 0x23b91206, 0x22d8dcd2, 0xcecc3a15,
+0x1bb4f5b1, 0x3cd0e3cf, 0xfdc3dbe4, 0x54300b36, 0x09c8e2df, 0xc7ec1bfd, 0x1d0fae40, 0xcf343bd5,
+0xb929d337, 0xd4c224f9, 0xac2a3437, 0xde261ebe, 0x2e20c032, 0xd3c1c0c5, 0x18e0cad5, 0xe417ebc0,
+0xef2a4ddb, 0xbde4e334, 0x2d32cdc6, 0xbd1ee8c1, 0xd834c3d5, 0x46e327f0, 0x353cc5b3, 0x3c20c1af,
+0x00000000, 0x00000000, 0x42dd3028, 0xd8c424d5, 0xe9d54729, 0xb325de29, 0x00000000, 0x00000000,
+0x44d5bdbe, 0x45c0bff4, 0x2219c22a, 0xcf30dce3, 0x00000000, 0x00000000, 0x2ed822fa, 0x3220d4cb,
+0xd437be3f, 0xcfd452e2, 0x00000000, 0x00000000, 0xc72e411a, 0xe923cbcd, 0x15e1dd36, 0x28cbe3d2,
+0x00000000, 0x00000000, 0x2225b73b, 0xd92bcb1f, 0x23bbd2dc, 0x3f34b0e5, 0x00000000, 0x00000000,
+0xdb44d7d4, 0x1ceb4040, 0x0cd3cfa8, 0x36d41d28, 0x00000000, 0x00000000, 0xc8091dcf, 0x2544de1d,
+0xc81c2e43, 0xe317252b, 0x00000000, 0x00000000, 0x22c6cfe0, 0x2a461c3b, 0x51dda630, 0x233f20ee,
+0x00000000, 0x00000000, 0xb9bd2c27, 0x23d5202c, 0xe23ac304, 0x4a3ddd1d, 0x00000000, 0x00000000,
+0x301b35e2, 0x0efb413f, 0x3c2d1cc2, 0xaedb2a24, 0x00000000, 0x00000000, 0xe7dbda13, 0x3cbbcbf6,
+0xafc1c830, 0xe7433323, 0x00000000, 0x00000000, 0xc7e80000, 0x292b33d8, 0xc4322cd3, 0x31163946,
+0x0000e2cb, 0x00000000, 0x253c0000, 0xfd30e7e6, 0x04c04dd7, 0x3fc918e0, 0x0000d2da, 0x00000000,
+0xcda70000, 0xe3d730c1, 0xc533d624, 0x1834d633, 0x0000eae3, 0x00000000, 0xb4bb0000, 0xe5d0dc2b,
+0x1c272b33, 0xef243c2d, 0x00002948, 0x00000000, 0x20210000, 0xcbfb1e42, 0x3749cf29, 0x442f1b10,
+0x0000b944, 0x00000000, 0x43dc0000, 0x42d9282f, 0x10cebc35, 0x3ed42cd5, 0x00002336, 0x00000000,
+0xe3e20000, 0xc230d923, 0x33ccc61a, 0x27e22ad2, 0x00003ed4, 0x00000000, 0x2bc10000, 0x051d0432,
+0xd310d9dc, 0xba331c3f, 0x00003030, 0x00000000, 0x20430000, 0x45b8cdce, 0xe515231c, 0xe9cc1931,
+0x00002b23, 0x00000000, 0x42140000, 0xd2dd2fcb, 0xee2eb7f9, 0x3e493028, 0x00002a2c, 0x00000000,
+0x20340000, 0x3d02491c, 0xe231a8ec, 0x0a270727, 0x000029c2, 0x00000000, 0xdbb90000, 0xc7dccd2c,
+0x0f203d37, 0xcbda00c2, 0x00002319, 0x00000000, 0xe51b0000, 0xd943d3c9, 0xbe1fd6d5, 0x423b53c7,
+0x0000d9e9, 0x00000000, 0xcebf0000, 0x19393427, 0xc3223fb8, 0xf431c6c5, 0x0000f5d5, 0x00000000,
+0xeb310000, 0x21f4e3c8, 0xb7d826ca, 0xae06b824, 0x00002345, 0x00000000, 0x562c0000, 0x21c33209,
+0xbf40c6dc, 0xe73dddd3, 0x000045f5, 0x00000000, 0x00000000, 0x27e31bee, 0xd02d24b8, 0x26e4cdc8,
+0xd331c72f, 0x00000000, 0x00000000, 0xd4261e28, 0xd337d4da, 0x3fdb2432, 0x1e474dc4, 0x00000000
+
+input1 =
+0x00000000, 0x48ddd534, 0x31cecfbf, 0x32e44edc, 0xb121dfdf, 0x00000000, 0x00000000, 0xf2232324,
+0xdb26cdde, 0x2cec2011, 0x2b2421d4, 0x00000000, 0x00000000, 0x19c71129, 0x55d50bd3, 0x2fd2ce41,
+0x3abeefd0, 0x00000000, 0x00000000, 0x1bef29c6, 0xd2d5d9ec, 0xe4b51b34, 0x2529d5e3, 0x00000000,
+0x00000000, 0x0cd1c825, 0x13d5ddd3, 0xbe252dbd, 0xb7434ed2, 0x00000000, 0x00000000, 0x46c82c33,
+0x1a171fcf, 0xc3c32fd4, 0xe64d2dd4, 0x00000000, 0x00000000, 0x37af330f, 0xd0e8f326, 0x59201fdf,
+0x19e9c153, 0x00000000, 0x00000000, 0x1bf81fb7, 0xbd19bbd9, 0x3043cd22, 0x39cdb9cc, 0x00000000,
+0x00000000, 0x1dc5de57, 0xd5c8f118, 0xcca7dc2f, 0x45da1c24, 0x00000000, 0x00000000, 0xe42f4036,
+0xf22de61c, 0xdfd4353c, 0xdb1c2fbf, 0x00000000, 0x00000000, 0x2722b4f6, 0x123f3cc7, 0x43cc37da,
+0x23d949be, 0x00000000, 0x00000000, 0x3233cf48, 0x34d4c8d4, 0x1b2c352c, 0xdfb7fa3c, 0x00000000,
+0x00000000, 0x343d28cc, 0xc1ca2dab, 0xd8330d32, 0xcab1b4e2, 0x00000000, 0x00000000, 0x1acf3435,
+0xfceddc39, 0xd7d5112b, 0x13ceec3f, 0x00000000, 0x00000000, 0xc32b0000, 0x45e24430, 0xc916ca3e,
+0x32132dd3, 0x0000d9dd, 0x00000000, 0xe1e60000, 0xce060018, 0x38401be2, 0x0ec83821, 0x0000ee52,
+0x00000000, 0xe4c90000, 0x1a313f14, 0x26dfc4e7, 0x23eb4df9, 0x0000e1bc, 0x00000000, 0xd4190000,
+0x37e5d4ae, 0x33cdcd50, 0x39d64a48, 0x0000e51a, 0x00000000, 0xc82d0000, 0xc6cc40bc, 0x501bbb22,
+0x2b293dd4, 0x00002f38, 0x00000000, 0xbbc10000, 0x2b3fc838, 0xce29dd5a, 0xd7de23e4, 0x0000d42b,
+0x00000000, 0x14d50000, 0xfac320fd, 0x35eccdc1, 0x1c3239b8, 0x0000bfb9, 0x00000000, 0x39e80000,
+0x0c21cdef, 0xbddad53b, 0x4b6337cf, 0x0000d03e, 0x00000000, 0x1e2c0000, 0xbfe6d50e, 0x1d1ebffb,
+0x50d734d1, 0x00004fe1, 0x00000000, 0x10280000, 0xb8d62f29, 0xb3b4d82f, 0x22cfc836, 0x0000df2d,
+0x00000000, 0x2f300000, 0xc7ced138, 0xbb3c46d6, 0xc71fe43b, 0x0000dddc, 0x00000000, 0xbcc60000,
+0x191937ca, 0x432fcae9, 0xdef5d12d, 0x00004e2e, 0x00000000, 0x2d580000, 0x4bcc26fe, 0xb6cd39ec,
+0x27c0c8df, 0x00003e2f, 0x00000000, 0x44b60000, 0x26bfb03c, 0xf1b7d523, 0xcec82ff6, 0x0000240e,
+0x00000000, 0xb1d20000, 0x21383bc5, 0x29282c14, 0xc9bcc2d8, 0x000012ed, 0x00000000, 0xdcbf0000,
+0xc125d023, 0x4b40d936, 0xd6e9d1f9, 0x00002ffe, 0x00000000, 0xc6290000, 0x1be1deda, 0x25cdd3e7,
+0x432acc2e, 0x0000ccd9, 0x00000000, 0x35d30000, 0xd7d623dc, 0xd328cec8, 0xe92144d4, 0x000033db,
+0x00000000, 0xd8440000, 0xd5c3c213, 0xd8f1d240, 0x37ce13ca, 0x0000aa3d, 0x00000000, 0x3ecf0000,
+0x311e42dc, 0xe7e33237, 0x2dcd3aa5, 0x0000342b, 0x00000000, 0x24c40000, 0xd2374134, 0xe2bd141c,
+0x2e4d2ab1, 0x0000c54d, 0x00000000, 0xf22e0000, 0x291c3f12, 0xe738d61f, 0xcf38d12c, 0x0000252c,
+0x00000000, 0x1d490000, 0xd12fccc7, 0xbed13c4a, 0x3d2f3624, 0x0000072a, 0x00000000, 0x12c60000,
+0x3fd6a7b8, 0xb5ea2830, 0x54d813b8, 0x000029dd, 0x00000000, 0x48d10000, 0xefd138e6, 0xe5e1dbe5,
+0xd72a2dda, 0x00004b34, 0x00000000, 0xca370000, 0xb6d540e2, 0x0fd1cec1, 0x31ac46b1, 0x00003adf,
+0x00000000, 0xb6d80000, 0x202716cb, 0x162c23c3, 0x44ecfec8, 0x0000c4eb, 0x00000000, 0x16ab0000,
+0x2fd72645, 0x41c038cc, 0xd9d334c9, 0x00002832, 0x00000000, 0x12cc0000, 0x34ce26f8, 0xd22bc6d0,
+0xb5594315, 0x0000c636, 0x00000000, 0x102e0000, 0xcbd3291c, 0xdfdce5dd, 0x22e422ac, 0x0000c411,
+0x00000000, 0xddc80000, 0xd3d4bff9, 0x331f3ee1, 0x1dd9132e, 0x0000e30f, 0x00000000, 0x20e90000,
+0xd53ad8bc, 0x293941d0, 0x19e1db28, 0x0000e33c, 0x00000000, 0x00000000, 0xcc16bb42, 0xc2dbfadc,
+0xd7c7262c, 0xd932d13c, 0x00000000, 0x00000000, 0xd3c91ebe, 0xbed241db, 0x483820eb, 0xbd1b30da,
+0x00000000, 0x00000000, 0xd31fc61b, 0x352938ef, 0xcc1bcc16, 0x1dc12300, 0x00000000, 0x00000000,
+0xc626c507, 0x45e6d739, 0x261abb29, 0x2833cb2e, 0x00000000, 0x00000000, 0x2db1cdce, 0xdd4a3cf3,
+0xd229d6b8, 0x381ad738, 0x00000000, 0x00000000, 0x14183f43, 0xc6ed2eda, 0xcdafcada, 0x38e5e2c2,
+0x00000000, 0x00000000, 0xbb52c63f, 0xd7fe3add, 0x3935cee8, 0x34c6c82f, 0x00000000, 0x00000000,
+0x363113d9, 0xcde61f44, 0x2f29d3ee, 0xddf6d1c1, 0x00000000, 0x00000000, 0xeb253223, 0xc8de3553,
+0xbbdbdd47, 0x44d23e38, 0x00000000, 0x00000000, 0x0ad82cca, 0x34c3c94a, 0x2e35fbe0, 0x2145d82c,
+0x00000000, 0x00000000, 0xd72bea45, 0xcb1720df, 0xc5c537fa, 0x1c0cd6d8, 0x00000000, 0x00000000,
+0xe7d9d145, 0xd14fd1c9, 0x3a153154, 0x3bccc8c6, 0x00000000, 0x00000000, 0xbc28262c, 0x32dbc8ca,
+0x2924eac8, 0xff21cfdf, 0x00000000, 0x00000000, 0xe8ddc921, 0xc1cc2507, 0xccdbc728, 0x2b10332e,
+0x00000000, 0x00000000, 0xd81eee18, 0x3223452b, 0x292dd7b9, 0xb8c3dbab, 0x00000000, 0x00000000,
+0x4615243f, 0xd23425dc, 0xe6c73815, 0xe9e43dd3, 0x00000000, 0x00000000, 0xd8250000, 0xd14b591a,
+0xe52bd2c7, 0xe548e0c4, 0x0000c9d5, 0x00000000, 0xfbd20000, 0x1ee1e71a, 0xc2c23913, 0x44cee6d3,
+0x0000d906, 0x00000000, 0x24cc0000, 0x5ef4c337, 0x12beb725, 0x493fd6de, 0x00001e2b, 0x00000000,
+0x2ec50000, 0xd1e1c6ca, 0xcbc93015, 0xd5442622, 0x0000d202, 0x00000000, 0xd3230000, 0x44b61729,
+0x12c524d2, 0x1f343811, 0x0000c4c4, 0x00000000, 0xc9e00000, 0xe3be23b0, 0x42133425, 0x28d8b3d7,
+0x0000bc49, 0x00000000, 0xcde70000, 0x3be1d9fd, 0x37a805f8, 0x2ff92839, 0x0000bb33, 0x00000000,
+0x52420000, 0x311fefd8, 0xc8ab1ec3, 0x23ddc7ca, 0x00004011, 0x00000000, 0xb4500000, 0x21324929,
+0xe03d38c8, 0x152b2acb, 0x00001edb, 0x00000000, 0x05340000, 0x2d3e3e49, 0xcfd0c9cf, 0x1528d6f2,
+0x000024a6, 0x00000000, 0xc5b70000, 0xd9d2becf, 0x282f1ed9, 0x36b72133, 0x00004b05, 0x00000000,
+0xca400000, 0xd7cae8d2, 0x30ef28da, 0x26c1d730, 0x000051d5, 0x00000000, 0x22170000, 0x421edd28,
+0xddc5421e, 0x1ed93420, 0x00002825, 0x00000000, 0x33280000, 0x45ce3eec, 0xddf6313b, 0x2ad6cec1,
+0x00001f1c, 0x00000000, 0xd9e60000, 0xd7dbe937, 0x283029eb, 0x0bdfbe3c, 0x0000c92d, 0x00000000,
+0x5de40000, 0x154ad3d6, 0xcc3c2f1e, 0xf039caf8, 0x000032d3, 0x00000000, 0x00000000, 0x49c4dfec,
+0x33c05518, 0x37d8261b, 0xdbf8c6cc, 0x00000000, 0x00000000, 0xd7efe223, 0x1b38d73a, 0x24cdd342,
+0xe4280843, 0x00000000, 0x00000000, 0x22c41232, 0xc0374543, 0x402ec542, 0xb53312e6, 0x00000000,
+0x00000000, 0xd8e0f726, 0xa62e3fd9, 0x1d12c749, 0xef413c47, 0x00000000, 0x00000000, 0xc7353e27,
+0x2844c82b, 0x0330c2cc, 0x27e035fa, 0x00000000, 0x00000000, 0x40d732bc, 0xd62cd8cc, 0x2e35ee39,
+0xf11dd413, 0x00000000, 0x00000000, 0xd3ddcec2, 0xeabf1ce9, 0x27beb0dd, 0xd2ccdc0a, 0x00000000,
+0x00000000, 0xe92c43c3, 0xddc143e2, 0x36bfef1b, 0xe4b8b936, 0x00000000, 0x00000000, 0xb1e3ecd6,
+0xc1183ae6, 0xab443ee5, 0x20d126c9, 0x00000000, 0x00000000, 0xa1e9cee0, 0x33363f4f, 0x45d51612,
+0x4cf81238, 0x00000000, 0x00000000, 0x1b1abfd6, 0xd1cb4336, 0xc747b939, 0xe0e4ce24, 0x00000000,
+0x00000000, 0xcec6b8de, 0x32d89d25, 0xeb2ebfcd, 0x39e7e23e, 0x00000000, 0x00000000, 0xe224c8d7,
+0xc035ebbf, 0xd4d5d52c, 0xbb15bab0, 0x00000000, 0x00000000, 0xcb2a23c0, 0x3831eadb, 0x4c3dd83d,
+0x2ddb13d7, 0x00000000, 0x00000000, 0x41cb4c30, 0xbed5be10, 0xddda3f25, 0x240e4233, 0x00000000,
+0x00000000, 0xf136323b, 0x17cce231, 0x4bd3aac5, 0xc7d9e340, 0x00000000, 0x00000000, 0x3f230000,
+0x36d327d8, 0xc1d3d9dc, 0xd5dcdc1e, 0x000038ec, 0x00000000, 0xac1e0000, 0xc44224e2, 0xdbb32b28,
+0xcc621fe4, 0x00004ce6, 0x00000000, 0x2f2e0000, 0x2cd748d6, 0xd0c5e1c2, 0xd7dfdccb, 0x00002acb,
+0x00000000, 0xc0d90000, 0x152d1dbb, 0x2822c117, 0xf335192b, 0x00003fae, 0x00000000, 0xc2e60000,
+0xd3cf3a2e, 0x38e7dfe1, 0xc6c54e21, 0x0000edd6, 0x00000000, 0x38cc0000, 0xc53a0ec4, 0xe04628cf,
+0x353f3716, 0x00003bec, 0x00000000, 0x3b310000, 0x3df3d535, 0xcac7cfd8, 0x431f42c1, 0x0000d434,
+0x00000000, 0x223e0000, 0x45302bd5, 0x41c32b1b, 0x3a22bc1f, 0x0000b938, 0x00000000, 0x281a0000,
+0x3fccdb1f, 0xf4c3d6d7, 0x3f1f34e3, 0x00002bc8, 0x00000000, 0xe9e50000, 0x2dd63d2c, 0xd9e6ddea,
+0xd8ec412d, 0x00003921, 0x00000000, 0xc6d70000, 0xc8332913, 0xe4e1e742, 0xcec43fd8, 0x0000c9c3,
+0x00000000, 0xfcd80000, 0xbedc2cdb, 0x3bd2e3e5, 0xbacf190d, 0x0000cdc0, 0x00000000, 0xbeb50000,
+0x53e82f31, 0xdc2e20c3, 0x320e3ad4, 0x0000393b, 0x00000000, 0x31cc0000, 0x43251346, 0xd3a8ef2f,
+0xddb735d3, 0x0000ea1d, 0x00000000, 0xcbb80000, 0x2ca9c6b7, 0xd1203c22, 0x20e3b523, 0x0000d92d,
+0x00000000, 0x25d70000, 0x1d283e31, 0xecdcd0d5, 0x376321d7, 0x0000a8e1, 0x00000000, 0x00000000,
+0xdfdc094a, 0x45ee2238, 0x173edc18, 0x5327b7d1, 0x00000000, 0x00000000, 0x2be32c21, 0x2fbdfcc5,
+0x4729c6c6, 0xdf31c632, 0x00000000, 0x00000000, 0x463fcf17, 0x3d30eaf4, 0x503f2a3b, 0x20d3e211,
+0x00000000, 0x00000000, 0xddda3410, 0xdc40211c, 0xba4a33fc, 0x38dc2d2d, 0x00000000, 0x00000000,
+0xcbd04829, 0x44db2828, 0xd7401dbd, 0xfb2ee3b5, 0x00000000, 0x00000000, 0x203ae222, 0x2e5f33d4,
+0x35c29e1b, 0xebd8473a, 0x00000000, 0x00000000, 0x392d2c3b, 0xeee31727, 0xbce82a29, 0xc8d64ad1,
+0x00000000, 0x00000000, 0xc72638bb, 0x0f1d2e48, 0xd1d6d041, 0xe52b3429, 0x00000000, 0x00000000,
+0xdf2054d2, 0xce124a32, 0xc7ce2337, 0x2d1c3e5b, 0x00000000, 0x00000000, 0xa2373ec9, 0xe5d42730,
+0x1b37ae20, 0x34e63823, 0x00000000, 0x00000000, 0xb8152f30, 0x14cf3128, 0x1fcb3323, 0xaf10c72a,
+0x00000000, 0x00000000, 0x14c3cde0, 0x06c0c833, 0x39edda0e, 0xe1242f02, 0x00000000, 0x00000000,
+0xd92b2b3b, 0xccdd2d2d, 0xdf48bf0c, 0x6524211d, 0x00000000, 0x00000000, 0x42dac1b9, 0xebd43232,
+0xe8f3b63c, 0xf1c03acc, 0x00000000, 0x00000000, 0xcbbec923, 0xf835cc24, 0x27ced912, 0xb736df3b,
+0x00000000, 0x00000000, 0x3b26c92a, 0x203b26cb, 0xb041211b, 0x20cc2d3c, 0x00000000, 0x00000000,
+0x1a220000, 0x3d2a37e1, 0xd8ddd54b, 0x16dcc63f, 0x000022d0, 0x00000000, 0xd0e00000, 0x42e8c7d9,
+0x2c1cdae0, 0x363bb432, 0x0000bfd3, 0x00000000, 0xd5eb0000, 0xce42e5be, 0x0834241c, 0xe41d3047,
+0x000021b6, 0x00000000, 0xf5240000, 0xd6ceba2c, 0x451c1c1d, 0x58134d20, 0x00002c2f, 0x00000000,
+0xcd3f0000, 0x25e7201b, 0x1fcb46b5, 0xf2d1352d, 0x0000b01c, 0x00000000, 0xd7490000, 0xd4e7dfb8,
+0xb5d0dfe3, 0x2cd6c4cf, 0x0000dc2f, 0x00000000, 0xe64a0000, 0xdec73927, 0x2c36c4f5, 0x304722d4,
+0x0000cae8, 0x00000000, 0xc3d00000, 0x5215dd30, 0x30c9c0df, 0xb42cd90e, 0x0000f4f7, 0x00000000,
+0xc0cb0000, 0xb0334857, 0xee45d220, 0xbdc7e815, 0x0000e3e1, 0x00000000, 0x3f140000, 0xcee8db3b,
+0xea42d02c, 0x161f24c4, 0x0000cabd, 0x00000000, 0x1ab80000, 0xd52f3130, 0xd7ece6e9, 0xdac9fbd0,
+0x0000ecc5, 0x00000000, 0xc6ec0000, 0xe327cc44, 0x53b01d36, 0xdad6c725, 0x00001d26, 0x00000000,
+0x23c90000, 0xb4d0d227, 0x3c43ebd9, 0x3141d2da, 0x00004130, 0x00000000, 0x1a2d0000, 0xc82e120f,
+0x2ce6d836, 0x2fe3f239, 0x000047d2, 0x00000000, 0xadbe0000, 0x4ed1d9dc, 0x3ad3cf2a, 0xbbe6e340,
+0x000034d6, 0x00000000, 0xd5c20000, 0x35d51ee3, 0xe424e3c9, 0x20db2a18, 0x00002106, 0x00000000,
+0x00000000, 0x33d035bf, 0x2c2bc0d1, 0x26cd2dbe, 0xd5fa3cb2, 0x00000000, 0x00000000, 0x17413ef1,
+0x492e20da, 0xcae7092d, 0xd723cab9, 0x00000000, 0x00000000, 0x24dacb26, 0xec0dd6c3, 0x1aeee31e,
+0x5fc3da15, 0x00000000, 0x00000000, 0xd70b66b3, 0xdc26d42b, 0x3bc544e5, 0x0335e832, 0x00000000,
+0x00000000, 0x333a362a, 0x38dfbc05, 0xdad50ec0, 0x4dcb44af, 0x00000000, 0x00000000, 0xe3afb626,
+0x0ee4e8bd, 0x082d16e1, 0xdad9bb2d, 0x00000000, 0x00000000, 0x37cfbeca, 0xe9c8282d, 0xc8322bb4,
+0x46ec2618, 0x00000000, 0x00000000, 0x2b47bdca, 0xc724cae7, 0xcdd25cc4, 0x1f1ec6ce, 0x00000000,
+0x00000000, 0x2c3e38ac, 0xca3728c5, 0x3801ebc2, 0x19e62637, 0x00000000, 0x00000000, 0x34c5dc2b,
+0x191b2f16, 0xaf352fbc, 0xe3d5b7c5, 0x00000000, 0x00000000, 0x1c242dd5, 0xd6db38c6, 0x2bc32535,
+0x26e13a09, 0x00000000, 0x00000000, 0xf4b630b9, 0xe4d6dc3b, 0xec2024d3, 0xabd226d4, 0x00000000,
+0x00000000, 0xdca0cdd0, 0xd939df53, 0x1f2721b9, 0x3aba0714, 0x00000000, 0x00000000, 0x233d334e,
+0x4cacbb25, 0xd618330e, 0x2fca3a19, 0x00000000, 0x00000000, 0xccb1294a, 0x2224dc38, 0xc53ce349,
+0x17e2df49, 0x00000000, 0x00000000, 0x44f8d61c, 0xea28e21d, 0x39bea820, 0x32d5d143, 0x00000000,
+0x00000000, 0x1943081c, 0xded6d128, 0x4b06c5c2, 0x35e0263e, 0x00000000, 0x00000000, 0xdd30d723,
+0x50d024e3, 0x40cf5315, 0x39c8d92e, 0x00000000, 0x00000000, 0x23d3d9e3, 0xbacb3154, 0x2cd720db,
+0xd7da3d40, 0x00000000, 0x00000000, 0xb2be1611, 0x4006db40, 0x311f361b, 0xd42e2e36, 0x00000000,
+0x00000000, 0x17c4b2d2, 0x3bceed46, 0x18443a33, 0xe4ce27f6, 0x00000000, 0x00000000, 0xe6e206e1,
+0xde2826d2, 0x4ed8c805, 0x1de1cdc6, 0x00000000, 0x00000000, 0xde34e7d3, 0xc83dc5e5, 0xe1132742,
+0xd5bf41d9, 0x00000000, 0x00000000, 0x34441a3f, 0x40e249b9, 0xf3381e30, 0x26e5c517, 0x00000000,
+0x00000000, 0xd9dcc9ef, 0x402f37d4, 0xc3273ce4, 0xc9cfd8e6, 0x00000000, 0x00000000, 0x2fb806f1,
+0x2130decf, 0x0cc0312d, 0x29452842, 0x00000000, 0x00000000, 0x2ed7c130, 0xdf3bf23f, 0x38dab6b2,
+0xd3444746, 0x00000000, 0x00000000, 0x3c0bd01f, 0xc833e8cd, 0x4824403e, 0xaee34927, 0x00000000,
+0x00000000, 0xdcf1cfc2, 0xd534ce26, 0xc8c32a1f, 0xc242c923, 0x00000000, 0x00000000, 0x1ad2cc2d,
+0x0d2223d1, 0x32253641, 0x1c35c4cd, 0x00000000, 0x00000000, 0x1ddc1dbd, 0xde3cc0dc, 0x0b2c2325,
+0x3eeb3621, 0x00000000, 0x00000000, 0xd3d7db33, 0xcb16d0ed, 0xdf1af232, 0x3132042d, 0x00000000,
+0x00000000, 0xe6420000, 0x252ecc43, 0x443aa42b, 0xd5db293e, 0x0000e632, 0x00000000, 0x1ec00000,
+0x0d25cb24, 0xd4ebcfc6, 0x14030ab1, 0x0000d8ba, 0x00000000, 0x13340000, 0x1b31df31, 0xcb301e44,
+0x564920cc, 0x000049d9, 0x00000000, 0x34250000, 0xebf121f5, 0xd2cab33b, 0xc926cec9, 0x00002b21,
+0x00000000, 0xb62a0000, 0x11ededbd, 0x10e246c8, 0xbbd63e1d, 0x0000d840, 0x00000000, 0xca4f0000,
+0xcdbb4044, 0x3320e6dd, 0xcee3cbea, 0x0000f048, 0x00000000, 0xf3270000, 0xc545c8ca, 0xd91b4240,
+0xdf1dc4c8, 0x000044b6, 0x00000000, 0xe4380000, 0x34c7d2c3, 0xccd9e522, 0x37d4e4e7, 0x0000b4cf,
+0x00000000, 0x44da0000, 0x44e03cd8, 0xd5533017, 0xfbd838ed, 0x0000c037, 0x00000000, 0x3d2e0000,
+0x1ad632dc, 0xf6f84de8, 0x2ab01bcf, 0x0000c5ce, 0x00000000, 0x33e00000, 0xbf242f42, 0xfb2605c2,
+0x3cdd23c0, 0x0000ef39, 0x00000000, 0xd6dc0000, 0xde2a1323, 0xcd30bf30, 0xd43b1ae3, 0x0000c714,
+0x00000000, 0xd6d40000, 0x18c0ca3e, 0xc01c1bc0, 0xdeb1b836, 0x00002dd2, 0x00000000, 0xe9450000,
+0x35d31c42, 0xdd381b15, 0xbf3cdd15, 0x00002428, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x62ea8129, 0xc91aa231, 0xbb44af54, 0xefaed019, 0xf253b128, 0x31da7d4f, 0x222e8558, 0x3c649282,
+0xb08f0fd5, 0xd6fdf6e9, 0xd44465e1, 0x91f63859, 0x28e43bd0, 0x552b2bbc, 0x22cd876f, 0x663ac13f,
+0xe8218f45, 0x278584b0, 0xad13a4f4, 0x2b82f157, 0xd0a6245e, 0x2a4586cd, 0xd08f9e08, 0x4527b024,
+0x1e4358b3, 0x8c24f783, 0x77f1991c, 0x5c7afd54, 0x5b15252b, 0x664d25ba, 0x3c897601, 0x88364e8c,
+0xe86430ca, 0x6ad0d1a5, 0xc3cc3e08, 0x9bffbd0f, 0x703ae95e, 0xa0a91cfd, 0xe0c26f76, 0xee9de372,
+0xd70ebb79, 0x4012352d, 0xf9edae2d, 0xb851949a, 0x89e5b526, 0x52753020, 0x07d12a87, 0x9ef89ae9,
+0x65dd3a22, 0x7be8ada4, 0x22de9d16, 0x3acc1377, 0x24e3ecdc, 0x051faabb, 0x2710ddd0, 0xe10cd952,
+0x0769aae0, 0x04565d9a, 0xeeaaec2c, 0xcb9f12ed, 0x93f32d65, 0x10740ff9, 0x9b424cd6, 0xca25ec6c,
+0x4662ab6e, 0x9af71ed2, 0x6e99e78b, 0xa6081e2d, 0x98f414c1, 0x3af017d5, 0xfb846775, 0xeb7eb09b,
+0xcddf798f, 0x8a029645, 0xadbc2b4f, 0xa699505f, 0xfdf5d3ca, 0xf99b0e86, 0xa958a001, 0x3c33c3bb,
+0x3fdc4b11, 0x0ad413a8, 0x4246342f, 0x745971ce, 0x56b03202, 0x7bf76e9c, 0x78fd9536, 0x346b743d,
+0xb6ca3ef5, 0x1bfcd131, 0xc132b053, 0x37c6b1da, 0x40bd5ab1, 0x0417ccc6, 0xe472551b, 0x431854f8,
+0x8b5d2f2d, 0xa2d9f0a3, 0xc547fbcb, 0x8703550a, 0xcdadb145, 0xe5c89707, 0x0328ce29, 0xd8e29825,
+0x7eab16cd, 0x94167a25, 0xfda9fc22, 0xc34be08d, 0x6aeba18a, 0x7e465273, 0xe53732fa, 0x08f5e8d3,
+0x874ba296, 0x40ef331f, 0x43d92943, 0x5ed88d8f, 0x9f0df290, 0xdc350034, 0x5d94cbbd, 0x4d89b9fd,
+0xd2610a7f, 0x984557e9, 0x40c4a3d7, 0x0d5a1007, 0xc70fc77e, 0x46f623c7, 0x54b1a106, 0xf886e71d,
+0x72c4ecab, 0x5e4b9028, 0xf73869ff, 0x93c759df, 0x4e1f3f63, 0x4ce818a5, 0x81073d1c, 0xcd2e5f51,
+0x86fecfb3, 0xe0d383f0, 0x028ed120, 0x0a10c677, 0x5b6dd641, 0xbc9b2c97, 0xc188fd1a, 0x1f541bd6,
+0x4bbdab31, 0x2cee799b, 0xad70c922, 0xa6e51b28, 0xe60e2e44, 0x7f9a5de4, 0x2c55e1b8, 0x133f269d,
+0xa92bd0f5, 0xf84f575e, 0x6ecde27e, 0x819756b2, 0x1977a95d, 0xf2fe95b5, 0x49205968, 0x33e83acd,
+0x1e12bf67, 0xb877646f, 0x20ac05cc, 0xc9c32771, 0x931503be, 0xab5cb678, 0x04376062, 0x8b036000,
+0xb673afef, 0x912ba442, 0x4cb7f1c3, 0x55475211, 0x7b5b51a7, 0x19b28678, 0xb0e113e0, 0x362468b2,
+0x3022a822, 0xe2b47894, 0xe4e3b327, 0xa942f3e4, 0x4002151b, 0x75efe93c, 0xfd99131d, 0x03100e6a,
+0xc4fec172, 0xe542c4c2, 0xab841397, 0xca3689ed, 0xf4bea8b6, 0xd56568bc, 0x9209be50, 0x4f144878
+
+soft_output0 =
+0x7f817f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x817f7f7f,
+0x81817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x7f818181, 0x81818181, 0x7f818181, 0x81818181,
+0x817f8181, 0x7f7f7f7f, 0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f7f8181, 0x7f7f7f7f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x81818181,
+0x8181817f, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f7f, 0x81817f7f, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x81817f7f,
+0x7f81817f, 0x81818181, 0x7f818181, 0x81818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x81818181, 0x817f817f, 0x817f7f7f,
+0x7f7f817f, 0x817f8181, 0x817f7f7f, 0x817f8181, 0x7f818181, 0x7f81817f, 0x7f818181, 0x7f817f81,
+0x817f8181, 0x817f817f, 0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f7f,
+0x81818181, 0x81817f81, 0x7f7f817f, 0x81817f7f, 0x81818181, 0x8181817f, 0x8181817f, 0x7f7f7f7f,
+0x817f817f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x81818181, 0x7f817f81, 0x817f7f7f,
+0x7f817f81, 0x817f7f7f, 0x7f7f817f, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f817f7f, 0x81817f81,
+0x7f7f8181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x7f817f81,
+0x8181817f, 0x7f7f7f81, 0x81818181, 0x7f7f7f7f, 0x7f817f81, 0x7f817f81, 0x7f7f817f, 0x817f7f7f,
+0x81817f81, 0x8181817f, 0x81817f81, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x81817f7f, 0x81817f81,
+0x817f817f, 0x81817f81, 0x81818181, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f817f7f,
+0x81818181, 0x817f8181, 0x8181817f, 0x7f817f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81,
+0x81817f7f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f817f,
+0x817f817f, 0x817f8181, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x7f817f7f, 0x81818181, 0x7f818181,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f81, 0x81818181, 0x7f7f7f81, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x7f818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f7f81, 0x8181817f, 0x81817f7f, 0x7f817f7f, 0x8181817f,
+0x817f7f81, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x817f8181, 0x7f7f817f, 0x81817f7f, 0x817f817f,
+0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f8181, 0x817f817f,
+0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x7f7f817f, 0x7f818181, 0x817f8181, 0x7f81817f,
+0x7f81817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f7f817f, 0x817f7f81, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x81817f81, 0x7f81817f, 0x7f7f817f,
+0x81817f81, 0x7f7f817f, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f7f81, 0x817f817f,
+0x7f817f7f, 0x7f7f7f81, 0x7f817f81, 0x81817f81, 0x817f817f, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181,
+0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f81817f, 0x7f81817f,
+0x7f7f817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f81, 0x817f7f7f,
+0x8181817f, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f7f7f, 0x81817f81,
+0x81817f7f, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x81818181, 0x7f7f7f81, 0x817f817f, 0x81818181,
+0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x817f817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f, 0x81818181, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f81817f, 0x81817f7f, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x7f817f7f, 0x817f7f81, 0x7f817f7f, 0x817f8181, 0x81817f81,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x81818181, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f818181,
+0x7f817f81, 0x817f8181, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x7f81817f, 0x817f7f81, 0x81818181, 0x7f818181, 0x817f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x81817f7f, 0x7f7f7f7f, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f7f,
+0x817f7f81, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x8181817f, 0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f817f, 0x81817f7f, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x8181817f, 0x7f81817f,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x817f7f7f, 0x817f7f81, 0x817f7f81, 0x817f7f7f,
+0x817f817f, 0x817f8181, 0x7f817f7f, 0x817f7f7f, 0x7f817f81, 0x7f817f81, 0x817f817f, 0x7f81817f,
+0x81817f7f, 0x7f7f7f81, 0x7f7f8181, 0x81817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x817f8181,
+0x81818181, 0x81817f81, 0x7f817f81, 0x7f7f7f81, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f817f, 0x7f818181, 0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x7f81817f,
+0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f7f81, 0x7f817f7f,
+0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f7f, 0x817f7f81, 0x817f7f81,
+0x81817f81, 0x7f81817f, 0x81817f7f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x81818181,
+0x817f817f, 0x817f8181, 0x81818181, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x7f7f817f,
+0x817f8181, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x81818181, 0x7f7f817f, 0x817f7f81, 0x81817f7f,
+0x817f8181, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x817f7f81, 0x7f7f817f,
+0x7f818181, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f7f7f7f, 0x8181817f,
+0x817f817f, 0x81818181, 0x7f7f8181, 0x817f817f, 0x81818181, 0x7f817f81, 0x817f7f7f, 0x81817f7f,
+0x7f81817f, 0x8181817f, 0x817f7f81, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x817f7f81, 0x81818181, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x817f7f81,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x81817f7f, 0x81818181, 0x8181817f, 0x7f817f7f,
+0x81817f81, 0x7f817f7f, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f817f81, 0x7f818181, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f7f817f, 0x817f817f, 0x7f81817f,
+0x7f818181, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f81, 0x8181817f, 0x81817f81, 0x817f817f,
+0x7f7f7f7f, 0x817f817f, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x81817f7f,
+0x817f7f7f, 0x7f817f7f, 0x7f7f8181, 0x7f7f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f8181, 0x8181817f,
+0x81817f81, 0x817f7f7f, 0x8181817f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x7f7f817f, 0x7f818181,
+0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f81817f,
+0x7f817f7f, 0x81817f7f, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f7f7f7f, 0x81817f81, 0x817f7f7f, 0x7f818181, 0x7f7f817f,
+0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f7f817f,
+0x8181817f, 0x7f81817f, 0x8181817f, 0x7f7f7f81, 0x817f817f, 0x81817f81, 0x817f817f, 0x81817f81,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x817f7f7f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x7f7f8181,
+0x817f817f, 0x8181817f, 0x817f7f81, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f818181,
+0x7f818181, 0x817f817f, 0x81817f81, 0x817f8181, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f7f, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f817f, 0x7f818181, 0x81818181,
+0x7f7f8181, 0x817f8181, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x81817f7f, 0x8181817f, 0x81817f81,
+0x8181817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f7f7f81, 0x81818181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x81817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x817f817f, 0x817f817f,
+0x817f817f, 0x7f817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x8181817f,
+0x7f817f7f, 0x7f817f81, 0x817f7f7f, 0x817f7f7f, 0x817f8181, 0x81817f7f, 0x817f7f81, 0x81817f81,
+0x7f81817f, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x8181817f, 0x7f81817f, 0x817f8181, 0x81818181,
+0x817f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f7f, 0x81818181,
+0x7f7f817f, 0x817f7f81, 0x81817f81, 0x7f7f7f81, 0x81817f81, 0x81817f81, 0x817f7f81, 0x8181817f,
+0x7f7f8181, 0x817f8181, 0x817f7f81, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x817f7f81, 0x7f818181, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x7f817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f817f, 0x817f7f7f, 0x7f817f7f,
+0x7f81817f, 0x7f817f7f, 0x7f818181, 0x8181817f, 0x7f7f7f81, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x81817f7f, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x817f7f81, 0x817f817f, 0x7f7f7f81, 0x8181817f, 0x817f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x81817f7f, 0x81817f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f8181, 0x7f817f7f, 0x7f818181, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x817f817f,
+0x7f7f7f81, 0x81818181, 0x81817f7f, 0x817f7f81, 0x7f817f81, 0x8181817f, 0x7f7f8181, 0x8181817f,
+0x817f7f81, 0x81817f81, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f7f8181, 0x7f7f817f, 0x817f7f81, 0x81817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f817f7f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x817f817f, 0x81817f7f,
+0x817f8181, 0x7f7f8181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f817f7f, 0x817f7f81, 0x7f817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f7f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f818181, 0x817f817f, 0x817f817f, 0x81817f7f, 0x817f7f7f,
+0x8181817f, 0x7f81817f, 0x817f7f7f, 0x817f7f81, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181,
+0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f81, 0x81817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181,
+0x7f81817f, 0x7f7f7f81, 0x7f818181, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f8181, 0x81817f81, 0x7f81817f, 0x81818181, 0x817f7f81, 0x817f8181, 0x7f818181, 0x81817f81,
+0x81818181, 0x81817f81, 0x817f817f, 0x7f817f7f, 0x7f817f81, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f7f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x7f817f7f, 0x817f8181,
+0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x81818181, 0x7f818181, 0x81817f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x81818181, 0x7f7f817f,
+0x81817f81, 0x817f7f81, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x81817f7f, 0x817f8181,
+0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f8181, 0x817f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x7f817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x7f818181, 0x7f817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81818181, 0x81817f7f, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f8181,
+0x7f7f817f, 0x7f817f81, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x8181817f, 0x81817f81,
+0x7f7f7f7f, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x7f817f81,
+0x81818181, 0x817f8181, 0x81817f81, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x8181817f, 0x7f7f817f,
+0x81818181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x8181817f, 0x7f817f7f, 0x817f7f81, 0x817f7f81,
+0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f817f, 0x817f8181, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f818181, 0x8181817f, 0x7f818181,
+0x81817f81, 0x8181817f, 0x81817f81, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f7f7f,
+0x81817f81, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x7f7f7f7f, 0x817f817f, 0x7f7f817f, 0x7f81817f,
+0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x81818181, 0x817f817f,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x8181817f, 0x817f8181, 0x817f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x81817f7f, 0x7f817f81, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x817f7f81, 0x81818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x817f8181, 0x81817f81, 0x817f7f81,
+0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f7f81, 0x7f817f7f, 0x8181817f, 0x81818181,
+0x7f7f7f7f, 0x81817f81, 0x8181817f, 0x81818181, 0x7f7f817f, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x817f8181, 0x817f817f, 0x817f8181, 0x817f817f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x81818181,
+0x7f7f7f81, 0x81817f81, 0x8181817f, 0x817f7f81, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f7f81,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f8181,
+0x7f818181, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x8181817f, 0x7f818181, 0x7f7f8181, 0x817f7f81,
+0x817f8181, 0x8181817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f81817f,
+0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x817f817f,
+0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x817f817f, 0x7f7f7f81, 0x81818181, 0x81817f7f,
+0x7f7f817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x817f8181, 0x7f7f7f7f, 0x7f7f7f81, 0x7f818181,
+0x81817f7f, 0x8181817f, 0x7f7f8181, 0x7f81817f, 0x817f817f, 0x817f817f, 0x7f81817f, 0x81817f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f81817f, 0x817f7f7f, 0x8181817f, 0x7f7f817f, 0x81817f81, 0x81817f7f,
+0x7f81817f, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f818181,
+0x817f817f, 0x7f818181, 0x817f7f81, 0x81817f81, 0x81817f81, 0x7f81817f, 0x7f81817f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81818181, 0x8181817f, 0x81818181,
+0x7f81817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f817f81, 0x817f7f81, 0x7f817f81,
+0x81818181, 0x7f7f7f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f817f, 0x81818181, 0x7f7f817f, 0x7f7f817f,
+0x7f7f817f, 0x817f817f, 0x81817f81, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x817f817f, 0x8181817f,
+0x7f7f817f, 0x81817f7f, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f817f81, 0x7f7f7f7f, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f8181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x81818181, 0x7f817f81,
+0x7f7f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81,
+0x81817f81, 0x817f7f81, 0x817f7f7f, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x7f7f7f7f, 0x8181817f,
+0x7f817f7f, 0x81817f81, 0x7f817f7f, 0x7f817f81, 0x81818181, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x7f818181, 0x81817f7f,
+0x817f7f81, 0x817f7f81, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x8181817f, 0x81817f7f,
+0x7f817f7f, 0x7f818181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x81818181,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f81, 0x81818181, 0x817f817f,
+0x7f817f7f, 0x7f81817f, 0x8181817f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181,
+0x7f7f7f81, 0x81817f7f, 0x7f7f7f81, 0x7f817f7f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x7f818181, 0x817f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x817f817f, 0x817f8181, 0x7f818181, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f818181, 0x817f8181, 0x817f817f, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x817f817f, 0x8181817f,
+0x81818181, 0x817f7f7f, 0x817f8181, 0x817f7f81, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f,
+0x7f817f81, 0x81818181, 0x817f8181, 0x7f818181, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f,
+0x817f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f818181, 0x81817f81, 0x7f818181, 0x7f818181, 0x7f817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f,
+0x81817f7f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f7f, 0x81817f7f, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81817f7f, 0x817f817f, 0x817f817f, 0x7f818181, 0x817f817f, 0x817f7f81, 0x7f81817f,
+0x7f817f7f, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x81818181,
+0x7f817f7f, 0x7f7f8181, 0x817f817f, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f7f817f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x81818181,
+0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x7f7f7f81, 0x817f8181, 0x7f818181,
+0x7f7f7f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f817f7f, 0x817f817f, 0x7f818181, 0x8181817f,
+0x7f7f8181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x81817f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f81,
+0x81818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x7f818181, 0x81817f7f, 0x7f7f817f, 0x81817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x8181817f, 0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f7f817f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f, 0x81818181, 0x81817f7f,
+0x7f7f7f7f, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f, 0x817f8181,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x817f817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x8181817f,
+0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x817f7f7f, 0x81818181, 0x817f8181, 0x7f81817f,
+0x81817f81, 0x7f817f7f, 0x7f7f8181, 0x817f8181, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f7f7f,
+0x7f7f8181, 0x817f8181, 0x817f7f7f, 0x81817f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x7f7f7f7f,
+0x7f81817f, 0x81817f7f, 0x7f7f7f7f, 0x817f8181, 0x7f7f817f, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f, 0x81817f81,
+0x7f817f81, 0x7f7f817f, 0x7f7f817f, 0x7f7f817f, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x8181817f, 0x7f817f81,
+0x7f817f81, 0x8181817f, 0x7f7f817f, 0x817f7f7f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x817f7f81, 0x81818181, 0x7f817f81, 0x817f8181, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x817f817f, 0x81817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x7f7f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x81817f81,
+0x81817f81, 0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f817f,
+0x81817f81, 0x817f7f7f, 0x817f7f81, 0x7f7f817f, 0x81818181, 0x7f818181, 0x817f8181, 0x817f7f81,
+0x8181817f, 0x7f7f8181, 0x817f8181, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f7f,
+0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x81817f7f, 0x817f817f, 0x7f818181, 0x7f7f817f, 0x7f818181,
+0x7f818181, 0x7f7f817f, 0x817f8181, 0x7f81817f, 0x7f7f7f81, 0x7f817f81, 0x7f7f8181, 0x817f817f,
+0x81817f81, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x7f818181, 0x817f7f81,
+0x7f7f817f, 0x7f7f817f, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181,
+0x7f817f7f, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x817f7f7f,
+0x817f7f7f, 0x817f8181, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f,
+0x7f7f8181, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f81, 0x81817f7f, 0x7f817f7f, 0x817f8181, 0x8181817f, 0x7f818181, 0x8181817f,
+0x817f7f7f, 0x81818181, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f817f, 0x81817f7f, 0x8181817f,
+0x7f7f7f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x81817f81, 0x81817f7f, 0x7f7f817f, 0x7f818181,
+0x817f8181, 0x817f817f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81,
+0x7f7f817f, 0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f817f81, 0x7f817f81, 0x8181817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f817f81,
+0x817f817f, 0x7f817f7f, 0x81818181, 0x7f7f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f7f, 0x7f817f81, 0x817f8181, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x81817f7f, 0x7f7f8181, 0x8181817f, 0x8181817f, 0x7f81817f, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x8181817f,
+0x7f817f81, 0x817f8181, 0x7f7f817f, 0x81817f81, 0x7f818181, 0x7f7f7f7f, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x817f817f, 0x817f8181,
+0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f818181, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f,
+0x7f7f7f81, 0x7f7f8181, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81817f81, 0x7f817f81, 0x81818181, 0x81817f7f, 0x7f7f8181, 0x7f7f817f, 0x817f8181, 0x7f81817f,
+0x7f818181, 0x817f7f81, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f817f7f, 0x8181817f, 0x7f7f7f81, 0x7f81817f, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f7f81, 0x7f81817f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f817f, 0x817f7f7f, 0x817f817f, 0x81817f7f,
+0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f817f81, 0x817f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x8181817f, 0x7f7f7f81,
+0x81817f81, 0x817f7f7f, 0x81818181, 0x7f7f8181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x817f817f, 0x7f7f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x8181817f, 0x7f7f7f81, 0x7f7f8181,
+0x81817f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f7f8181, 0x8181817f, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f,
+0x7f818181, 0x817f8181, 0x817f7f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x81818181, 0x7f817f81,
+0x81818181, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x81817f81, 0x81817f81, 0x817f7f7f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f817f81, 0x81818181,
+0x81817f81, 0x7f7f7f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f7f7f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f7f7f, 0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f7f, 0x7f818181,
+0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f,
+0x7f7f8181, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x81817f7f, 0x7f817f81,
+0x817f817f, 0x7f817f81, 0x81818181, 0x7f81817f, 0x7f81817f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f8181, 0x7f818181, 0x817f7f81, 0x7f7f817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f818181,
+0x7f7f7f81, 0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x81817f81,
+0x7f817f7f, 0x7f7f817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f, 0x8181817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f818181,
+0x7f817f81, 0x81818181, 0x7f81817f, 0x7f817f81, 0x81818181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f817f, 0x7f81817f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x7f818181,
+0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f81817f, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f81,
+0x7f7f8181, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x7f7f7f7f, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f81, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f81817f, 0x817f7f7f,
+0x817f7f81, 0x81817f7f, 0x81817f81, 0x817f817f, 0x81818181, 0x81817f7f, 0x817f817f, 0x7f817f81,
+0x81817f7f, 0x81817f81, 0x81817f81, 0x7f7f7f81, 0x817f7f81, 0x8181817f, 0x7f7f817f, 0x817f817f,
+0x7f7f7f81, 0x817f817f, 0x7f817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x7f818181, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x817f8181,
+0x7f817f81, 0x7f7f7f7f, 0x81817f81, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f81, 0x817f7f7f, 0x7f7f7f81, 0x81817f7f, 0x7f7f8181,
+0x81818181, 0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x8181817f, 0x7f817f7f, 0x81818181,
+0x817f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x817f817f,
+0x817f7f81, 0x81817f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x8181817f, 0x817f8181, 0x7f7f7f7f,
+0x7f818181, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x817f8181, 0x7f81817f,
+0x7f7f7f81, 0x8181817f, 0x81817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x81817f81, 0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x8181817f, 0x7f7f817f,
+0x81817f81, 0x817f8181, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181,
+0x817f817f, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x81818181,
+0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x81817f7f, 0x817f7f81, 0x81817f7f, 0x7f817f7f, 0x81818181,
+0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f7f,
+0x817f8181, 0x7f7f7f7f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x8181817f, 0x81818181, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x8181817f, 0x7f818181, 0x817f7f81,
+0x7f817f81, 0x7f81817f, 0x81818181, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x7f81817f,
+0x7f7f8181, 0x7f817f7f, 0x7f7f7f81, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x817f8181,
+0x7f818181, 0x817f7f7f, 0x817f7f81, 0x7f817f7f, 0x7f81817f, 0x81817f81, 0x7f7f7f7f, 0x8181817f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x7f818181, 0x7f817f7f, 0x7f817f7f, 0x81818181, 0x817f8181,
+0x7f81817f, 0x8181817f, 0x7f7f817f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f817f7f,
+0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f7f81, 0x817f8181, 0x8181817f, 0x817f7f81, 0x7f7f817f,
+0x817f7f7f, 0x7f7f7f81, 0x817f7f81, 0x817f7f7f, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x81817f7f,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f7f, 0x81818181,
+0x81817f81, 0x7f818181, 0x8181817f, 0x8181817f, 0x7f817f81, 0x817f7f81, 0x81817f81, 0x7f81817f,
+0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x817f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f817f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x817f817f, 0x7f7f8181,
+0x81817f7f, 0x817f817f, 0x8181817f, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f81817f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x8181817f, 0x817f8181, 0x817f8181, 0x8181817f, 0x817f8181, 0x7f7f8181,
+0x8181817f, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f817f7f,
+0x8181817f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x817f7f7f, 0x7f81817f, 0x7f818181,
+0x8181817f, 0x7f817f81, 0x817f7f81, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x7f818181, 0x817f8181,
+0x81818181, 0x7f81817f, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x817f7f81, 0x7f817f7f,
+0x81817f81, 0x81818181, 0x7f818181, 0x817f7f7f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f7f7f7f,
+0x7f81817f, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181, 0x7f7f7f81, 0x81818181, 0x817f7f81,
+0x7f81817f, 0x7f817f81, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x81817f81, 0x7f818181, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x817f817f, 0x81818181, 0x817f7f7f, 0x81817f81, 0x7f818181, 0x7f817f7f, 0x7f81817f,
+0x81817f7f, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f817f, 0x81817f81, 0x7f7f8181,
+0x817f817f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x81818181, 0x7f7f7f81,
+0x81818181, 0x7f7f817f, 0x7f81817f, 0x7f7f8181, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x81818181, 0x7f7f7f81, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x817f7f7f, 0x81818181, 0x81818181,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f81, 0x81817f7f, 0x7f818181,
+0x81817f7f, 0x817f817f, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f817f7f, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f81, 0x817f8181, 0x7f81817f,
+0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f81817f, 0x81817f7f, 0x7f7f817f, 0x817f7f7f, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x817f7f81, 0x7f7f7f7f, 0x8181817f,
+0x817f7f7f, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f7f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f81,
+0x7f81817f, 0x817f7f81, 0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f7f, 0x81817f7f, 0x817f817f, 0x7f7f7f7f, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x81817f7f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x817f7f7f, 0x8181817f,
+0x817f817f, 0x7f81817f, 0x817f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x817f7f7f,
+0x7f817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f81, 0x7f817f81,
+0x7f81817f, 0x81818181, 0x81817f81, 0x817f7f7f, 0x81817f7f, 0x81818181, 0x7f7f817f, 0x81818181,
+0x7f7f817f, 0x7f7f7f7f, 0x7f81817f, 0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x8181817f, 0x81818181, 0x81818181, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x81817f7f, 0x817f7f81,
+0x8181817f, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x817f817f, 0x817f817f, 0x81818181, 0x817f817f,
+0x7f7f817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x81817f7f, 0x817f7f7f, 0x81817f81, 0x7f7f7f81,
+0x8181817f, 0x81818181, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x7f7f817f, 0x817f7f81,
+0x7f7f8181, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81, 0x81818181, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f,
+0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x817f7f81, 0x7f817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f,
+0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f81, 0x817f8181,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f817f81, 0x81818181, 0x7f81817f,
+0x817f8181, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f817f7f, 0x817f7f81, 0x817f817f, 0x7f817f81,
+0x7f7f817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f, 0x81817f81, 0x7f817f81, 0x81817f81,
+0x7f818181, 0x8181817f, 0x7f818181, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f817f, 0x7f818181,
+0x81817f7f, 0x817f7f81, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x7f7f8181, 0x817f8181, 0x81817f81,
+0x7f7f8181, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f,
+0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x81817f81, 0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x817f7f81,
+0x81817f81, 0x7f818181, 0x81817f7f, 0x81818181, 0x817f817f, 0x7f7f7f81, 0x7f81817f, 0x7f817f7f,
+0x81818181, 0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f81817f, 0x817f817f, 0x7f81817f,
+0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f818181,
+0x81817f7f, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x7f817f81, 0x81817f7f, 0x7f7f817f, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x81817f7f, 0x7f818181, 0x7f81817f, 0x7f7f7f7f, 0x81817f81, 0x817f817f,
+0x817f8181, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x7f818181, 0x7f818181, 0x7f818181, 0x817f8181,
+0x817f8181, 0x817f7f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x81818181, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f817f7f, 0x7f7f7f7f, 0x81817f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f817f, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x817f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x817f8181, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x8181817f, 0x817f8181, 0x817f817f,
+0x7f7f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f7f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f81, 0x81817f7f, 0x7f818181, 0x81817f7f, 0x81817f7f, 0x8181817f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f817f7f, 0x7f818181, 0x817f8181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f817f, 0x7f817f7f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f817f7f,
+0x7f817f81, 0x7f7f817f, 0x81818181, 0x81817f7f, 0x817f8181, 0x81817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x8181817f, 0x7f81817f, 0x8181817f, 0x817f8181, 0x8181817f, 0x817f7f81, 0x81818181,
+0x81817f81, 0x81817f7f, 0x7f817f81, 0x7f817f81, 0x7f7f7f81, 0x7f81817f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f81, 0x81818181, 0x81818181, 0x7f7f7f81,
+0x7f81817f, 0x7f81817f, 0x817f7f81, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f81817f,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x7f7f817f
+
+e =
+12248
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
new file mode 100644
index 0000000..8ec0ec0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
@@ -0,0 +1,647 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7fb2e1, 0x467f05ef, 0x3cabba6a, 0x1f826cac, 0xbe817fe7, 0x584dab0f, 0xdcb55f81, 0xe47f915f,
+0x37b1a534, 0x4b478145, 0x9db5727f, 0x7fa6943f, 0x819550ea, 0xd18eb72a, 0xa0ba9c10, 0xcf7f817f,
+0x915a957f, 0x2c699d0a, 0x89815c0f, 0x7f569358, 0x1002587f, 0x54314130, 0x817f1b7e, 0x81a85e2a,
+0x5981bdf2, 0x0c81b00f, 0x6781be0e, 0x297fb17f, 0xfd811fb3, 0x7f077fdb, 0xd37fc2ab, 0x817f1024,
+0x81817f7f, 0x3d848ec6, 0x4486cd9c, 0x7f6d7f81, 0x1d7ffa93, 0x813648ca, 0xdc7f125e, 0xaa81a798,
+0x60838ef4, 0x815fcdbd, 0x81cb9d93, 0x817f8188, 0xc8c3d697, 0x817af2d6, 0x36888781, 0x818117ee,
+0x37a67fbf, 0x89f464b2, 0x7f1e7f81, 0x7fe5c17f, 0x8ca1effc, 0xed7f82cf, 0x4a7f5ac6, 0x7fffb8d6,
+0x427f7f73, 0x747f7f06, 0xdfcd22a9, 0x7fb99981, 0x76f77381, 0x2cd70f12, 0xd8b138e1, 0x81a4ea29,
+0x222db281, 0xc3a07fd2, 0x217f8177, 0xd1cd87c4, 0xd181679f, 0x7f7fdee2, 0x7c81a72f, 0x6e7f5a7f,
+0x77b0c96d, 0xff7f8110, 0xe8c6ad46, 0x376ade0a, 0x447f687f, 0x5916d238, 0x88816b81, 0xda7f6d88,
+0xe2b2b55f, 0x750f7fc8, 0xc624d47f, 0xc6837f79, 0x81de5272, 0xd0847f29, 0x81ad587f, 0x3e7f7f61,
+0xc803e070, 0x237ff600, 0x8c01815e, 0x814e0e81, 0x81657eef, 0xab2a62bc, 0x73d42cb4, 0xaaf03a8a,
+0x817fa57f, 0x5e7fe2c3, 0x6deda37f, 0x6e87818d, 0x767f6e4d, 0x5c76819a, 0x8182b6f0, 0xdcd3037f,
+0x81184c7f, 0x7ff1501c, 0x22c7f159, 0x45a6817f, 0x9b53c5e7, 0x57966a5e, 0x0a7f7f81, 0x4a5c155e,
+0xf37fff81, 0xad97f8f2, 0x052f397f, 0x79638181, 0x7f7f7f7f, 0x81e3fae4, 0x7659cf03, 0xbd7a5a81,
+0x46bcab7f, 0xa57f69a1, 0xba818186, 0x38a347a2, 0x91a88ec0, 0xd76087fc, 0x81818b8c, 0x7fa3424e,
+0x7f89ef7f, 0x81ac183d, 0x3aa8912a, 0xc4937da6, 0x7a4c136b, 0x81568e05, 0x8182812b, 0xebb17f1d,
+0x84b87f4c, 0xf4eab6c9, 0x81034197, 0x8183bd0a, 0xa1b92676, 0xceca2ef1, 0x9b7f7f7f, 0x5d813181,
+0x817fea35, 0x0a6c81b0, 0x9a559b4f, 0x93987691, 0xad819510, 0xa47ab324, 0xfa577f7f, 0xbba8ac3e,
+0x6694b753, 0xee63c4d7, 0x17b4ce81, 0x83c0dc81, 0x6a7f4481, 0x81d87fe0, 0x7f5cc5c0, 0xf828ea77,
+0xbb817fa3, 0x3e816619, 0x817f6aab, 0x26417f7f, 0x0c40817f, 0x9cf01834, 0x32b37f7f, 0xe74fd0a7,
+0x7f7f4167, 0x0e7f6ae0, 0x813d81b2, 0x8172027f, 0x4ea6c275, 0x814525de, 0x46817f7f, 0x7fcb2cd1,
+0x7f8198ca, 0x3d7f60aa, 0x8d7fac81, 0xe2c081ed, 0x656f8181, 0xb2ae9365, 0x6ddd8d81, 0x86e0be65,
+0x5495ec58, 0xcb981829, 0x429ee669, 0x81445fc5, 0xd3435724, 0xce51b323, 0x92b16972, 0xf0137f8e,
+0x7f199a7f, 0x81be813c, 0x8155817f, 0xd481037f, 0x167f8181, 0x5ad131d4, 0x7fbc4149, 0x81046d60,
+0x87174b9c, 0x94bc63ba, 0x68817c7f, 0x12ef7f8d, 0x7a81f4f6, 0x7f7f6db9, 0x4823417e, 0xa4989a48,
+0x7e4c787f, 0xa47f8123, 0x819afb20, 0xbf7f447f, 0x8d95af5c, 0x33a6812e, 0x07c75cd5, 0x337f8151,
+0xa2e5e15a, 0x847f7209, 0xf9f4b934, 0x72a77f2f, 0x1a9f2f7e, 0xac224bb2, 0x81467f0c, 0x3f8fd28d,
+0x4a78b07a, 0x5269a71e, 0x4fd57fb2, 0x0b5262bf, 0xea39ca0a, 0x577f3d1e, 0x509481d7, 0xb7816b48,
+0x35c31d7f, 0x818bdc1d, 0x24087fb9, 0x7fe27f07, 0x55866481, 0x7f9edd28, 0x07811ed1, 0x1b317fb2,
+0x8cb19dee, 0x396920a6, 0xd965dd85, 0x9ed5ff47, 0xc97f7f7f, 0x7f8c1d55, 0x06a69701, 0x9e348881,
+0x7f6cb281, 0x388181d1, 0xd07d61ac, 0x7fdef7f1, 0x08177f7f, 0xd87fa1c0, 0xfe9ebeb5, 0x813d3430,
+0x2181811e, 0xf4dab306, 0xa36bbb7f, 0x05e87f7f, 0x957ff3cd, 0xe4814219, 0x7fbf3f81, 0x818a7fab,
+0x43e081d9, 0x87c08729, 0x0db52785, 0x8181b0da, 0x4c94697e, 0x817fa9b2, 0x7f7f81d9, 0x8bda8193,
+0xb6811781, 0x81796220, 0xdb082ac1, 0x2c7f5d3b, 0x8c8103f3, 0x4dcbd01e, 0x7fc1a87f, 0x457f7f23,
+0x5e26bad6, 0x7f8174f3, 0x30109f08, 0xef8526cc, 0xe8690849, 0xd2b981b0, 0x7f7f7fb5, 0x8156ef7f,
+0x921a7f98, 0x7fe6681e, 0x244e497c, 0x5ef68149, 0xbfbcaa7f, 0xf5011204, 0xfe7f8163, 0x8cd08f31,
+0xc88a6b43, 0x7c8105b6, 0xf6d881aa, 0x074c2c2d, 0xd6815c7f, 0x1d15d265, 0xce816f0c, 0x14c77f2e,
+0x9a7f08c4, 0x1a8b8ed2, 0xbe9637ed, 0xb59fac5a, 0xa4d07f91, 0x7f847fab, 0xd981597f, 0x7328575d,
+0xb83af760, 0xb536b941, 0x81c1937f, 0x16b7814d, 0x3f7fb081, 0x7f41e102, 0x727f77ea, 0x9558c381,
+0x48ac819e, 0xa87f99f2, 0x819e7f05, 0x92816eb0, 0x59447f81, 0x4f6cb056, 0x818163a8, 0xe00a64e2,
+0x81bb7fa3, 0x7f816de7, 0x86ac6a50, 0x48a277b0, 0x8e37cd81, 0x7f88e646, 0x023351d8, 0x1ee7a64b,
+0x8145f239, 0x81810859, 0x557f7f7f, 0x6971d292, 0x813d7fdf, 0xe86cade7, 0xdab67f7f, 0x6d4f247f,
+0x9df2297f, 0x1e8172ec, 0x3f81a56d, 0x907f02d3, 0x45663970, 0x817f46a4, 0x817fd1ce, 0x9843b181,
+0x7fdf817f, 0x784881da, 0xd8a281c2, 0xd77f88d8, 0x8c81817f, 0xeb625633, 0x73fe4eae, 0x57787f19,
+0x7f81ea7f, 0xca8143c8, 0x767cbf1d, 0x7fbc81e1, 0x7f9bbeb5, 0x7fea8a12, 0x7f5c7fde, 0xb5fe1685,
+0xa4da81c8, 0x7f6b542e, 0x81814b7f, 0x6252f7d3, 0x55eebb81, 0x6a0824cf, 0x586128f0, 0xded58181,
+0xe32a819b, 0x79c67f20, 0xf2812781, 0x7f58c369, 0x7ffa2d7f, 0x817f81f4, 0x7ffc2c07, 0x457f9981,
+0xff4281c7, 0xd78e6955, 0x3e10e57f, 0x632b817f, 0x7f0197d1, 0x813e7feb, 0xf981ac81, 0x8f81317f,
+0xc37f137d, 0x01918101, 0x81b007a4, 0xaab059ad, 0x7f7f81f7, 0x6ac590a9, 0x817f81a0, 0x68816067,
+0x0ae08182, 0xb47fb268, 0x33d94a7f, 0xbf43d243, 0xccff8e4e, 0x44ebe23f, 0x0d4cfd2e, 0x7f81947f,
+0x81d1cee8, 0xda0e16a3, 0x34a74376, 0x117b81ae, 0x1d853f6b, 0x81d6d2ed, 0x8d7f5be6, 0xcf1fb4a0,
+0x3e1ec13a, 0x7fed0cf4, 0x65d3817f, 0x0a1fec83, 0x7fc4811f, 0x666381c1, 0x8147c754, 0xa9cf7f53,
+0xa076cf81, 0x4c7a4712, 0x1a814ff5, 0x9e7f8175, 0x8181698b, 0x7f1a7f63, 0x8191f19f, 0xb1037fa8,
+0x7f52aa2e, 0x42b65c09, 0x94afab7f, 0xbda37dda, 0x81f2d66b, 0x3e737f1f, 0xcb816031, 0xd56181ef,
+0x2c6ffb81, 0x44852329, 0x1b4b81cc, 0x055a7bb7, 0x4c6f2e1d, 0xb14ae1b7, 0x7f43c2c4, 0x2368b80d,
+0x7f7ffb9f, 0x990b0523, 0x74b33ea5, 0xd64c8199, 0x98ed81a2, 0x311bc8e9, 0x599963cf, 0xb0eeed4c,
+0x8181ed70, 0x42023428, 0xd00270bc, 0x812a7fd3, 0x7fc4101a, 0x3448d8db, 0x068814a8, 0xfeb5701c,
+0x46db1481, 0x3cc5b001, 0x8181c2b3, 0x9c3d7f7f, 0x7f13e346, 0x2b75819c, 0xf57fcfe1, 0xfdaac581,
+0x7f814c6f, 0x7f186b39, 0x7f818150, 0xea7f5b7f, 0x816776b0, 0xb8657f57, 0x7f447f5e, 0xc3628122,
+0x84849d7f, 0x7f8cb914, 0x92813dd5, 0x81557a3a, 0x6b4cbf7f, 0xc6818b94, 0x7fbb7f98, 0x3c88812d,
+0x8de4267f, 0x8dee81fd, 0x37f98131, 0x3d8164d2, 0xd97f8181, 0x3ccaebf9, 0x8165cb7f, 0x63cb81d3,
+0x817fea94, 0x48817fa1, 0x4ea0b16b, 0x3cb5ab6f, 0x3148f975, 0x8c7f1ab5, 0x7fae5a87, 0xad06c881,
+0x0681c187, 0x81a5a11b, 0xe29ea383, 0xf07f536d, 0x81b0e702, 0xc37fbb59, 0x9e6167e8, 0x3f55c9be,
+0x819a40a9, 0x6450b823, 0x15927b65, 0x72a149d4, 0x6c280b5c, 0x5d7fd8f3, 0x998d831a, 0xbb7f817f,
+0x10ab3f81, 0x96f65101, 0x257f743a, 0x7f04a024, 0xe0c981b4, 0x81163a22, 0x8e197481, 0x21addfdc,
+0x7f2dcdaa, 0x787f4407, 0x6b7f81ce, 0x9fd252c5, 0x85e8979b, 0xb049819d, 0x8f7f7f4d, 0xbe284c7f,
+0x78135181, 0x5d33db0a, 0x8123817f, 0x81496a7f, 0x81889281, 0x8145bf37, 0x2e9f7fdf, 0xe4543a2d,
+0x811e6024, 0x7f62e6ba, 0xaad07f1f, 0x4f73894f, 0x4c7f8181, 0x57817f06, 0xd27feb81, 0xcf1a815c,
+0xa57fbe7f, 0x684f7fdc, 0x81f6cbc0, 0xb72bf82f, 0xda6d448f, 0xc6157f36, 0x7f81407f, 0x9a8c4719,
+0x5fdf81dd, 0xaf817f0f, 0x813c11da, 0xd7ec1181, 0x570186e7, 0x8181f41e, 0xe5b8a2bb, 0x819051f3,
+0x2a7fd68f, 0x37a13ac3, 0x5b81fd38, 0x6342817f, 0x84697f6e, 0x7f5eddfa, 0x6abc81d1, 0x8151d9d8,
+0x3e5c6c53, 0x2b397fc6, 0x60d58548, 0xc540b213, 0x67815781, 0x89983030, 0x767c7f81, 0x71effe3a,
+0x817feb42, 0x05818897, 0x810ea318, 0x99bb0e8a, 0xf1dd4b7b, 0xae6dcbae, 0x8155adc0, 0x15b4c0c1,
+0x81ac9b14, 0x895057be, 0x9599d781, 0x38968fcd, 0x8171e981, 0x7a62d80c, 0x8681509a, 0x7f5d489b,
+0xa381467f, 0x7fa12952, 0xa07f8109, 0x5acd5d7f, 0xbb7fc77f, 0x531f3429, 0x7fb77f5a, 0x566d89f6,
+0x817d4c23, 0x406a81e6, 0x1381c99c, 0xad89d258, 0xa67f0cad, 0x510b916e, 0x7ffa81a1, 0x0b6a11e1,
+0x2be02284, 0x7f4e4338, 0x817fd023, 0x058174bf, 0x677f950a, 0x97a6a01d, 0x81817f81, 0x136881da,
+0x717f7f9a, 0xbf811404, 0x6714c965, 0x51828181, 0xcaf329a1, 0x8881bc0a, 0x7f7d8305, 0x2c7f5a7f,
+0x7f7f63e9, 0x797fced4, 0x818154f5, 0xf13681c4, 0xc04b1d81, 0x0e81d244, 0xbf3f66bf, 0x5a3f2d7f,
+0xfa931714, 0xce485844, 0x263ae55b, 0x7fd37f81, 0x79477ee4, 0x7f8187e0, 0x81ab8144, 0x7f8d7f7f,
+0x6f715068, 0x7f5577f6, 0x7f487f41, 0x81813b84, 0x33431981, 0x81a181c6, 0xca1b667f, 0xe75a7f71,
+0x168128b0, 0xe0a092d5, 0x6e8164de, 0x2e817f61, 0xc4b1818d, 0xea7f8a32, 0x1098817f, 0x14a18156,
+0xdd568862, 0xd3176a4b, 0x81308181, 0x697b3faa, 0xe256cecb, 0x697f1691, 0x4e228c05, 0x7fa6682a,
+0x7449816e, 0x4558a15f, 0x9f513638, 0x7f7f819c, 0x7fb77aa1, 0x5eaf4912, 0x14817f7f, 0x0853817c,
+0xa47fbe41, 0xdfd77f0e, 0x81371d7f, 0xc9cd7299, 0x81d0673a, 0xb133492f, 0xfd7f4003, 0x897f7f1c,
+0x1990d405, 0x9f3ee2bd, 0xc168817f, 0xc6f57fa4, 0x83ee483e, 0x90f781f6, 0x81dcb39d, 0xd37fe881,
+0x28819181, 0x83da81d4, 0x7251dc7a, 0x7928ffc3, 0x7bca8181, 0x7f7f817b, 0xf6fa907f, 0x37916bd4,
+0x0d3fbc7b, 0xde81bdd0, 0xa0147fdc, 0xbf0f7f0b, 0x25958132, 0x7f6c9931, 0x7f44812c, 0xd4868181,
+0x6d9622ad, 0x817f30b6, 0x3c7f817f, 0x81238823, 0x7f2d5c81, 0x6f81531b, 0x947faff2, 0xa5ea038c,
+0x4268817f, 0x814f8cfc, 0x81481809, 0x814d7f1a, 0x3c87507f, 0xa47f1219, 0x4f65f27f, 0x5d7f2c21,
+0x7f4631a5, 0x5a81475a, 0x7f81ef60, 0x73aaa890, 0x327f7f7f, 0x81b614c1, 0x7fc6477f, 0xe5b7a6be,
+0x55816e73, 0x7ffaffb1, 0xb93d1b81, 0x3ce80fe2, 0x37ec6194, 0xe681e2db, 0x81c1d37f, 0x33a2bad3,
+0x582b8181, 0x7fdc7f25, 0x81978169, 0x9733486f, 0x3de13ef3, 0x247fd5cf, 0xa91d817f, 0x606a7f56,
+0x817f8178, 0xe61d7b08, 0x7fa08181, 0x058bd29b, 0x28237fbf, 0x4f81b057, 0x488d8103, 0xe1817fa5,
+0x81666297, 0xfabc75c8, 0x7ff75edb, 0x4a62fab5, 0x687fad84, 0xa7221c28, 0x773a5a6e, 0xf27f8581,
+0x7f7f9569, 0xa31d812f, 0x81d48457, 0x7f88bcfe, 0xd743b981, 0x7f608102, 0x18de2185, 0x81d77fc4,
+0x937f337f, 0xe67fe52e, 0x95d481da, 0x887f6071, 0x81301872, 0xd9088132, 0x7f7f5a81, 0x8181aba8,
+0x7f9a7fcd, 0x7f7f4136, 0x3d87d3a8, 0xd581d381, 0x5d306ed0, 0x615b98dc, 0x812b3281, 0xdbe5c443,
+0x817f7fe9, 0x815462da, 0x8122da0a, 0xb5817d81, 0xe12bd56c, 0xfa819a68, 0x907f8183, 0x236aa83f,
+0x1b576c9b, 0x5b6424ab, 0x3f3e3953, 0xec81507f, 0xddb43aa9, 0x818134f1, 0x81c37fb0, 0xbf4a7fcf,
+0x810b7f7c, 0x705b81d5, 0x23636581, 0x3caf7f9d, 0xbe765d81, 0x189a11ae, 0x8194cabc, 0x6063c5b0,
+0x0e3c5353, 0x388235bb, 0x81904632, 0x2b9781d3, 0xd78db758, 0x953fe437, 0x7423f22d, 0x81ad9c95,
+0x7fd74748, 0x329b582d, 0xe0e07f7f, 0x7f81ae8e, 0x962fe50c, 0x3b7faf1d, 0xcaeb8e37, 0x7f54276a,
+0x927f6c9a, 0x828143c1, 0x90456105, 0x7f757ff6, 0x796681eb, 0x7478b225, 0x70d852bb, 0x7f280bdb,
+0x56597f47, 0x51e6fff8, 0x1e7f818d, 0xdc4a8175, 0x10712985, 0x2ee6daa1, 0x81c7d046, 0xa1a36e79,
+0x9adf7f7f, 0x812ee70d, 0x91bc1062, 0x443b7fa9, 0x818f47b3, 0x7f817f3b, 0x7981a09c, 0x7f9c817f,
+0x1b46d2cc, 0x786179de, 0xd97f61f2, 0x81b4f213, 0xd381874a, 0x7f4f7fc4, 0x9c81c3d5, 0x17d59842,
+0x7fc9a8fc, 0x996840b5, 0xd5a79281, 0x88378181, 0x7fd4ca81, 0x81ba7fee, 0x5dae297b, 0xc8fa0e5c,
+0x987a5757, 0x5debc016, 0xa64eb973, 0x61a51b81, 0x66509c7f, 0xeb7ad965, 0x7ada817f, 0x4d5bf7bc,
+0x8876b8a4, 0x7d73b4d0, 0x762cb5ad, 0x6ec14d66, 0x6bfdad7f, 0x7f7f810e, 0x81bc2b15, 0x0f817f9c,
+0xc72fe940, 0xc9168b0c, 0x7f6e8d79, 0x7f81fadd, 0x706181f6, 0x678181e7, 0x3f68c5e8, 0xa06d8195,
+0x78d73d7f, 0x7295109a, 0x05897f55, 0xbdc07281, 0x81817fe3, 0xcd157f30, 0x489ca757, 0x53468119,
+0x3f6a81b8, 0x03fe7c43, 0xb511cda3, 0xe581a17f, 0x5e3e3ec9, 0x7f507f96, 0xbe12a481, 0x81006ddd,
+0x49322cb4, 0x27f7a81e, 0xc6085618, 0x8148d270, 0x68668181, 0xec5ed498, 0xa011833a, 0x81475300,
+0x071d3a63, 0xa2c55142, 0x7fe9767f, 0x6e3c21fe, 0xeb63814a, 0x7fd57ffd, 0x9f91630b, 0x475f219f,
+0xbbb5c7bc, 0x686de142, 0xb652909f, 0x6b8e5a7f, 0x7f885858, 0x7f027ee1, 0x7f818191, 0x818881d4,
+0x1b7c017e, 0x8581aac9, 0x627fa790, 0xaf837f7f, 0x69064681, 0x311d32e9, 0x6f7f0ba1, 0x7b81a1c5,
+0x7f4f8144, 0x81e38144, 0x528daa3d, 0x1c098175, 0xba6b0ac7, 0x732614ab, 0x5b2c5d7f, 0x81815ce8,
+0xb37f7fbb, 0xc87f8ec5, 0x81b08181, 0x5bcb8136, 0x7f2524c5, 0xf5e881d8, 0x50ceaf7f, 0xf72387a1,
+0xd4c74e74, 0x663f7fe8, 0x26ae4a7f, 0x5d7f6358, 0x8178bbdb, 0x46f38102, 0xb0327f53, 0xa019f297,
+0xeff57f12, 0x7f7f79e2, 0x8120817f, 0x73e4b322, 0x999c6349, 0x92ba973e, 0x7f7fbc5c, 0x81946449,
+0xaf4b817f, 0xca523d00, 0x81817fbf, 0x3b145a81, 0xec54886e, 0x81cb173e, 0x5f02667f, 0x967a8181,
+0x8a817f81, 0x3cb93c41, 0xfa811336, 0x74feb5a9, 0x821b9081, 0xaea865af, 0xf17f4e71, 0x52810059,
+0xaebc3b36, 0x6a8f7fd2, 0x109de3eb, 0x4c555f48, 0x8166cc78, 0x7f4c7b48, 0xc7d1d381, 0x1381537f,
+0xa0ab5c1f, 0xa00d0039, 0x81157f81, 0x2f206f81, 0xacb45b81, 0x2ec382f3, 0x7ff0383e, 0x44dc5aeb,
+0xc37f81cd, 0x43553306, 0xa63d7f81, 0x7f7f8140, 0x7f7f818a, 0x7d82bd27, 0x817f8b7f, 0xa3579535,
+0xc2e47871, 0x81815a0b, 0x49977081, 0x724cc372, 0xc681c27f, 0x2b7cabf0, 0x3081a6ac, 0xec7f964e,
+0x7fda3ad3, 0x422671a4, 0x60008158, 0x7f738e7f, 0x538e6f81, 0xb73e0ab0, 0x796a6551, 0x81ad178b,
+0x19731c7f, 0x1bf8c26a, 0x4acb7fd4, 0x5121b547, 0xda547fff, 0x7e505ff7, 0x817fff48, 0xa0813934,
+0x3d4f77d1, 0x83f327ef, 0xc7937f6b, 0x357c4a84, 0xc183ca7f, 0xbd6081db, 0x30e0d783, 0x492aa57f,
+0xbba6671e, 0xb062baef, 0x7f817f20, 0x7f267f58, 0x7fb94b3f, 0x447f5b21, 0xb864997f, 0x7fb057f8,
+0xb1401a7f, 0x7fb57f9d, 0xefbb8175, 0x66892581, 0x7f06fa7f, 0x817a90f0, 0x7bd5793b, 0xc37ead24,
+0x6feaa4be, 0x3a548cde, 0x8e81f98c, 0x81b78199, 0xe6c11940, 0x4d647f2f, 0xbc5c8181, 0x8175fa91,
+0x8188864b, 0x85591890, 0x47ce5d57, 0x38a4efb7, 0xce5e739f, 0x81737fd4, 0x6d7f635e, 0x9c861774,
+0x89818262, 0x45bc8114, 0xd1552a89, 0xc68174f8, 0xaf9081d8, 0xcb08e35b, 0xf5c404b2, 0x2ce96576,
+0x11895a36, 0xcf20e0ea, 0x2548e7dc, 0x8f774c59, 0xf85a8f56, 0x7f81ddae, 0x7f7f627f, 0x1481491c,
+0x7f97661b, 0x787f81e0, 0xa2192f7f, 0x6cb37fb0, 0x8181ae27, 0x3f7fafec, 0xce7f5a86, 0xae067f7f,
+0x3c1c8181, 0x817eb443, 0x8e741041, 0x5a4ef2ba, 0x61029de4, 0x9d637e34, 0x819d7fca, 0x8181cd7f,
+0x8175b96c, 0xbc4f6ecf, 0xf826aead, 0x567fa36d, 0x81968197, 0x9f9dcf3e, 0x265c8131, 0x81d9deab,
+0xc21cf772, 0x7f6bd907, 0x313f795b, 0x817f197f, 0x09ecfe43, 0x6114402f, 0xe0995a81, 0x5f263281,
+0xbe7f8158, 0x7f7f26dd, 0xfd7f7f7f, 0x3da2c609, 0x6ce3810d, 0x7f81cd1b, 0x81d68809, 0x42be9c6c,
+0xf3d37f5c, 0x7f81e031, 0x774e0c30, 0x7f8f468f, 0x9ebb42b2, 0x7f817fc0, 0x1376817f, 0x25f78181,
+0x7f8eb3be, 0x20228505, 0x229fe181, 0x81ac277f, 0x4f308129, 0xb8818111, 0x81d47fc7, 0x818181f0,
+0xc27fd34a, 0x9dbc810a, 0x8481d981, 0x61817581, 0x8a2c817f, 0xe7815625, 0x96a7946f, 0x3a7f5d5d,
+0x835f2fc1, 0xb6082dd7, 0x567f687f, 0x838181b6, 0xc663e9ad, 0x517f7fbb, 0xa570adb0, 0x12cfc2b4,
+0xc1587f39, 0xbd8140ba, 0x7f814366, 0xd00981ec, 0xc27f217f, 0x5cd1b2ad, 0x81992c7f, 0xb1b57f62,
+0x3bb9b1de, 0x9213cd8a, 0x814f136e, 0xa5c27fc3, 0x947f7f59, 0x8ef30ddd, 0xd3f290e9, 0x39bc7f8c,
+0x7f814e81, 0x5381ff22, 0x7f81f04f, 0x0adde113, 0x5b93867f, 0x687f8111, 0x7f7f1c60, 0xb856814f,
+0x7f8e8196, 0x5cfb66fc, 0x20310ab4, 0xa2599964, 0x973f0065, 0x817f95d6, 0xa43b7f7f, 0x816bb1c3,
+0x7c7581e9, 0x521770cf, 0x81456be1, 0x5e26818d, 0x3b54057f, 0xd4e231d6, 0x977f0346, 0xe777814e,
+0x81b6095a, 0x7b337fd7, 0x18bb202b, 0x219b7cf9, 0x2bdeaa81, 0x55dcd1d2, 0x8123905c, 0xe463fd74,
+0xd16ec17b, 0xd90f4e3b, 0x817fd97f, 0x817f7f7f, 0x816afd35, 0x3dd87f51, 0xa62f0e5f, 0x9f4766ce,
+0xa933c505, 0x81049129, 0x627f3e7f, 0x025ea181, 0x7b5e4119, 0x0d11aff9, 0x817faaa2, 0xe3bc817f,
+0x7fb27f81, 0xc07bc500, 0x9451c181, 0x1fc6811e, 0x7f9f9e3b, 0x7f4c1a91, 0x7f1f7148, 0x8358819a,
+0x81119a81, 0x16d55f0c, 0xc07f7f2e, 0x467f9991, 0x237f8c7f, 0x81638101, 0x2aacb9ae, 0x4f439f32,
+0xc65e96aa, 0x7f826508, 0x7fa86ab6, 0x602ddbc4, 0xd07fd00a, 0xb0e381dd, 0xca81cc2e, 0x7f7b7f15,
+0x7f81b9bd, 0x21627f38, 0xa481ed5c, 0xeee8d79b, 0x64369481, 0xb97f81b1, 0xf443d7e8, 0x50a410b8,
+0xd87ffbbe, 0x18589760, 0x814998d5, 0xc1814b2f, 0x7fc33b7f, 0xd25b7335, 0xb6b2987f, 0x988a7f48,
+0x9aa4fb81, 0x597fd920, 0x7f4e7f9a, 0x7f819892, 0x81daeac9, 0x7f538fcf, 0xac7f8198, 0xd2529c90,
+0x0ff00ba8, 0x765cb53e, 0x7f0fd3ab, 0x0d81cb33, 0x81989961, 0xc13c7f25, 0x20d6a6bf, 0x7f817fd0,
+0x6f6594db, 0xec8c68eb, 0x638194a0, 0x3b89815c, 0x81734c65, 0xaeb69ec3, 0xd20b6440, 0x2f71b6dc,
+0xc990816e, 0xb6077fda, 0x7f4cc48a, 0x816aa8e8, 0x817f397a, 0xfb8181b7, 0xe64d11e2, 0xe97f1576,
+0x10706f7f, 0x9b935d4c, 0xaf7f3547, 0x7f175ec9, 0x7632a981, 0x2f61d4f4, 0x7a597f81, 0x499e7f00,
+0x7f81315e, 0x81c4230c, 0x8cb66a2e, 0xe76a8105, 0x81817fc6, 0x7f0e50bd, 0x83ba337f, 0x81009281,
+0xcac68465, 0x617fd326, 0x893981e4, 0x7f8ed9b3, 0x59467f7f, 0x0181e258, 0x7f81b281, 0xc9816629,
+0x7fbc8181, 0x08e1cadd, 0xa8328181, 0x76b6e071, 0xb36d7feb, 0x505490d7, 0x09d5dd31, 0xba81632d,
+0x7f7f6fd0, 0x9e45813c, 0x7c4c4f70, 0xd97f5090, 0x247f335c, 0x357fbb4d, 0x267fd5c8, 0x26d08181,
+0x51447fa8, 0x81358efb, 0xb9197f52, 0x40aadca1, 0x7f6781aa, 0xaf272a09, 0x8177a4b2, 0x497fb515,
+0x819b7f7f, 0x8b817f41, 0x257f7f92, 0xa8d2244e, 0x477af9ef, 0xa8817f36, 0x5ca681f5, 0x7f1a76cb,
+0x8181c5f1, 0xc4ddc7aa, 0x81a1c2bc, 0x7f466fa2, 0x625c237f, 0x3ddd1f44, 0x4f54fdde, 0xa281f2d5,
+0x95d14e95, 0xf26e7fd4, 0x9a813a90, 0x8154361c, 0x327f7f42, 0x7fa2983b, 0xd9c28197, 0xf00d1898,
+0xb95848d4, 0x387f81f0, 0x9f8e7f4a, 0x1c5cb9ec, 0x1f63b5fc, 0x187f7dcd, 0x7f1c7f05, 0xa855e2cc,
+0x5a747f98, 0x7fa1b4ee, 0xe8e51aaa, 0x7f81ec81, 0x38818175, 0x81815f07, 0x84888181, 0x81810852,
+0x316e0060, 0x819b1c6e, 0x3d814577, 0x5ecc5d81, 0x5e81814c, 0x7f76914d, 0xfc7f814b, 0xd2819d96,
+0x70a34ad0, 0x7fd544f3, 0x71e51581, 0x817d45a4, 0x7f479a68, 0x42447fae, 0x9a974f7f, 0x817fbbd2,
+0x989f367f, 0x78fa30c0, 0xbb902e75, 0x7fda7f02, 0x7f82c5b8, 0x33c325c4, 0xdf89815c, 0x81c37f33,
+0x52f37ffc, 0x7fcc4702, 0x81488124, 0x7f548196, 0x4214a4a3, 0xa034b302, 0x6a817e04, 0xc67f795e,
+0x17a98157, 0x7f7f7f5b, 0x7f7f4c56, 0x7fe0b181, 0x7f907fba, 0x42f82fd9, 0x223ea236, 0x3d2025d1,
+0x097f81b1, 0x81a35969, 0x373cb170, 0x44a57c3b, 0x26bc5a7f, 0x34657ff6, 0xc83b3d3f, 0x99be6c2c,
+0x1c811f7f, 0x5c7f81ac, 0x33fa49f6, 0xa5c38181, 0x81ed8144, 0xc88a652a, 0x7f817fe3, 0x953cfc91,
+0x466681d3, 0x366f16d6, 0x187f2ff5, 0x077ff351, 0xbe1b817f, 0x3884ec81, 0xb17f8181, 0x9a39437f,
+0x476fac61, 0x7f911514, 0x24b0038f, 0x5647567d, 0x8143c7ae, 0x81b03a31, 0xec7f085e, 0xc10d7f55,
+0x0a50b9f6, 0x7f1fd244, 0x7f81a1c7, 0xc48148ca, 0x877fc97f, 0x81115e37, 0x827ffdf3, 0x48b741c2,
+0x7f9fc5c0, 0xf87f81ce, 0x43a1029c, 0x2a78427f, 0xff9a164d, 0x7ff981f6, 0x1b7f81aa, 0x6f48ca6a,
+0x547f7f2a, 0xa9ce5cf0, 0xc07f7f7f, 0x7f6fa54d, 0x58817fbb, 0x7f96fa32, 0xfdc18381, 0x7abd7e7f,
+0xc604b981, 0x64217ffe, 0x8893bd7d, 0x7f140281, 0x7759b9e3, 0xcc648129, 0x81c981c6, 0xaf2ba351,
+0x9ecd819f, 0xac816ff2, 0xb516672e, 0x4157ab81, 0x81d21796, 0x35643433, 0xf13d5a7f, 0x9881d003,
+0x5081bbd0, 0x7d7fbdcc, 0x6ba50d3a, 0x8170677f, 0x85b29f81, 0x8aa72210, 0xfbaaa381, 0x7f0e8f34,
+0xcf367b7f, 0xe60399ab, 0x7f7f7f01, 0x817f7f11, 0x81818932, 0xe39a6e31, 0x8d3b8181, 0x107d2bc1,
+0x908164f7, 0xe41a7fc5, 0xe944503a, 0xeb4b6559, 0x22817f81, 0x816ea8ff, 0x1557e37f, 0xaa7f701c,
+0x817f828e, 0x738106c4, 0x7e0e7f05, 0xac768181, 0x17898158, 0xc081ea33, 0x827f9958, 0x3b7fd4fc,
+0x16181f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x0c7f3a86, 0x7750813d, 0xd2b385bc, 0x6f7f7f72, 0x7d487fa8, 0x7f7f8d65, 0xb6578196, 0x4d93815a,
+0xf9a54748, 0x317d6469, 0xe0466f8a, 0xef869693, 0x3da5a9e2, 0x7f7f05a1, 0x14c68157, 0xc2148135,
+0xad9ed181, 0x7a7f6081, 0xf10d659b, 0x4a38dce0, 0x114d7f2a, 0x2bc7f79f, 0x0f7881f1, 0x423e5553,
+0x9c2b817f, 0xde7ffb85, 0xe18117ca, 0x67fd7f7f, 0x3fbbf57f, 0x9b34ad7a, 0x487a543f, 0xf06322f8,
+0x9ce93023, 0x3581818a, 0x6a7f4d69, 0xad3d627f, 0xbd812c92, 0x8be4cc7f, 0x23b47fc4, 0xc87f819b,
+0x104d6e7f, 0xcfcb8134, 0x0d8152cf, 0x467f7f19, 0x113f1ec5, 0x589bff9e, 0x457fa8c8, 0x2a1246d0,
+0x731e257f, 0x40e460e8, 0x13d3057f, 0x817c8de1, 0xc09dc798, 0xab81d4f1, 0xa1a49d8c, 0xbf50df7f,
+0xbc8192f7, 0x73aa4d5a, 0x1c817f43, 0x428fd6fc, 0xc282884e, 0xb9f67fd8, 0xd7777f4d, 0x1aa2d89a,
+0xa5537f81, 0x8878b631, 0x4bdfd881, 0x7f21b57f, 0xcd7f7f7c, 0x4d2aa1d0, 0x3e138144, 0x3c7fe433,
+0x146e5fe3, 0xa53b7f85, 0xa9537ffd, 0x819eda1c, 0xf93e2881, 0xc3814f7f, 0x018d69b4, 0xf87fa19f,
+0xb09f9144, 0x6ec23f94, 0xdf7f39c6, 0x48087f7f, 0xfc818184, 0x18815bc3, 0xc764598b, 0x11ed68c7,
+0x81df81bd, 0x7feceb38, 0xc90a473a, 0x81817f81, 0xef3a537f, 0x7f4d3873, 0xf45c846f, 0xfeb68afc,
+0xd326d181, 0x7fe4ae7f, 0x3e817fb5, 0x81c95de9, 0xbebdcd7f, 0x23053726, 0xdd8d8181, 0x1d545233,
+0xe37c933d, 0x81e52c1d, 0xc0ab2d81, 0x81e2667f, 0xcf2e70db, 0x9370319c, 0x21add116, 0xe6c34081,
+0x076912e7, 0xa781aca0, 0xd6f5a5d0, 0xa9af5d7f, 0x2e817c77, 0x81e1661c, 0xd5308181, 0xae7f6ec4,
+0x45815295, 0x2dbc2581, 0x50bde53d, 0xcd8cb1bc, 0x2e67977f, 0x32fc789f, 0x2b81ca3f, 0xef7f7f61,
+0x19a7d611, 0x81427f81, 0xe98181fc, 0xd4397d7f, 0xd9ab7fb7, 0x819c8c92, 0xd5478339, 0xf0555aae,
+0xfe09f481, 0x8128527f, 0x337f1081, 0x6dae3aa2, 0xccb67f81, 0xb1d8d87f, 0xc2d3dd02, 0x97af814d,
+0x812f1c5a, 0xc50c8181, 0xcd70610a, 0x7f555df4, 0x567f7f23, 0x0a0d917f, 0x4b81815c, 0x184a5b8e,
+0x5054c67f, 0x7f7f8ced, 0xf0b31f7f, 0x11698131, 0xe0ac5442, 0x57ffc57f, 0xb681cc02, 0xb78c8193,
+0xa629b48c, 0xf2a8d43b, 0x59167d37, 0x81818bf2, 0xc87c817f, 0xbf7f8e7f, 0xcdbc2243, 0x2ed78e74,
+0xfe817d61, 0xa3613c01, 0x25e281af, 0xbd6a7f36, 0xe57f4b7f, 0x81898161, 0x2a415081, 0x50b07fb6,
+0xe77f9c72, 0xd43681aa, 0xd07fb648, 0x3c7fbd5b, 0xa555c475, 0x8169dc64, 0x09106247, 0xf9b660ab,
+0x389542ac, 0x7fa22c4e, 0x81304e71, 0x29208c90, 0x317fa43a, 0x8281819d, 0x7f212065, 0xc0682681,
+0x3f2b5dc7, 0x87d86d81, 0x5c7f4192, 0x7f54332b, 0xc564a449, 0x7f817f58, 0x3c6576aa, 0x147f816d,
+0x4957d091, 0xbdaba3a7, 0xa17fa381, 0x49628138, 0x372f815b, 0x81676748, 0x8dba817f, 0xc89e8129,
+0x866fc855, 0x43ba4a81, 0x8f4b7ec2, 0xa47f054d, 0xc3b07185, 0x7f8d3ad0, 0x2c7f9f8e, 0xc17f27d3,
+0x33956381, 0x8e12a081, 0x7be52e32, 0x44b28122, 0xe4947f6d, 0x6eae4f7f, 0x34df816a, 0xd7938168,
+0xa7a9528b, 0x7f81ec45, 0x41857f6f, 0xbc28817f, 0xcbd67c06, 0xaeb678d2, 0x529a547f, 0x44813b6e,
+0xd44f247f, 0xbe1b9879, 0x877f4996, 0x5b9a8dcd, 0x2e558281, 0x1d817f84, 0xda7f8186, 0xdda9f4a6,
+0xe698ae70, 0x7fb54c8a, 0x0aae8550, 0x857ff8fb, 0x1ac42e8e, 0x3f27814b, 0xe27fdc2d, 0x2db1eb81,
+0xca817e5a, 0xec7f62e2, 0xc7dea079, 0x7f7a7f26, 0x7fdfbf81, 0x7fe89da8, 0xa9187264, 0xf98192c9,
+0x6af88181, 0x667e3981, 0xf97f3c48, 0x7fdf817f, 0x3b9bbc81, 0x55bfbc81, 0x096fa6e1, 0x1b75a67f,
+0x357f83ed, 0x7f7f6f7f, 0xf3b43812, 0x9d4c0d92, 0xa8817f4d, 0xb96c877f, 0x34818178, 0x5d7f997f,
+0xdb7f5c7f, 0x39b056a4, 0x33bcffaf, 0xb398b57f, 0x285a4bf1, 0xb181574b, 0xc1e56d31, 0x4b717fd2,
+0x56337f81, 0xed938157, 0x7f4b7f47, 0x49a3812b, 0x2e667fcd, 0xcd817240, 0x8b5470e6, 0xf693814e,
+0xd3e07f7a, 0x7f7a4781, 0xf44cd60c, 0xfd546281, 0xef995981, 0x81e70628, 0xd3b97f47, 0x07819aa8,
+0x707f447f, 0x9181c079, 0x72ae8173, 0x988d2a78, 0x7f814478, 0xb57fa076, 0xde7fb260, 0x17817f3b,
+0xf045c31b, 0x7f7feb13, 0xbee5d07f, 0x5f8192ae, 0x0c9381f7, 0x28817f7b, 0x985964d5, 0x81817d81,
+0xb381b799, 0x38b0817f, 0x3a887f0f, 0xf353fe81, 0x53817fdb, 0x5c814d56, 0x39b415ff, 0xc9c78c59,
+0xb2817fad, 0x5884bec5, 0xd629b07f, 0xb67f81cb, 0xcb81abe9, 0xab7f9b7f, 0x35815781, 0x85878181,
+0xb0b2177f, 0x86223495, 0x32cd7f69, 0x3c664743, 0x1d7981c2, 0x817f817f, 0x16cadc06, 0x03786a7f,
+0x03818107, 0x5a8dd1d1, 0x58e57f20, 0x7f818152, 0x444c50f0, 0x3d81810c, 0x66ae7f62, 0x39d01614,
+0xbd817f81, 0x789b7fa6, 0xadcd819c, 0xd37f8171, 0x291ebf81, 0xd5923ac9, 0xc37f63bf, 0x1c7981ae,
+0xda5e969d, 0x248c5899, 0x8fbdc4b3, 0x6c50d2cb, 0x2a5fab0b, 0xc42d818d, 0xa4776781, 0xaa6281fd,
+0x20534bc6, 0xb729727f, 0x6481de5c, 0xffc8a5e9, 0x707f25f2, 0xc674ba57, 0xe2ff9cb8, 0x02433e79,
+0x108e223b, 0x617f9cd7, 0xb5507f81, 0xa6f63ee6, 0x09b45856, 0x7e7fe581, 0xe4f8417f, 0xe11d98be,
+0x44817f7f, 0xc9c581df, 0xf7817fb0, 0xac6da566, 0xc681ed7f, 0x3249810f, 0xab55b281, 0x35e64c81,
+0x61e9b982, 0x8d8c4781, 0x4eafd663, 0x7fb8302e, 0x40a9bcb1, 0x17b17f9e, 0x817f92c0, 0xe35d2fb3,
+0x4ca815dd, 0x817086b9, 0x389b817f, 0x3c0d955f, 0x447f7f1a, 0x7f11307f, 0xada0815a, 0xafca7f7f,
+0xce48b124, 0x7fd94e81, 0x2edc81a4, 0xaa098a97, 0x14030263, 0x97813a7f, 0x8181d97f, 0x2581c9e6,
+0xe57f7f05, 0x16880f81, 0xa6e88184, 0x818490a2, 0xd5a87f94, 0x8b81a081, 0x38813781, 0x14a59a5a,
+0x486b8c40, 0x893449c7, 0x1f03d659, 0x81bb2831, 0xe0d8c66b, 0xa1bb7066, 0x1b7f8c71, 0x07815581,
+0x3820cb84, 0x8d3926b5, 0x81f27fd2, 0x46ff3a84, 0xfddc057f, 0x16d21ad1, 0xdbc27852, 0xf9817f34,
+0x7f81397f, 0x6c0f8101, 0xf22a100c, 0x7c998171, 0x4b68bad6, 0x7f588114, 0xc3465c81, 0x439e037f,
+0xd9817f52, 0xf1bd5594, 0xf93f9f81, 0x39447f7f, 0x46dca006, 0x93f30f7f, 0x6e215e81, 0x092ffdc3,
+0xad49e8a0, 0x7f4e7fba, 0x9b9c4fc6, 0x8131f77f, 0x0700b27f, 0xf0de61ab, 0x258181fb, 0xd8e8bb56,
+0x36932155, 0x9c7f2981, 0xb2bfe055, 0x7f0095b9, 0xaf73327f, 0x70817fbb, 0xb3a281d6, 0xfac08a53,
+0x24e4727f, 0xcbb5dbbb, 0x38be99fa, 0xbcb94e7f, 0xdf2653d0, 0x93df5efe, 0xfcdc697f, 0xe754909d,
+0xc6810060, 0x7f0ce4d1, 0xaec4a5ca, 0x4a7f81bd, 0xc17f817a, 0x7feecc3f, 0x2981285d, 0x3e0e6e81,
+0xab81814f, 0xbf27187f, 0x12409322, 0x1c9dc451, 0xc48e03e7, 0x64013b81, 0xb5847aa7, 0x350a1b84,
+0x27458181, 0xa1237f61, 0x9714287f, 0x817f8170, 0x1a7f7f09, 0xf07fecc7, 0xd686d4c9, 0x9abd7fa9,
+0x449dc0bc, 0xc1177f9d, 0x7f547f9a, 0x7fbd7fe3, 0xcab19d2b, 0xc981b27f, 0xdc8ba548, 0xe95304a6,
+0x22225820, 0xd29262ec, 0xf27f9f78, 0x1b94427f, 0x4738a436, 0x7f814fe0, 0x52817f7f, 0x1d818181,
+0xf8d92d89, 0x24817fa3, 0x66d6aadb, 0x4e55b9ca, 0x7f81de8c, 0x7f814e64, 0x24141e31, 0xa5232778,
+0x34e27f81, 0xdc87c78f, 0xc016dfb1, 0xce91829c, 0xe662c230, 0xda74e681, 0xcfb57bb8, 0xf18179ff,
+0xcc818481, 0x4736ed45, 0xcc6ee881, 0x3a815a81, 0x81b77fb2, 0x56816f2f, 0xe82bcb89, 0x3875ad5f,
+0xe05197e1, 0x1a7bc17f, 0x31a3f841, 0x7f90a77f, 0x1df3b910, 0x583f815b, 0x257f814c, 0xee7f7f8e,
+0x7dbdc37f, 0xb6810a1c, 0xce816d85, 0x459bf72d, 0xd4fe0481, 0x0d49024c, 0xbfa3a055, 0xed9baf30,
+0xf27f7f7f, 0x7dd24f9b, 0xc481817e, 0x7f899052, 0x074d5bdb, 0x2335c3fe, 0x00759f7f, 0x251bacbb,
+0x147fc935, 0x0b180994, 0x9f7fa637, 0x387ff150, 0xcbac8967, 0xf37f60cb, 0xe4c216be, 0x7829816a,
+0xd7b89981, 0xf8ae2592, 0xbeca818c, 0xf3817a81, 0xc681017f, 0x2f2f2e8f, 0xfe577f1b, 0xd503d778,
+0x2d7f7f67, 0xb281c0f0, 0xf7d7812c, 0x817f9598, 0x1af6fb36, 0x157f3781, 0x5e31a27f, 0x038181ae,
+0xf9fb81ad, 0x7a8eec81, 0xc8652e7f, 0xc67ba487, 0xbfce7f7f, 0xdf02a27f, 0xf9c1813d, 0xcaac0f90,
+0xdc448181, 0xb17f921f, 0x99be8181, 0x7fc09993, 0x11ad1bc3, 0x5c7532bf, 0x25a8ce28, 0x0ab6a823,
+0xc3c29055, 0xad55b6ea, 0xed81e0dd, 0x8caa6553, 0xff817fc8, 0x7f70d513, 0x433671dc, 0x5db37f6d,
+0x7f318170, 0x55bd4dd5, 0x00c181b7, 0x41c3bb90, 0x441a818e, 0x84e78140, 0xad8a2c81, 0x2bc38158,
+0x82654c81, 0x29d6600e, 0x227f7fc8, 0xa43d577f, 0x2b8364a3, 0x144e2a57, 0x07817f1c, 0x4a8171cd,
+0x47d5a981, 0x3c7d0781, 0xba636c7f, 0x2c7a7f7f, 0x90cf187a, 0x6b4c3671, 0x3a2c436d, 0xef81de81,
+0x4a828117, 0x814dabc0, 0xf930e17f, 0x4c3265c0, 0xe5ef7a7f, 0x819b8504, 0xd5427f81, 0xd881e992,
+0x946a45fe, 0x310162a7, 0x14819c81, 0x7f817f4a, 0x552fcf42, 0x7f707f18, 0xb9dc4881, 0xa17f81c2,
+0x9e476d98, 0x7f7f7ff0, 0x37662d4e, 0xdb7f99cc, 0xf9fe8cc1, 0x1f4c7fd1, 0x3588817f, 0x547abea9,
+0x356e7f7f, 0xab1e857f, 0xda0e7f5c, 0x9d777f7f, 0x451f1bb6, 0xa82e087f, 0xb71d347f, 0x0916d881,
+0x177e817e, 0x7f5a66a4, 0x237f2e6e, 0x816dafde, 0x2f8124c1, 0xcee67158, 0x067f667f, 0xe1258187,
+0x3a3165f7, 0x1f7fac81, 0xf636364d, 0xf2818e36, 0x0b9e207f, 0xed2d7e81, 0xaa6e2281, 0xcb50b6a3,
+0x237f72c6, 0x95819fa0, 0xd7d0c888, 0x39988141, 0xc8b07f8d, 0x5a43c942, 0xf3cd687f, 0xa2e77aec,
+0x9909bb1b, 0x7ff8e681, 0x5d39837c, 0x5625817f, 0xa9738110, 0x8b604bb2, 0xf3ffa881, 0x5f359eb5,
+0x07bf7f49, 0x7f63c67f, 0xc9db7fcb, 0xa65881c5, 0xf2818130, 0xa5817f81, 0x26b4174f, 0xc06f817f,
+0x3b8181c2, 0xbfeb4d6f, 0x9e857f91, 0x58a9a1b7, 0x67147fdc, 0xcd257081, 0xb78d4081, 0x3749ebb8,
+0x22ac7f89, 0x4af84134, 0xe3f97943, 0x2d8187c6, 0x027c8181, 0x81c1bfef, 0xc32b2267, 0x42257f81,
+0xb49b3eb3, 0xa3d47fc2, 0x27ff4d81, 0x69b4a46e, 0x81818181, 0x7fd5817f, 0x00a97d91, 0x10897f7f,
+0xd87f0d3b, 0xcbec8b7f, 0x7f814de6, 0x8286209d, 0x06e2bf7c, 0x81e28881, 0xae64afdd, 0xabc5667f,
+0xee22bee0, 0xe157d171, 0xb39a5bd6, 0xabb6d1c0, 0x53c19d81, 0x447fdb81, 0xfc086996, 0xd65f0481,
+0xc87f4d35, 0x313a12db, 0x5d81a1a0, 0x01231072, 0x327f81d6, 0x7eb1ba7b, 0xe9485dad, 0x5781767f,
+0x047f2481, 0x817f5b50, 0xda064bd7, 0x7ff07b3c, 0xfde4a68a, 0x7f83816b, 0xe67f7f34, 0x1a56f181,
+0xe2bbb681, 0xe4687f74, 0xd5a20bd8, 0x81d581a6, 0xb2395342, 0x977f0fa3, 0x81e3b5dd, 0xf1cd8147,
+0xe34f48a1, 0x258142c3, 0xe24d510b, 0x46d6816a, 0x2a608ae6, 0x5781ef81, 0xcce97f0d, 0x677f7f81
+
+input1 =
+0xaa2381bc, 0xbde77f4d, 0xefa38185, 0x81a67f75, 0x6cceb856, 0x4976bb25, 0x3efc977f, 0x86cdf691,
+0x13497f81, 0x7fe7730a, 0xd71d8163, 0x8c7f7fbd, 0x1bec817a, 0x8154b897, 0xc71e45b6, 0xbed568c3,
+0x256c6514, 0xd481af7f, 0x19ad697f, 0x817f745f, 0xd27fa187, 0xd5e769d9, 0xd816cf7f, 0x1aa4815b,
+0x035e7ff6, 0x85de810b, 0x3ea73657, 0x216281b2, 0xe48144b7, 0x3277dfe8, 0xf8c57f20, 0x907f5091,
+0xf481b081, 0x9d8152cf, 0x0e6a81c0, 0x7fff7f06, 0xf8884d81, 0x687f81b3, 0x2657ba35, 0x527fc24c,
+0x9945694c, 0x1faa4e5b, 0x37819334, 0x57f52a7f, 0xec7f817f, 0x817fa0a8, 0xe3a8818a, 0x16beacdb,
+0x2ad2b97f, 0xb981245b, 0x359a8181, 0x7f97265e, 0x9de4387f, 0xed7f058a, 0x0e817f81, 0x4e69bdb5,
+0xc5e38552, 0x77482e81, 0x6c817542, 0x447f2990, 0x07b1f9dc, 0xc4247f82, 0x077f7f81, 0xe58bdca6,
+0x55e07f74, 0x0e7fe47f, 0x04883e81, 0x4981f87f, 0x7d7fce29, 0xe07f7d7f, 0xee817fa6, 0x7262da81,
+0xe158813b, 0xe35e41b9, 0xf17f6d65, 0xef7560ea, 0xae408493, 0x97812300, 0xf29f816e, 0x557fd5aa,
+0x328bb778, 0xa27f7f25, 0xde7fb5cb, 0x03577f0b, 0x577f18a5, 0xb9816d20, 0xe28d2a7f, 0x248c7fb9,
+0xff5fb965, 0x93b27f9c, 0x2d817581, 0x41958195, 0x3a7ff044, 0x7f7f6faa, 0xdb81b784, 0x5081603d,
+0x363ff38d, 0xc747d8b3, 0x537f812b, 0x8176a97f, 0x1d8181d3, 0x81811929, 0xe893d4c7, 0x3c7fcf7f,
+0xf6385c81, 0xaa63b42e, 0x81c3a781, 0x488142a7, 0xcbef89be, 0x3f748159, 0x50c52932, 0x298198d7,
+0x14c68e7f, 0x7fd8a798, 0x085a632f, 0x7f1d7f7f, 0xb2e34289, 0x88c3b262, 0xb044817b, 0xbf7f238a,
+0x5ae6b554, 0x9e833081, 0x607f985d, 0x0203226c, 0x333f63fb, 0xc77f8181, 0xe8297f7f, 0x9dea7f33,
+0x6f2e1f54, 0x2e41327f, 0xff0f7f81, 0x7ffa7f30, 0x343f74a6, 0x81f59f81, 0xaac67dbb, 0x6f81da1f,
+0x79ec8153, 0x78eae674, 0xec7f6e71, 0xa46a48bf, 0xe5810efa, 0x0f41b9a7, 0x3a1124a5, 0x5ff97f7f,
+0x0bd5be75, 0x7f8181f0, 0x242f409e, 0xf47ac606, 0x1e96d94f, 0x43a66a81, 0x18fc815c, 0xa51a7f7f,
+0x1185d27f, 0xa00c810f, 0x078ae481, 0x71d7866c, 0xd47ff796, 0x813cf240, 0x45814d48, 0xbc6c3618,
+0xa8b937ea, 0x838e7f7d, 0x19b3817f, 0x7f73be95, 0x00fa46b3, 0x4c43655a, 0x20f67fc2, 0x98fdda7f,
+0xe879817f, 0x4c9e7f2d, 0xcd7fefc2, 0x9681a909, 0x1e59e7b3, 0x35818136, 0x9e3a977f, 0xaf7f207e,
+0x9633227f, 0x44450e81, 0xc2c25f7f, 0x7f1a3f81, 0x08acf783, 0xd083a838, 0xd2627f59, 0x6d327f32,
+0x362c2b5e, 0xee8e507f, 0x48b431c5, 0x00816381, 0x1e6c1150, 0x7df48149, 0x36f94f81, 0xc5667844,
+0xf7cbf52c, 0x520081b8, 0xc6967f7f, 0xc88981b8, 0x328181ee, 0x697fa9f2, 0xc99a7f81, 0xb5a08181,
+0x1d74dc89, 0x643ab5cb, 0xeb81f9be, 0x987f277f, 0xad38747f, 0x61778c52, 0x59817de7, 0x05ae8144,
+0x217aa1de, 0xc0817fe9, 0xa1a6b4dc, 0xece08189, 0x4118207f, 0x9a8181a8, 0xcf0f81c9, 0xba81d081,
+0x138181b8, 0xd537957f, 0xfc7f9b8e, 0x7fc9607f, 0x16c085fe, 0x81fa7fb6, 0xf7847f66, 0xc20ee0fd,
+0xf983ec97, 0xce209f7f, 0xe2815922, 0x39b07aa8, 0xd3a82353, 0x6ee38287, 0xc60d7f29, 0xcf478f57,
+0x594d731b, 0x0e8c42fc, 0x6a702ce3, 0x7b81b301, 0x3181a450, 0x7fe94481, 0xe581b66f, 0xd87f7f2a,
+0xc1b385ee, 0x81816964, 0xbb7f5093, 0x8151817f, 0x51e3547f, 0xb3fa7549, 0xca81b044, 0x258143bf,
+0xb18181c8, 0x7f54eb08, 0xd4c9db57, 0x68a981b2, 0x4ef17f69, 0x917f977f, 0xda38865e, 0xe97f3e5f,
+0x0bbc63dc, 0xec34daaf, 0x1dc38186, 0xb381810e, 0xcbacafd2, 0xdb3ec56a, 0x22817381, 0xbc44cc4d,
+0xd681d0b0, 0xe614c8a9, 0x53577f7f, 0xdabc3012, 0x353ecdc2, 0x81728179, 0xb660cf7f, 0xef49ca49,
+0xc645dd7f, 0xd16a7f81, 0x1fb99d7f, 0x7d36d57b, 0x04ce7f46, 0x602adede, 0x1142cbb1, 0x60de427f,
+0x29814ccb, 0xe9ad7d99, 0x127b2881, 0x5c5aa08f, 0x38c0db9f, 0x7f76d981, 0x63b32381, 0xdd41ce81,
+0xce14e57f, 0x74ed7398, 0xdd81e6eb, 0xb6f2d581, 0xa581b77f, 0x468c81d7, 0x5f2d88b8, 0xf481fd21,
+0x6ec1e381, 0x71568485, 0xcbfa7f6c, 0xa02e0c9b, 0xd9a09a7f, 0x813d8176, 0xcf43c52b, 0x31a8bca1,
+0x2432dce5, 0x78277f94, 0x474e592e, 0xdefb7f81, 0xff147f51, 0xbb7f3858, 0x25f1e591, 0x36fad833,
+0x0ac87f39, 0x815d9781, 0xaebaaa81, 0x4981815f, 0xd7817781, 0xb44838b5, 0x32626981, 0x417fe2f6,
+0xdf638c92, 0x8624067f, 0x4432e69f, 0xd8688a7f, 0x06815215, 0x25bbbb7f, 0x5b5b6f63, 0x417b5b81,
+0xcc4a7b7f, 0x6ea47fd3, 0xe866b481, 0xc630c9aa, 0x083781ed, 0x69de817f, 0x0381f9f2, 0x84812ce2,
+0x027f4dd9, 0x7f5a9e81, 0x00ea319c, 0x222b9a9b, 0x34a143f0, 0x7fefd1d0, 0xb4947981, 0x11474bc1,
+0xcd44df7f, 0xa2878439, 0xd6f040b9, 0x6f86817f, 0xc67f7f81, 0x7f693443, 0x8d21b1ce, 0xdab1aed5,
+0x3f17ae71, 0x45b7ba7f, 0x05229255, 0xb181d8f5, 0x688681e3, 0xea81e181, 0xf57f817f, 0x7fdc5881,
+0x6e817f7f, 0x817f537a, 0x3987247f, 0x300a7f05, 0x3128057f, 0xe731b77f, 0x4881b50b, 0xb86dae65,
+0x00c015a0, 0x81397552, 0xb9bcab24, 0xf5818181, 0x57d18190, 0x81c3648d, 0xed813a67, 0x4c5d3a06,
+0x3581a4e3, 0x64db6467, 0x21af7d27, 0x5adf7f57, 0x66d9c99f, 0x5b183375, 0xbf4c41e5, 0x577f7ff0,
+0x4e818181, 0xf295493c, 0xd2c28170, 0x5c3a7f8e, 0x09c18181, 0x7f7f7f9c, 0xae675fa9, 0xf6d781a4,
+0x66ba10dc, 0x7f882981, 0xfe7f7f7f, 0x7f7ffea4, 0x2798d845, 0x899cb6fb, 0x4982bcd9, 0xc0815ab0,
+0x558181aa, 0x52110702, 0xd179e3c5, 0x482923bd, 0x187f8181, 0x81b3f6d9, 0xfd96a581, 0x2c5d1a81,
+0x6fde23dd, 0x9e815063, 0xfba49bcc, 0xfa775f4d, 0xb1b8b681, 0x81894f1b, 0x3c8163fa, 0x2d7f3d81,
+0xc57f6681, 0xbd7f7e81, 0x137f7f81, 0x6b3d6f81, 0xe5e2610d, 0xb4683186, 0x7f6e817f, 0x90c12abc,
+0x13a3502a, 0xdddeaa8c, 0x07a67f79, 0x1a5481ce, 0xb87fb01b, 0x0a4b1e7f, 0xd77ffcb7, 0x03535781,
+0x5a5f697f, 0x02ca7966, 0x379638bb, 0xc507c941, 0x5e7fdf8e, 0x7ce0c99b, 0xa162ccfd, 0xff8196cc,
+0xd43aa081, 0x67798185, 0xd6277f2e, 0x7f6dcb7f, 0x217fcd76, 0x2c88fb91, 0x06815b8f, 0xe37f7dae,
+0xe937257f, 0x648181ae, 0x21652c4f, 0xbf81685b, 0x36abe921, 0x3cb5de30, 0xa88e8162, 0xd87f812b,
+0xb981d14d, 0x75c181a7, 0xf7c08aa1, 0x57904e7f, 0xf6f688d8, 0x7fcf6281, 0xd33dbf7f, 0xc07f9a73,
+0x197f8135, 0xcabf8bc6, 0x3f81c37f, 0x487fac4f, 0x8ddc924b, 0x50257f7a, 0xf75e1496, 0x28d2d48f,
+0xcd91817f, 0x2a7f81b2, 0xbd7fb67f, 0x3b877fe1, 0x407fd8fd, 0xbc815f20, 0x7f50e581, 0x8bdfae4d,
+0xb1eb7f81, 0x07819f40, 0x3765274c, 0xde7fd081, 0xa0817f7f, 0x8dbe5081, 0xfa436f7f, 0x4848463b,
+0xc5c45cdb, 0x7f8b1865, 0x5bf381b6, 0x45aa497f, 0x7f813694, 0x54f15918, 0x72886c49, 0xe3fb31b0,
+0x0db1a582, 0x4aadce1b, 0x39926d8b, 0x9a30a85f, 0x1b606181, 0x1c6d165b, 0xfb057f4b, 0xcd7f81ec,
+0x12bf7ffb, 0x7f5f91d4, 0xca8158b7, 0x86134234, 0xf0f17f3c, 0x7f4e05c4, 0x34814f7f, 0xe5c1106a,
+0x2d50c67f, 0xb57fa18b, 0xb7816481, 0x7fffaadb, 0x607f817f, 0x5048ea81, 0x82495d02, 0x17819b7b,
+0xaba67981, 0xb5817f7f, 0xee57a2b6, 0x3591a602, 0x2885a153, 0x429ba160, 0x757fd0f5, 0x344e9d7f,
+0xc77a7f8d, 0x2a7f8160, 0x3198b27f, 0x81c552bd, 0x0374e058, 0x31605de1, 0x40d0817f, 0xb281a37c,
+0x156ce27f, 0x91893090, 0x06f58181, 0xc4487f6d, 0x0a7f7f9d, 0xc3a17141, 0xc03c39c5, 0xb581b2b5,
+0x526a7f7f, 0x7f7f7f4e, 0x7fec7f7f, 0x95cead7f, 0x161ba8d2, 0x8ad0d081, 0xe4f19557, 0x5bb6fca9,
+0x2d813a6d, 0xddbb7f81, 0x1cb1e281, 0xc2b43734, 0xd07f4641, 0x7f81bb39, 0xae9b1b81, 0xbe817f36,
+0x1caf7f81, 0x7f704922, 0x108f777f, 0x81662d7f, 0x479ca35b, 0x818513c2, 0xa41d8607, 0xd081b235,
+0xf6817fcb, 0x7f015960, 0xadb15f5b, 0x81be2abf, 0xf2b0e29f, 0x81819224, 0x38a7407f, 0xc9817b09,
+0xf307556c, 0x7f818181, 0x0281817f, 0x3fce810c, 0x18b47cd4, 0x81e2a53c, 0xe359840f, 0xe27f81ad,
+0xa1665081, 0x7ae062b6, 0xe0b27f35, 0xcd376e73, 0xd9a6d373, 0x817ffe7f, 0x02810946, 0x06498116,
+0x9b7fbb1b, 0x8d2b812a, 0xff14f781, 0x937de081, 0xb77ff44b, 0x4b2732c7, 0x0720bd96, 0x9e647f13,
+0xb831d474, 0x811d8183, 0xa5db837f, 0x8aa1b04a, 0xd4377cfd, 0x7f814241, 0xee8fec39, 0xcc81d881,
+0x2e29d770, 0x7ff76366, 0x7fbd363b, 0x74bbd13e, 0x2e817192, 0x9f6b81db, 0x44913bb3, 0x327f0de1,
+0x2d7f8881, 0x54f2afaa, 0x107f513c, 0x4c8191d1, 0x117fe67f, 0xffa21764, 0x2c931727, 0xd09ba693,
+0xf74e4882, 0x51ed8bc6, 0x3a23d683, 0x47437f70, 0x7fad8181, 0x9a610813, 0xa57ff47f, 0xbe1b5b9a,
+0xf4bf8c33, 0x43074944, 0xe4ef729b, 0x1e7165d6, 0x74e081c6, 0xe281810c, 0x2a4b81e4, 0x10ede221,
+0xc8375d7f, 0x81c07f81, 0x49cb7f83, 0x5f589c22, 0x276441a9, 0x7fe67f0b, 0x4d7f1d7f, 0x1872814a,
+0x05b6a577, 0x8140fa5d, 0xe47f9bc3, 0x44166064, 0x73896729, 0xb5c0867f, 0x247f445f, 0xccc92994,
+0x29611b37, 0x27531258, 0xeac27f9c, 0xd43f4e7f, 0xc27f170f, 0x6d9bfc37, 0xfc819181, 0x077f598a,
+0xe0c5d398, 0x7f23182f, 0xed171743, 0x20bff85d, 0xb0d0be7f, 0xb8938149, 0x45017f32, 0xcf2cc65d,
+0xdf7fc481, 0x7f380777, 0x81b8f0dc, 0xf6696596, 0xff007f29, 0x896e1abf, 0xfaac2d81, 0x5bc357ba,
+0x6a397f2e, 0xbfaeb45a, 0xd64e2b7f, 0xe49b4587, 0x565c6c51, 0x7f206a7f, 0xc381540b, 0xfc3d7f73,
+0xd4ec9f39, 0x887b7f27, 0xe3c1e07f, 0xb721523e, 0x0310819f, 0xc0c793ce, 0x387da141, 0x814f61ac,
+0xd1347fbe, 0x19244c1f, 0x8d3d58f9, 0x813a7fc9, 0xfae27f54, 0x7f39f481, 0xe37f818d, 0x034632d9,
+0x5b06c07f, 0x65ab8b36, 0x127f34b5, 0x18a681ad, 0x73510e20, 0x2f2ffa85, 0x6814ca9e, 0x5b7f7ead,
+0x08da93da, 0xc826da54, 0xc1686fd2, 0xb6f00fbc, 0x28bb5dbb, 0x7fe5297a, 0xb5ed8181, 0xccd9067f,
+0x177f1561, 0x71b41a19, 0xd9817f7f, 0x505b50c5, 0x309dc978, 0xb97f4f81, 0x4e81c219, 0x2d81d04a,
+0xdf3d5fa1, 0xfc6e5c30, 0xf7869481, 0xfc81e47f, 0x67b5817f, 0x7f72577f, 0x2c938136, 0xd576ad7f,
+0x63beb36f, 0x7fb3817f, 0xce56ca81, 0xd801e58d, 0x425f2522, 0x8a25817a, 0xdc7673c9, 0xd7b57fca,
+0x927fbe2a, 0x149b9881, 0x9ad781a9, 0x214b9d4d, 0x2dae1287, 0xfa772ca4, 0x3b7fdd35, 0xf59e4174,
+0xad3a28f5, 0x8144698d, 0x1ca792df, 0xdb7c7fd1, 0xe96d497f, 0x567fa7d9, 0x489b70cb, 0x3442de7f,
+0xa2554c37, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x4dc76c95, 0x29b78ec8, 0x3d927f7f, 0x307f93c2, 0x8181da7f, 0x99f741df, 0x6e1d417f, 0x1bbda834,
+0x954b5a9f, 0xc6817f07, 0x7fc01005, 0x3b5a81e4, 0x73cd7f5b, 0x7f817f3c, 0x8e7f812b, 0x59d48a03,
+0x982475ef, 0x65a1c068, 0x400cc79b, 0x81f231fe, 0x840329e0, 0x1f6054eb, 0xf8813d3a, 0x7f4a9296,
+0xbff677c5, 0x7f3c6f0c, 0x7f2890cd, 0xe0aaaad6, 0x81ae9428, 0x7f8117f1, 0x7f097f88, 0x7f27cfcc,
+0xca67205e, 0x815f7f37, 0x7f0ac07f, 0x717f95d2, 0x7f9232a7, 0x2bb803d4, 0x3c12c7e7, 0x937c81ea,
+0x7f1cdd3b, 0x0622b6c0, 0x62d71247, 0x811cb00b, 0xaef9e981, 0x0f818ff5, 0x740e6f53, 0x30616410,
+0x81fed3e0, 0x49167f3a, 0x4577315b, 0xe49130fa, 0x817c7f23, 0x7ffef7ec, 0x4fb47f17, 0xb365b1f8,
+0x81a09c38, 0x7f818134, 0x9568e717, 0x4ead1921, 0x8ebd9806, 0x7f911cf8, 0x8c7f5efc, 0xf29114a8,
+0x90bc6ae9, 0x0b5f26c1, 0x81bc9281, 0xf0fb5532, 0xc89ab77f, 0x7ec0b9d4, 0xf00bdcf7, 0x7f7f7a24,
+0x097ff51e, 0x64d62dfc, 0x7f7f819e, 0x34c05cc3, 0xa2957f19, 0x81101e05, 0x7fd68181, 0x1dff81af,
+0x7f81dc24, 0x7b3c6769, 0x7ac490dc, 0x814032c5, 0x9d81747f, 0x7fb46342, 0x72607faa, 0xd40c8161,
+0xa5ab574f, 0xf0838bba, 0x33fd7f47, 0x289f81be, 0x817f480f, 0x4bfa552d, 0x8ca1d5d5, 0x817f492b,
+0x418125e0, 0xe45d5af0, 0x811b1751, 0xe04d81f8, 0x7ff2917f, 0x65811a53, 0xe65da37f, 0xbafdd439,
+0x53818189, 0x752c7ebb, 0xc301567f, 0xb0816f27, 0x708166db, 0xc0b57f49, 0x3a818169, 0x4f16189c,
+0x13d6e83b, 0xd258a20d, 0x7fadbdb2, 0x7f93560d, 0x81fd5399, 0x6014dab2, 0x9cf45f1b, 0x107f71d5,
+0x352e8109, 0x5a5d6efa, 0xb458ef47, 0xb4a96098, 0x7ab91c37, 0x81bd762e, 0x816cb0d7, 0x3f9819d4,
+0x8113b97f, 0x7f09fa33, 0x9e7ffa99, 0xe98181ce, 0x4ffb3064, 0x7f0681ea, 0x81ef06ad, 0x385abdf5,
+0x1414457f, 0x18dabc5a, 0xc27e0d7f, 0xd87f8115, 0x703f7fcb, 0x300b7ff1, 0xb081f55d, 0x024d78f8,
+0x72949a16, 0x90603c38, 0x7fba6fd4, 0x4820e44f, 0xd57f81af, 0x9c7f7ef9, 0x61c6b27f, 0x81b6141f,
+0x7c52514a, 0x5f817f78, 0x668119a7, 0xe441aa7f, 0x53819553, 0x7f721521, 0xbd7f7f17, 0x593081de,
+0x8b252de8, 0x7f7f81c1, 0xaca9436e, 0xb5e0b104, 0x81e49d81, 0x75b48102, 0x5c278118, 0x9f6c36c9,
+0x509481fa, 0x53d1e640, 0x52108181, 0xeb7f7fff, 0xde417381, 0xa781cb33, 0x4fab55f4, 0x3e7d75f1,
+0xf17f0c1a, 0xe8e1817f, 0xcf1f7f81, 0x96d8ba40, 0x1318fc72, 0xd7ae3d1d, 0xf7e88126, 0x32bfe432,
+0x453f694b, 0x7f7fbab6, 0xeae7de30, 0x3d81d7d1, 0x438d9cc7, 0x387f4a05, 0x7f46ab81, 0x635bdf10,
+0xc281ae24, 0xc5c67fc4, 0x81acb53d, 0xba4f4d04, 0x424f72cc, 0xbf7faa1f, 0x55de1de8, 0x81429a1d,
+0xdec94147, 0xff007f42, 0x3fa74821, 0x0cb74e9c, 0xff81627e, 0x6343810f, 0xf7393529, 0x7f44ad81,
+0x7f811f39, 0x81e981a0, 0x8c8c4421, 0xc4819190, 0x81816881, 0x7f7fd234, 0x3688c16c, 0x9c34b357,
+0x6046e3f6, 0x86123bdc, 0xbd45957f, 0xe6cd777f, 0xe0951ce7, 0x9b7f63a6, 0x817f29c1, 0x7f5a81ca,
+0xde7ffcbe, 0x812c3207, 0xa099537b, 0x2a2f81d0, 0x16817f9a, 0xbb81817c, 0x7f81e538, 0x957a4200,
+0x81753bab, 0xaf63a506, 0x3081691c, 0xb0a47f2c, 0x0f157feb, 0x8e4330fe, 0x635b8189, 0x7f81ee34,
+0x7f40caae, 0xbce88e05, 0xabb52199, 0xd2ba102f, 0x7f7f8173, 0x810b32ab, 0x2e222781, 0x7f819951,
+0xfbc73dca, 0x5d81d181, 0x7fb09d81, 0x7faa3098, 0x7e81435b, 0x61e995d6, 0x7f7974f3, 0x7fef81f9,
+0x402faba7, 0x7a647f3c, 0x815c6826, 0xba2b2ffe, 0x7f095b7f, 0x7f9236b9, 0x9953636b, 0x344c64d2,
+0xd784acc0, 0x7f818426, 0x61ab43f8, 0xd5813c70, 0x7f817f81, 0xc9867fa8, 0x6f4b4181, 0x3881b1df,
+0x69813f27, 0x81d0780c, 0x17c84a36, 0xbf908ccc, 0x7f5e812b, 0x317f7fea, 0x7f817881, 0xf731c537,
+0x7fb221e7, 0xbae09bf7, 0xcc5d947f, 0xcfc13926, 0x6e0db67f, 0xdf17be28, 0xcaa4ea2f, 0x9870810f,
+0x357f701d, 0xa281815d, 0x91497468, 0x5fbcbeb0, 0x7fd54d81, 0x7d5e91f3, 0x8d6555f9, 0x35d416e3,
+0x9a7f8c11, 0xd875779b, 0x6b7c6681, 0x24f77f50, 0x288bd781, 0x7fad2b50, 0x637f1a23, 0x527f2ea7,
+0x277f7fc3, 0x819c13cb, 0xe1bb65f1, 0x48151c1b, 0x8e7fd27f, 0x7f7065ac, 0xfe0bb14d, 0x588e7f0c,
+0x819d7f34, 0x81c455a5, 0x4f6b7fae, 0x7fb56506, 0x7fcfd5a2, 0x3e6981dd, 0xcc814569, 0xc5fb811a,
+0xc0e07fbc, 0x817f8153, 0xac356315, 0xc94db6d8, 0x7f88e57f, 0x81e57fd0, 0x7f1f6c0f, 0x78d581e1,
+0x7f2137f6, 0x1c57815a, 0x627f55c0, 0x69e4dbcb, 0xa68181c3, 0xb9907fea, 0x55897fa0, 0x7f54a91d,
+0x3e7bb314, 0x7f167f5f, 0x75cc8181, 0x177f2fd0, 0x6d39f7e9, 0x7f817fd3, 0x7f6eb0ea, 0x817fc7ad,
+0xae5b5b04, 0x86cd281f, 0x3528fe7f, 0x87217fff, 0x87860479, 0x8b7f4510, 0x7faa816c, 0xb9d62c33,
+0xdd1c6ccc, 0xb48104fd, 0xbf508f81, 0x34994944, 0x8181b843, 0x74e47f47, 0xc6baf38e, 0x624b06cc,
+0xfdadfaeb, 0x948189ac, 0x7f7f992d, 0x813edf00, 0x81c3587f, 0x5eb2819f, 0xcee54cef, 0x277f38d9,
+0x8a187fb6, 0x9736ed05, 0xed70487f, 0x4f307fa9, 0x81ba975e, 0x81dd81ed, 0xd0da7f88, 0xf24881cc,
+0x12e656d0, 0x7f9b6a1f, 0xcf7fcf7f, 0x78787ebd, 0x7f8319f2, 0x7c7fe9ed, 0x29b381ae, 0xfa4f81cb,
+0x13cc81e2, 0x9a2aa0a8, 0x817f8112, 0xfda22318, 0x7f65e85a, 0x727f6812, 0x7f814b0b, 0xcfe2bcd5,
+0x6b816ce3, 0xb2965ab7, 0x819981bf, 0x73799635, 0x82854b71, 0xbc3e8132, 0x91c714a2, 0x81817f2e,
+0x2cc55af1, 0xb87fb038, 0x7f7f1718, 0x02ba14fe, 0x5e348128, 0x817ff97f, 0x81d03daa, 0xde37813b,
+0x443781c0, 0x0e4e32e2, 0x85a7ad81, 0xba276c16, 0xb61ed9c6, 0x81ca27d3, 0x7f762e7f, 0x4181d581,
+0x7f7f5508, 0x6eb1b250, 0x5ad47f4a, 0x7fd56756, 0xbc817f81, 0xd481a9ba, 0xf8a74db3, 0x7d1aae25,
+0x81397f36, 0x7f62a402, 0xab3b3081, 0x4c45c301, 0x3eb57f88, 0x6d2e7fdd, 0xeb1ac681, 0x813881c0,
+0x7fd127b4, 0x67e57f90, 0x4fcb6d3a, 0xc566afe7, 0xc58bdb7f, 0xe0486a7a, 0x363f8181, 0x7fdd8191,
+0x67149cc2, 0xfe7fcf00, 0x7feeb9dc, 0xccabbd95, 0x7fab347f, 0x98eda0d8, 0x7faf81a3, 0x3b8c7f0a,
+0x1c387fa7, 0x7f055ed9, 0x567fbd7f, 0x4d7f7244, 0xbb8175af, 0xef7f7f5f, 0xa9a58119, 0xada9eec7,
+0x592da3bd, 0xb5a98177, 0xe17f813e, 0x94816af7, 0x69ec7fc5, 0x7f29dd4a, 0x9481c981, 0x5d3198da,
+0xf84e81bb, 0x41817f7c, 0x7fb31b60, 0x7f7f5e03, 0xea81c490, 0x7681571c, 0x9b54b581, 0x812d993b,
+0x7fefd381, 0x7f907fe3, 0x7f81a862, 0x758181bc, 0x46d6507f, 0xae81a50a, 0xd1562a1d, 0x3dcb58d2,
+0x489e40fd, 0x7f8fa98a, 0xb07f7f81, 0x238b7b40, 0x49686384, 0xca817f4f, 0x607f7fd7, 0x3a0d81ab,
+0xb0fa42e3, 0x7f81563d, 0x829a817f, 0x51d48167, 0xcc817781, 0xd54f5638, 0x7fee1218, 0x81a49e22,
+0x0081ec2f, 0x5f5eecf5, 0x6bbc9ce7, 0xa28138d6, 0x86811081, 0x7f0283cf, 0xfff67fb7, 0x81c2814a,
+0xc7817f52, 0x85818146, 0x8781a77f, 0x8181e9f6, 0x4731f881, 0xf51a35d8, 0x236931b2, 0x6eaefadb,
+0x7f81c61c, 0x947f3d7f, 0xbcf43b52, 0xd5814849, 0x17b6e07f, 0x7f6a81b6, 0x817f8163, 0x817f595f,
+0x7fa5ae33, 0x2b63a90a, 0x77627e81, 0x81816660, 0xae7f6281, 0x26c6dedd, 0x757ff9c4, 0x7f7fce30,
+0xab9d7800, 0x68fc444b, 0x3d7ff681, 0x93264a1d, 0x81361db5, 0x817fb6d3, 0x1681136f, 0xc5655027,
+0x792781e2, 0xeaada9c7, 0x34d1817f, 0x81687fc6, 0xa88d451a, 0xdce97f0d, 0x443935cd, 0x810a68b9,
+0x73ef4023, 0x66372979, 0x9a31076e, 0x81813dee, 0x56b11a7f, 0xc76a81da, 0xe0e48181, 0x6681b8b7,
+0xa99858ec, 0x7fb38de5, 0x7f6f817f, 0x92168381, 0x53819b02, 0xc3c27f2d, 0x5299d77f, 0x81e47f60,
+0x687ffbc6, 0x7f5f9df9, 0x0ab4c09d, 0x44856927, 0x5e63405f, 0x7f9fe864, 0x8c884d25, 0x794dd01f,
+0x7f81fb68, 0x31bed5f5, 0x3e658638, 0x3e7f8151, 0x7f7ba8e4, 0x7f304a8b, 0x37c18157, 0x7fb2c6fe,
+0x7fa39bef, 0xa37ff9a1, 0x29983fc2, 0x777facc9, 0x547ff37b, 0xe6815b17, 0xec5a457f, 0xacade303,
+0x7f2603dc, 0x697fcd23, 0x7f7fd042, 0x4a81a54d, 0xd481bf87, 0x7f4e7f0c, 0x0d5c9d05, 0x26ca3c2c,
+0x4f817fe3, 0xc9368b0f, 0xaddb8181, 0xc210e075, 0x248f7f81, 0x697f7f11, 0x817f2f81, 0xef697ff1,
+0xd98181b9, 0x810a4f50, 0xbb9e045a, 0x8ea3771d, 0x787f6931, 0xfbb9812d, 0xb778f981, 0x7f354b27,
+0xfc813658, 0x25818137, 0x7f3402a1, 0x27eabd01, 0x81c18181, 0xfd7fa22c, 0x9784817f, 0x7fa57fb3,
+0xd881f3ce, 0x887f60bf, 0xdc816b0c, 0x3890b818, 0xc37fa281, 0x8f4681f5, 0xb07fb08b, 0x82ad24d0,
+0xc189ab02, 0xe3fddb8f, 0x7f744610, 0x435781b0, 0x8104f653, 0x41bb81be, 0x9a4c717f, 0xf9d4c1e4,
+0xbdc36404, 0x8ff9818a, 0x54d3ab9c, 0x24aec8ef, 0x81ac5bc8, 0x81908100, 0x74f05a0f, 0x0c5b7f2d,
+0x5279a3e3, 0x2d8169b9, 0x7fdc4897, 0x7f5f89bb, 0x9f457581, 0xde817fd7, 0x59813d7f, 0x67817fe7,
+0x7f817fd5, 0x7f5978ca, 0x23ab813a, 0x70819ce8, 0x41575433, 0xb17fa99e, 0x697f7f7f, 0x60aeb15a,
+0x7fa5a9df, 0x39818181, 0x818ea205, 0xbd819fb2, 0x7f0fa491, 0x814981d8, 0xb9c186e4, 0x817f29e5,
+0x81afcd17, 0x842f81ce, 0x058b8e1d, 0xea3da29e, 0x379f5ab7, 0x223c84c9, 0x93bcd8bc, 0xc895baea,
+0x6b7d3cc9, 0x7f2b8152, 0x7feccb81, 0x7f71634c, 0x810f7f29, 0x89c14aff, 0xc0ce05d7, 0x7aed49e1,
+0x817f4d0c, 0xeeaa0afb, 0xd7817f81, 0x6681d76a, 0xa37f4881, 0x38708103, 0x7f8181cb, 0x0a8f6639,
+0x8581aec3, 0xe82836d2, 0xda7f4781, 0x40d67ff3, 0xcc335f7f, 0xce207f44, 0xff9181f8, 0xbae52614,
+0xfccdf700, 0x9dc19f54, 0x5d7faefc, 0x5bcc2357, 0x817f7fb1, 0x6f5a9dd7, 0x81af5633, 0x810a7f59,
+0x551c8a18, 0x4b816452, 0xe981d940, 0x81d175f6, 0xee7f5746, 0x276f51b7, 0x16ae817e, 0x652063ba,
+0xd84e5e44, 0x7f385f2a, 0xa2e1b28f, 0x7f817fd2, 0xd8477f34, 0x508f31fc, 0x7e357fc7, 0x7fa07f7f,
+0x7f6d7f52, 0x7f717038, 0x7f819c3a, 0x2f973937, 0x71ac7d7f, 0x790950c2, 0x9aa97f81, 0x7f427ffe,
+0xf3f974a1, 0x8107812c, 0x817fb77f, 0x4d458151, 0xc93d2395, 0xb497d049, 0x4b955c87, 0x047eaef1,
+0xcc6c07cc, 0x5eff94ad, 0x3bed1246, 0x74d8c531, 0x815afc81, 0xaccf6eca, 0xbe4e3f64, 0x079b37b9,
+0xa0898136, 0xfe8a81b9, 0xb7df45fc, 0x7f7f7157, 0x725581a3, 0x7f0c56ec, 0xe6430781, 0x4356def3,
+0x54ca7fc7, 0x234f3eee, 0x7f270367, 0x704981c1, 0xfe623836, 0x816d2725, 0x7b9d9e81, 0x3b49d3ae,
+0xd2925440, 0x819a7fa5, 0xb025c9a5, 0xbbd77fc1, 0x81737f81, 0xbcb891ae, 0x442ab466, 0x812e41cd,
+0xbdb081a8, 0x8e7f5c2d, 0x8458dfb7, 0xd77f8130, 0x9bcbbc47, 0x783a7f5f, 0x27c4d502, 0xadf8cb31,
+0xa51e9baa, 0x814d812f, 0x7f1a7f8c, 0x1874f4be, 0x4ac57f81, 0xc7b67f37, 0xc0817ff9, 0x8c81e1ae,
+0x6f7f9331, 0xa17f7f9f, 0x7bec5242, 0x81b79554, 0xa27f7f7f, 0x181da812, 0x52e681f5, 0x5c3781fb,
+0x895981ae, 0x7f7fa003, 0x9555817f, 0x32391fdf, 0x0c7fff6a, 0xb681981d, 0x1b93a683, 0x7fc3d495,
+0x83f5810b, 0x854399a0, 0x997fd57f, 0xe87f6929, 0x7fbafb81, 0x7fe201e3, 0x7f7234b3, 0xb6889ebb,
+0x8ea7cdcf, 0xd27fab96, 0x9a562c7f, 0x6c7f7fd8, 0x2277467f, 0xb3108ed9, 0x818d0171, 0x81bc477f,
+0x650719f9, 0xba7fe501, 0x7b5796ca, 0x3fc581eb, 0x9a90469b, 0x7f041112, 0x527f7947, 0x8d3d4657,
+0x7f627fdd, 0x64053a56, 0x817739c6, 0x812268ee, 0x69ed9b7f, 0x3d7f7f1a, 0x7f2264f4, 0xb76c55f2,
+0xd06981fa, 0xa72359d6, 0x3708812f, 0x7f7a4c29, 0x467a227f, 0x685eb4c5, 0xeeeb81c1, 0x2999b5e3,
+0x7f7fa0be, 0x73586e92, 0xc7817f0a, 0xc32e7f4f, 0x819b9046, 0x8179acee, 0x29b1a517, 0x557f0ef9,
+0x8116589d, 0x557f26f3, 0x861970dd, 0xcb817fef, 0x9bb6ba72, 0xaee4ddfa, 0xd17f81c9, 0x257f76bf,
+0xb04b4df4, 0x8f7f8124, 0x818181fc, 0x4fcc8f06, 0x2f7cc181, 0x4900141a, 0xf0709c16, 0x6865b5fd,
+0xd9ab9128, 0xa2321900, 0xa1a6de7f, 0x58e47f23, 0x54ac4a45, 0x1af1e618, 0xed633c24, 0xde7f7ff7,
+0xd48139b1, 0x5a640dcf, 0x63d9de7f, 0x81669358, 0x4f4571bb, 0x7f7fa692, 0x7debaf85, 0x9d7f7f10,
+0xd9c34e9a, 0x708981e8, 0xfc838ac6, 0x430bf6b2, 0x81a1a4ee, 0x7f8181ad, 0x35e98d7b, 0x4e3681de,
+0x7f7256e9, 0x7fa3b47f, 0x5a813e7f, 0x8128aa15, 0xff42357c, 0x581e98a3, 0x81534281, 0xe58196fb,
+0x11b90c6b, 0x7f81e5e5, 0x7473f57f, 0xa9475b2c, 0x24d77fa7, 0xa27f591e, 0x7fba81a5, 0xc9f19310,
+0x3c64d05f, 0x86aca9f0, 0x69b57f01, 0xbb747fb6, 0xdd81e923, 0xbe814a26, 0xe6811b22, 0x7f817fdf,
+0x7f81e46a, 0x647f8170, 0xf2812d9b, 0x7f765fa5, 0x812dfe0e, 0x2584ed72, 0x811a7f7f, 0x417f7fee,
+0x81d28138, 0x7f8e7fff, 0x9c7e28d0, 0xa71eb5f5, 0x65993e7c, 0x927ff0e8, 0x7f5cd4ce, 0x2886b35e,
+0x7f81d3bf, 0xc2d1441e, 0x2f2cbadd, 0x8c9c4cb4, 0x34dba16b, 0xaa37c5c8, 0x5881ec6f, 0xfc7f64a4,
+0x81bb8128, 0x7395489a, 0x7f647f7f, 0x44ef7f9a, 0xc3b4d6a1, 0x8693af02, 0x87fab099, 0x7f7f2f05,
+0x0191d5f8, 0x0b4281cb, 0x615b990b, 0x554b7f4c, 0x7f7f66a2, 0x817f793b, 0x5681aa97, 0x21aea0bc,
+0x81925b0b, 0x81c69839, 0xb115814b, 0x9e81d8b0, 0xc70c6f7f, 0x8f14de16, 0x3f81b4bc, 0xaa0c25dd,
+0x81f8346b, 0x6981226b, 0x81b1817f, 0x7f2081e4, 0xa2848117, 0xe4cbcc32, 0x817081d5, 0x817dbf75,
+0x157f2614, 0x5a0477d6, 0x8b818105, 0x9e7f34d4, 0x48da3235, 0x397ff6d2, 0xa02f7092, 0x817f8b13,
+0x307b35ca, 0x783c7fe6, 0xa2c29081, 0x555b8101, 0xf764ee86, 0x463a8149, 0x577f837e, 0xb1948151,
+0xbd2f86f5, 0x6e5fc338, 0x7f67a373, 0x55817003, 0xa1e17f77, 0x8a817fff, 0x49365e44, 0x817f8933,
+0x209ba8a9, 0x7f311515, 0x7f519140, 0xa9549352, 0xbd817f8a, 0xafc4a005, 0x620d407f, 0x88302fd2,
+0x5cf481f2, 0xbd7fff40, 0x7f7f9cfb, 0x91ae81fc, 0x73f15c81, 0x93814581, 0xc7e8818c, 0xc481a1fa,
+0x99818124, 0x7fecdbf3, 0x207d8d39, 0x64818328, 0x7f9dbf5d, 0x2181f9c2, 0x817f7f8c, 0x367c1801,
+0x2a019011, 0x815f5d39, 0x81817fb8, 0x7f22815e, 0xb3ceca8f, 0xa6560501, 0xfb548181, 0x2b7ffe18,
+0x5394bb1c, 0x7f9981d9, 0x7f7fce32, 0x815ba6e4, 0xabd0d732, 0x7f5c81fa, 0x7f369f77, 0xa42b7f51,
+0x900db9cd, 0x9993bde1, 0x7fc8819a, 0x116f9310, 0x8ef767b0, 0x7a817f02, 0x56819b81, 0x29aee511,
+0x7f2b8d3a, 0x818a442a, 0x555c3ff5, 0x1d6c4929, 0x7ea9697f, 0x780b8fa6, 0x097fa426, 0x9b7f89d9,
+0x165081de, 0x45a184c0, 0x405c7fc7, 0x6bbcd6d3, 0x7b81837f, 0x33867f12, 0x878f7f62, 0xc6cf1002,
+0xad819f7f, 0x3df9422a, 0x77ca9e81, 0x684f7fca, 0x30847f81, 0x81817fda, 0xedc6a081, 0x682c00eb,
+0xca767fdd, 0x1f7fb0e3, 0x377f8a7f, 0x5e85d200, 0xb9237f1f, 0xf2817f2d, 0x0dd88132, 0x81cc0037,
+0x739b39bb, 0xb47fb83c, 0xdf7f8181, 0x7f54f610, 0xbc9e3f06, 0x5762b272, 0x81ebc628, 0x7f9845b9,
+0x7d901f63, 0x81ce7f36, 0x0ebd8e7d, 0x9a81d963, 0x644c3f81, 0x227fbdeb, 0x8e2d5f81, 0x54efc59a,
+0x94ed5511, 0x817f944b, 0x38393d81, 0x592f7ad2, 0x75814881, 0x63275d7c, 0x4a65de10, 0xeb818ff6,
+0x70f93fc1, 0xbbe83610, 0x7d94beba, 0xfd077f2f, 0x7f818181, 0xbb7f47d1, 0x4c8f7f6d, 0x587fa2fb,
+0xbd817f02, 0xae7f8123, 0x4fb981ac, 0x3fd2c446, 0x817f7fa1, 0xb28d81ce, 0x7f813fbf, 0x5a8181a8,
+0x2f6355c9, 0x75624fb5, 0x811842d0, 0x70a38146, 0xea52aef5, 0x7fffa3f0, 0x8f7fdcb0, 0xe31d81e5,
+0x7fe15a51, 0x21894817, 0x9c810f41, 0xe9428145, 0x7f819edc, 0x7feb1761, 0x81368181, 0x2c71f15e,
+0x26813c54, 0xf09c69aa, 0xd17751da, 0x25a1c23c, 0x7f812281, 0x4317b30f, 0x66908149, 0x81869b95,
+0x062874c1, 0x843481a4, 0x81743c89, 0x813e9cae, 0xd8397fd1, 0x7b495f55, 0x7f7f7f53, 0xc0b419e7,
+0xacf11d1b, 0x90a51003, 0x9efa5bb6, 0x77b8989f, 0x8b1ea17f, 0xc46537c3, 0xcca93d93, 0xa955d1db,
+0xc42743ed, 0x7f8a6442, 0x79ab8152, 0xfea48ff7, 0xfbbb819c, 0xa1be81ed, 0xa481da42, 0x477f7fd0,
+0xcc1acdfb, 0x767f1533, 0x99cdda46, 0xfb9c8109, 0x7f757f7f, 0x747f88d6, 0xb5404df1, 0x8b69b739,
+0xc762670a, 0x8125bded, 0x6481a452, 0x943e5aef, 0x7fe3557f, 0x8181bfc5, 0xb14d907f, 0x7f747f9c,
+0x54b4ff28, 0xe19d7fc2, 0x7f25887f, 0x7f6cc0b5, 0x34653ba1, 0xacd70015, 0x7901cc3b, 0xb081815e,
+0x812781fd, 0x871cd81d, 0xd1818494, 0xa97fc1ed, 0x81817f86, 0x9f3cf7da, 0x9857bb81, 0x9d1661d1,
+0x167f5814, 0x037fd0e4, 0x7f337f7f, 0x7fd40904, 0x376a4a69, 0x7f77a308, 0x73b61d36, 0xb4a318cc,
+0x7f9cc3e7, 0xe0d55532, 0xab58707f, 0x9c467f07, 0x8c7f2581, 0x60155a41, 0x7f3fd21d, 0x7f7f59a3,
+0x38176d64, 0xf77fd7a6, 0x0ed2ae81, 0x7f81cdec, 0x3c0f81a2, 0x747d9be6, 0x818c5f83, 0x432e7cfb,
+0x4a44b96b, 0xc8748423, 0x6b818181, 0xe34914d7, 0x980b64bb, 0x7fbe165f, 0x7f104bbd, 0x5c7f9d02,
+0x7f307fcc, 0x8399c1a3, 0x7233316c, 0x92aae7a6, 0x81deda79, 0x812805f0, 0x7f566985, 0xdeffbea8,
+0x2bbf427f, 0x7f819e05, 0x90811687, 0x817f81a0, 0xb581c481, 0xa05cfdd4, 0xe4983e52, 0x813e81e7,
+0x2b5ba42c, 0xf75aaf0c, 0x4bbc8181, 0x817fa502, 0x1a7f2d7f, 0xe97f0700, 0x724a5029, 0xe3700308,
+0xae7fb93c, 0x7f9581ba, 0x819d7f3d, 0x2b2ef875, 0x341c52ae, 0x21b23dfc, 0x6a82a2e1, 0xaa81ecc7,
+0xcf817ff6, 0x7fa17fb5, 0x1fc21a81, 0x817f895d, 0x54973cd6, 0x81a8c919, 0x9f4c7f38, 0x89817fd1,
+0x325d7fea, 0x959581c9, 0x711638c8, 0x07bb81c4, 0x1bf0818c, 0x346b81aa, 0x5d55817f, 0x7f7f8192,
+0x3b7f81d5, 0xe783f367, 0x863038b6, 0x7f53589b, 0x7f4de47f, 0x128165ac, 0x7fa6ccfa, 0xc19f8132,
+0xc3b3483e, 0xa63d628e, 0x2d707fd1, 0xd93a1319, 0x9197277f, 0xd77f0fbf, 0x8156da7f, 0x88819a98,
+0x3eb240f2, 0x81007fbe, 0x067fe653, 0xd3aa8150, 0xa625819b, 0x767ab13b, 0x937f817b, 0xd08181e1,
+0xa47f81b9, 0x3481bd4a, 0x65507fa7, 0xb79181d1, 0xbf1d7d3e, 0xb2818178, 0x8f329d1c, 0x2081b481,
+0x7b84a853, 0x7b679ce3, 0x9ba49881, 0x695ab122, 0x23be9081, 0xd7322a4a, 0x21db3fad, 0x81fc8145,
+0x84a1bad2, 0x9f307bb8, 0x81815581, 0xb84f1450, 0x6d3acdb7, 0xfd64811d, 0x7f8132e6, 0xd7458fee,
+0x81c54610, 0x7f7f73d1, 0x81a5c3bf, 0xe15f7fa0, 0x3c7f517f, 0x047f7fd0, 0x261e438d, 0xb3c47f34,
+0x5c81a1f6, 0xa2c62f5a, 0xe67f9255, 0x4df92530, 0x58877578, 0x817fdbd6, 0x9381d867, 0xb3815eec,
+0x3d8b8ad4, 0x814aab55, 0xa5477f7b, 0xed7f98d4, 0xae7f3681, 0x3b938138, 0x58e37f90, 0x7356b00c,
+0x754181fd, 0x3181503e, 0xc58dc451, 0x818b9cbe, 0x747fcbc4, 0x0918d1f1, 0x5b5ae00e, 0x761d6116,
+0x535ba62c, 0x8c0f22b4, 0xc98fb9ad, 0xad7f6d1d, 0x4f7fec7f, 0x1b437f35, 0x9004b258, 0x787c8d15,
+0xd04b81e6, 0x703d10f0, 0x7f7f8b89, 0x1674b61c, 0x9789ac81, 0xac6c7f58, 0x0e81ac48, 0x0881812d,
+0x117f7cc2, 0xa6bd8145, 0x59817f7f, 0x89cbb4fb, 0x697f9a81, 0x813e5281, 0xf57f4898, 0xee994b1d,
+0x60228cc5, 0x4c341db8, 0x7f6e7f63, 0x107f8151, 0x14397f55, 0x81a951d6, 0xb762ed40, 0x81c39dd6,
+0x546a0438, 0x7f8e88d7, 0x81810e7f, 0x7f7f654c, 0x3b412da8, 0x8aabcfe0, 0x4b83444b, 0x65bea3ee,
+0x507fb43f, 0x16c3c7c5, 0xe322a2d9, 0xfd5a0fd9, 0xc757577f, 0x6cd0b9af, 0xc6078100, 0x3256b728,
+0xc47fdc2f, 0x81dc4bb9, 0xd8d02073, 0xc38671f2, 0xbb9104b4, 0x7fb281b6, 0xcb817f81, 0x819f44af,
+0x29f781bc, 0xdfc231b9, 0x7fae7f43, 0x575b7f79, 0xf4c4414e, 0xe807d15c, 0xd08181ae, 0x8e81cd9f,
+0x942472c9, 0x816362dc, 0x9cba9281, 0xdc6fce74, 0x2b7f7f35, 0x37810c4f, 0xe8709e85, 0x5c7f984d,
+0x8153bc24, 0xbfe581bd, 0x9a7f9c84, 0x3be9e533, 0xb6938127, 0x82ca63d5, 0x08eeb19f, 0x59ebeb0f,
+0x4d7f14f7, 0x3c558f40, 0x62d26981, 0x8181f3a8, 0xe42585ea, 0x7f08817f, 0xaf8181a0, 0x0c5d16cd,
+0xa4dfee3d, 0x3a8182fa, 0x6381883a, 0x7fe9d01c, 0x5e659f90, 0x7f7f812f, 0x4a9d8179, 0xb1e4acf3,
+0x1b8189f9, 0xd983a4d8, 0x817f81df, 0xa2cf1f55, 0x817f337f, 0x7fa3564e, 0x14ae7c44, 0x4ca3859d,
+0x81b37fa2, 0xf8a0b7b1, 0x7f79c0cc, 0x7f3010f6, 0xa5be8c16, 0x2420b129, 0x7f7898f1, 0x7e818139,
+0x7fc919eb, 0x61819a67, 0x88928b15, 0x7eade0d3, 0x4e7fc323, 0x8deb5fe6, 0x7f3f7f9c, 0x81817fbf,
+0x989026db, 0xef81c203, 0x81e4a1e1, 0x35939d41, 0xbbaae870, 0x3d217fca, 0xddd9a1ce, 0x7f7f81a3,
+0x5bf18122, 0x81c55a52, 0xc95c450c, 0x7f5a03e6, 0x65654a14, 0x75d401f6, 0xe0cb297f, 0x5f3c8132,
+0xf7a312d3, 0x81c6d3af, 0x978e8181, 0x1476539f, 0x502534be, 0xd2909112, 0x6ad663ad, 0x7f7fbbac,
+0x8b70da23, 0x4d78af31, 0x7f8159f5, 0x81bad147, 0x348151dd, 0x5e68eace, 0xc2737fa0, 0xf97fa32e,
+0x7e7f81de, 0xa68baddb, 0xbb39817f, 0x7f9bc454, 0x6d09c327, 0xc37f3c33, 0x0a865f7f, 0xba8281e1,
+0x1a3ff406, 0x652c3fd1, 0x94af367b, 0xb381d8cb, 0x4045cce5, 0x7f7fd613, 0x795f7f42, 0xb1818193,
+0x7f371d3c, 0xef816b41, 0x2ca91acc, 0x48b5aa83, 0xaae807de, 0x26813f13, 0x81817f2a, 0x6083604f,
+0xd29e81f6, 0x7fb218ca, 0x4aa50170, 0xc2d74a22, 0x4f4971a3, 0xe9dc5f10, 0x7fb8bedf, 0x1f93814a,
+0xa97f7f0e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0=
+0xb5bc6ac8, 0xf5373664, 0x1310345c, 0xd5bae4e7, 0x1fc9e83e, 0xebfdfded, 0x84bd86ab, 0xb7aabe00,
+0x60b44fea, 0xb9067464, 0x30325378, 0xa9195955, 0xf70c6e5c, 0x90922632, 0xc90b1cdb, 0xf2f5fb69,
+0x73056b63, 0x1a33bf3f, 0x17755b5c, 0xc58bff6d, 0x2f4390b2, 0x2869d508, 0xe7c7dfe8, 0x38552963,
+0x21da5367, 0x07282b9b, 0xa4767105, 0x1e294251, 0xe350a940, 0xb8a6aa27, 0xed12d778, 0xf10d9ece,
+0xab93527f, 0xcf2da7e7, 0x68f6d0b1, 0x811f4bca, 0x577b06b2, 0x3234f13e, 0x30bab7df, 0x8dc47655,
+0xbb843bed, 0x86da3aba, 0x30950c97, 0xdd096d7a, 0xa871fd6c, 0x8bee4e6b, 0x8fea30d0, 0x6c05b4d2,
+0xf3e144d3, 0xd24ebb1f, 0x065635e5, 0x8d3f2cf9, 0x536c6c6a, 0xfbb0a5d0, 0x3d707b42, 0xc44d5982,
+0xa5f4ad8f, 0xf32c0970, 0x1bccf1a6, 0x05916020, 0xa64fb176, 0x5ede6a35, 0xaf4966da, 0x9df5e0e7,
+0x75042abc, 0x9ef10481, 0x11ddcbc8, 0xa0f5518c, 0xd5c23418, 0x2393d558, 0xfbe7dfeb, 0xed1c64c2,
+0x86a36508, 0xde2dfb1e, 0xb8d0fef9, 0x24505232, 0xc894e71c, 0xbcc752a0, 0x40b74e83, 0x90d23c8c,
+0x728e4a61, 0x108f0b08, 0x66f522ee, 0xc258d851, 0x35a31c44, 0x11311b5b, 0xfd3d5be9, 0x5ae448ff,
+0x4f64994b, 0x5b8247a9, 0x4021114d, 0x2f0b6e82, 0x5eaa9828, 0x50ac71c0, 0xfb86ee52, 0x0dc1ac9b,
+0xbbd47645, 0x8f357115, 0x978ceea0, 0xd557db99, 0x99b30388, 0xfc9a8a1c, 0x0f75be1a, 0x50143e22,
+0x8840989b, 0x738ec50e, 0xe6b2783d, 0xf67899c8, 0x27ebed69, 0x6c415a16, 0x3a6cc2dc, 0xcd4e4e5d,
+0x6cb12b2e, 0xdb88d7c0, 0x79cd1582, 0xbc422413, 0xe72ad2f4, 0x8eaac30f, 0x0bd86747, 0x6d87f69d,
+0x15d62038, 0x4b375630, 0x0d51b859, 0x16db2cb2, 0xf210603a, 0x0abeb833, 0x55c694d0, 0xe57ca43b,
+0x0ba94428, 0x1398a406, 0xe47d3889, 0x5a20203d, 0x250d7a1a, 0xd930ffec, 0x03992e79, 0xf2759376,
+0x024ec121, 0x91fc3a2c, 0xb7e11cc5, 0x4ff7d459, 0xb8700134, 0xd6e61758, 0x4eba0a32, 0xb747e3ec,
+0x7073fad7, 0xded80f99, 0x331e2f1b, 0xfa1f1bed, 0x056424a2, 0x1d1d95e0, 0x550b9ec8, 0x51ee2a38,
+0x19525153, 0xd70c4cd5, 0x0d6cd7ad, 0xe44d1cf2, 0x30dfecda, 0xdacd7fe8, 0x7321d795, 0xddf48ef4,
+0xe271e6a4, 0x9c1feecb, 0x951fcd7b, 0x8acc5a03, 0x3fb83527, 0xe306de74, 0x7b9cd6ee, 0x8e140885,
+0xd4c91e8d, 0xe8c39733, 0x0f02f87f, 0xfb06b1b9, 0x0dc9349c, 0xf76bae8e, 0x4f642a07, 0x3d48a9aa,
+0xe3ea323a, 0xa1cd5c8a, 0x40aa0e70, 0x132042d3, 0xa9732f6c, 0xd15a00c4, 0x43d3b046, 0x9a51ebd4,
+0xc46ee0ed, 0xe2a2148b, 0xf5c478f0, 0x1fb01cf3, 0xf4f321ec, 0xd973811f, 0x11ad11b9, 0x5c67adda
+
+e =
+34560
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
index a866878..cfff56a 100644
--- a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
@@ -666,12 +666,15 @@ ext_scale =
 num_maps =
 0
 
+r =
+0
+
 code_block_mode =
 0
 
 op_flags =
 RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
-RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
 
 expected_status =
 OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
new file mode 100644
index 0000000..93792dd
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
@@ -0,0 +1,991 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..ab2deb6
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
@@ -0,0 +1,993 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+input1 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
new file mode 100644
index 0000000..781f8d5
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
@@ -0,0 +1,2449 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1,
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..937c23a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
@@ -0,0 +1,2451 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1
+
+input1 =
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
new file mode 100644
index 0000000..f0bbed1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429
+
+input1 =
+0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e, 0x6730b095,
+0x78f7c059, 0x99
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xde639c99, 0xea20a04f, 0xda872110, 0xde5b08e6,
+0x3739dabf, 0xdc015a9c, 0x7db088b6, 0xdb8e6f42, 0x6be6c1df, 0xf5297b75,
+0x13566521, 0x602b7d06, 0x9536c5c1, 0xb3b80104, 0xbf0519bb, 0x2a72e0f0,
+0xd9e89f7a, 0xcf3d85f5, 0xd3c3e827, 0x5537ab7b, 0x8b7b0d80, 0x43618aba,
+0xf4f10968, 0x52e765f0, 0x837af128, 0x75871cf8, 0x27e94bff, 0x99cddcee,
+0x1937f910, 0xd0
+
+e =
+1380
+
+k =
+456
+
+ncb =
+1440
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
new file mode 100644
index 0000000..23a1b10
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
@@ -0,0 +1,328 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x8384dda9, 0x694de7a8, 0x1d2604f8
+
+input1 =
+0x647b5b37, 0xb235179e, 0x9b72fa9f, 0x95f0dd27, 0xe3d0b584, 0xc0c5a4a3,
+0xa46c2ddb, 0x76b5124a, 0xe07273de, 0xd7dd4163, 0x9feb8c26, 0x82d47198,
+0x106bae47, 0xbfa90e78, 0x0f83ee80, 0x157ccf3a, 0xb32cf008, 0x86908ed7,
+0xfa83d272, 0x409b80d5, 0xbe0bdbc1, 0x77ff05bc, 0x2a4b347b, 0xad7ebf48,
+0xd21d50df, 0xe7ac97ba, 0x31f0e405, 0x5da21104, 0x0ec1f016, 0x2fb88576,
+0x0cc56f40, 0x83524baf, 0x27d6fbf6, 0xf9ab0208, 0xbe9080e9, 0x4d0f24a3,
+0x64e505fe, 0x617078a8, 0x7722646b, 0x6e688578, 0x09073a5f, 0xbc411a65,
+0x9c4c6052, 0xf1dd2823, 0x8f628ff7, 0x87376338, 0x61caff8a, 0x98483fdf,
+0x8e1d6e83, 0x659a5a20, 0x8aa88b06, 0x67418437, 0x40ed9259, 0xf8c46f3a,
+0x03421725, 0xabb9e9d8, 0xa66e5e0e, 0x6f55e795, 0xc3bfb8f1, 0x0cf82921,
+0x30daf099, 0x91861e51, 0xb9c4210f, 0x6c2d7a06, 0x15bc344f, 0x48b591f6,
+0x226d4092, 0xed6553ec, 0x5c586be3, 0xa4987693, 0x10ddcf8d, 0xd7ed5a67,
+0x79b85bcd, 0x4d592345, 0x4ce945a3, 0x0fc3837d, 0x56fe007d, 0x5e9275ec,
+0xfe7c865c, 0xcc2beea0, 0x0cf942d9, 0x49154874, 0xc7aa4d5b, 0x4e17ce42,
+0x2f24e407, 0x1b58d55c, 0x9f5ff14e, 0xa41f0b96, 0xee5cd5c8, 0xeafecd05,
+0xe5c9f211, 0xe4ecaa7b, 0xf906420b, 0xe0d7b63b, 0x978a5c06, 0x112793c2,
+0xea03d49a, 0x66ca3afb, 0x01fa1cd4, 0x617df025, 0xa1489b42, 0x748f7864,
+0x3ec92bab, 0x795fe037, 0xba5663ed, 0x39e19f7a, 0x145af072, 0x3f37ae3a,
+0x4fabc518, 0x3ea9e8cb, 0x73e8e393, 0x21cd02d7, 0xb1a53060, 0x8a5d94ae,
+0x13532921, 0x2c955771, 0x943c412d, 0xc00981a9, 0x0d080e03, 0x8e37d0a0,
+0x4436d0fb, 0x4d95a049, 0x5a417836, 0x34155d21, 0x54545bb5, 0xf83ed24f,
+0xf2899b97, 0x9558a1af, 0xc0da7c82, 0xdb203ba3, 0x29e46cc2, 0xabb83fec,
+0x5a4ef521, 0xbf2f850c, 0x12b33a77, 0x4ccac8b4, 0x7a54538a, 0x9a46d200
+
+input2 =
+0xb8e5f663, 0x203432f6, 0xfb85cd0c, 0xeaa8384b, 0x02794cd9, 0xef4fef8d,
+0xaa9a1053, 0x631b87e6, 0xdcb3547d, 0x7586180a, 0xa120e1c1, 0xef7b27be,
+0x41fc9d09, 0x6d51533b, 0xda1874c1, 0xf260d2f4, 0x6278fd5f, 0x0a124761,
+0x09cd8482, 0xf9d74008, 0x25996d51, 0x02e64f20, 0x6568ed32, 0xf9042aad,
+0xe9fc6bf2, 0xd6776755, 0x8ee536ac, 0x5b5edf46, 0x18fd8add, 0xeb0f680f,
+0x8b0360a8, 0xe3a0d12c, 0x25ca50f6, 0x8bbd71fa, 0xc83bd21a, 0x09f6b75d,
+0xcd02eaec, 0xafb06776, 0xcae07c61, 0x2c0548a9, 0xe311c76f, 0x05304767,
+0x043ae4dd, 0x3648c9b0, 0xe9dfda3a, 0x4d252727, 0xa3237636, 0x8c8ed3f8,
+0xb30a6d76, 0xb71ca52b, 0xe667bfdb, 0x513c58fe, 0x6fae21e0, 0x2d21cf6b,
+0xb799b698, 0xf64019a2, 0x6dc8bc3b, 0xf186373e, 0x301f89fd, 0xd40baf29,
+0x744f5323, 0x4a7af246, 0xcd233083, 0xbbc3e502, 0x3d2882f6, 0x925a43f5,
+0x0a8c9817, 0x27bf2de3, 0xf26365be, 0x112312a7, 0xca95075a, 0xa4b4b6b8,
+0x2e370826, 0x504d5377, 0xde398b34, 0x21b77d86, 0x18bd6514, 0xbc41f116,
+0x88405585, 0x8555cc9d, 0x2ec213b2, 0x542b1842, 0x063579b3, 0xe47fb6c5,
+0x542485fd, 0xcb0aba36, 0x1703abb8, 0x0dc54612, 0x7a58cdf3, 0x0a39a9c7,
+0x7c259899, 0x7074495c, 0x0665f1e8, 0x1660adf9, 0xbe0eca10, 0x55a3bf42,
+0xe4ef353f, 0x8caa8703, 0xf9915fcb, 0x45f97d9b, 0x0eee5b66, 0xa3caeeeb,
+0xfc322d2b, 0xaa7f763c, 0x6ffc0439, 0x22ff095e, 0x6095c83d, 0x4b217bef,
+0x09486a68, 0x40b05bb8, 0x67f8d3ca, 0x7018f808, 0xf1f808ce, 0xa096fdd2,
+0xa73628dc, 0x1a03888e, 0x0cdb727c, 0xea4370eb, 0x36b60c20, 0x9a48fe6f,
+0x1141dff8, 0xb6f113e0, 0x92da8eb5, 0xe9221484, 0x5bcba785, 0xb1fe1e7b,
+0x93d95acf, 0x816daadb, 0xa9e97eaf, 0x41bedd
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x3b787aa9, 0x4fde63dc, 0x10ea20a0,
+0xe6da8721, 0xbfde5b08, 0x9c3739da, 0xb6dc015a, 0x427db088, 0xdfdb8e6f,
+0x756be6c1, 0x21f5297b, 0x06135665, 0xc1602b7d, 0x049536c5, 0xbbb3b801,
+0x0cdb0c19, 0x7b2ad622, 0xfee8218f, 0xc5c7f123, 0x8abd3301, 0xa15b534d,
+0x29dd2053, 0xd409abf9, 0x3ef19d6b, 0x70a3cbc2, 0x7a51423a, 0x4505b2ad,
+0xdc74c75e, 0x068751a9, 0xb0b56437, 0x14a10371, 0x76af806f, 0xa8a47e19,
+0x7c97a26e, 0x7998a3d6, 0xdc1ad1e2, 0xb532a301, 0xca8a3e7d, 0xd0aef374,
+0x204990c0, 0xc7011aec, 0xa69151ea, 0x53390026, 0x7bf0d762, 0x735c2202,
+0x64159e54, 0x5a3b1a56, 0x9ef1def2, 0x0ab8a961, 0x587b0886, 0xb8cc5975,
+0x2a5a0f23, 0x069d05be, 0x9cc3c207, 0x40ef1a02, 0x4fae3f5b, 0x1f127aae,
+0xd4e6d411, 0x17ac43ef, 0xe4bf891b, 0xfbb21765, 0x2c560c7e, 0x8561988c,
+0x73a01032, 0x0cfef73a, 0x694c4991, 0x885d7a3f, 0x4218d1ff, 0xc2efaffb,
+0xaf9d9715, 0xf76de6b2, 0xcce8e8ff, 0x370e3800, 0x493675eb, 0xd8fbcbda,
+0xa5b382c2, 0x86c8f1ea, 0x3d724ea4, 0xb067034c, 0x6491d87e, 0x1a745ce4,
+0xbb27180b, 0x1a2f0acc, 0xac4b7b3b, 0xe324578b, 0xc87928df, 0x9c1de566,
+0x0ce2a17d, 0xaf2e13ce, 0x146a8659, 0x8727f6ae, 0xe2df7d03, 0x1a8e4cb4,
+0xfa590976, 0x13a7c236, 0xc07489d0, 0xbe905e17, 0xafeb3d4b, 0x201e73f2,
+0x5bdca12e, 0x3e15a852, 0xbcfc3271, 0x5d398410, 0x6bfacc15, 0x011fc61f,
+0x43e43fd7, 0x0640717c, 0x96bfb3ff, 0x158eac19, 0x3b852e91, 0x74f9ceda,
+0xcac71326, 0xfc0e312a, 0x20e8137b, 0xa1162611, 0x239ac7fe, 0xb9d00f8a,
+0xea0b5241, 0x019f0d25, 0xc5153264, 0xb48a5547, 0xe54e339f, 0x17a6cca5,
+0x5065af0d, 0x5ce648b9, 0xb457b342, 0xc1cb3f0e, 0x28d03c8b, 0x5144ed7a,
+0xdb80779f, 0x53ce1b87, 0xbc071147, 0xbfe46c11, 0x7296785e, 0x83e4a63e,
+0xc58982e9, 0xac97c7b9, 0x3e2fe9ad, 0x5badf077, 0x75aa2457, 0xe90a9df7,
+0x8b6ccd4f, 0x0952f26d, 0x80a8378a, 0xb43e3207, 0xf2de9df0, 0x0fff3717,
+0x80446f72, 0xd05c0c7f, 0xdc9ad9a1, 0xe881678d, 0x290c1bd1, 0x99ca0de2,
+0x4b3304c7, 0x6ea6f4e4, 0xf620f405, 0xb2f0593e, 0x0a930b64, 0xaa79e973,
+0xb34cce52, 0x094579bb, 0x87e5be0f, 0x8f7da04c, 0x40c1952c, 0xbe986586,
+0x55f822cc, 0x55d8abe9, 0x5ae570c1, 0xe8c7eb76, 0x2a3c1721, 0x7d7d9237,
+0x8cd3a0c0, 0xa3818fa5, 0xfb4d2df0, 0x12f42455, 0x8e9f2a07, 0x45b28529,
+0x49b9c170, 0x0812d29a, 0xc1353e6b, 0x2701f0b3, 0xb8dbcf3a, 0x842c6fee,
+0xb9240b2a, 0x723d6490, 0x0cc20b5b, 0xe4fd1dc0, 0x99651ffd, 0xa38e1773,
+0x4e99bd3a, 0xe0c24878, 0x2dd78dba, 0x50cdaba8, 0x7b9678bf, 0x6e6d7824,
+0xe738e423, 0x22043a00, 0x4eaba169, 0x0f2808d5, 0xe49ec31d, 0x251f7086,
+0x4cafaf35, 0x524d1088, 0x5c1321bd, 0x8185032d, 0xb21a78eb, 0x51d13a3a,
+0xc4470b6c, 0xcb3b9f7f, 0xe32b35e7, 0x538b94ce, 0xe042ec95, 0x209b6116,
+0xde3b30f2, 0xd09c4b2e, 0x239fda51, 0x02b1b715, 0xf3c5e5de, 0x8a3ed6bf,
+0x4604fd3d, 0x9df50325, 0x631779d6, 0x87902b7e, 0x29890dae, 0x4e0011be,
+0x76476833, 0x478e5bfd, 0xf206abca, 0xad175a4d, 0xb1ec8cd6, 0xd3a9a423,
+0x27082a37, 0xe3341c5d, 0x06e1c714, 0x12d86950, 0x91d6f70e, 0x2a1c50cf,
+0xa81af940, 0xf75248fc, 0xbe05834f, 0x3f16b2f7, 0x3a4f399d, 0x17735bff,
+0x75fdc1cf, 0xae70d0f3, 0x97361ac3, 0x108acace, 0xd5ce994b, 0x87750f45,
+0xf1b6074b, 0x899de08a, 0xcdf940b8, 0x3333765e, 0x5b844560, 0xe2d7cd26,
+0xde5b3df3, 0x005b47eb, 0x3f84501a, 0xd5c4a613, 0x02ec8c64, 0x8a539710,
+0x2ef84f5e, 0x3cfd137e, 0x16291d76, 0x1ec4c1e2, 0x2c4603e3, 0x8914251f,
+0x15ff58e2, 0xad8a9b5d, 0xd42c2ffa, 0x91fb3db4, 0xbb0e6562, 0x0ed4d637,
+0x84dd5060, 0x4de7a883, 0x2604f869, 0x7b5b371d, 0x35179e64, 0x72fa9fb2,
+0xf0dd279b, 0xd0b58495, 0xc5a4a3e3, 0x6c2ddbc0, 0xb5124aa4, 0x7273de76,
+0xdd4163e0, 0xeb8c26d7, 0xd471989f, 0x6bae4782, 0xa90e7810, 0x83ee80bf,
+0x7ccf3a0f, 0x2cf00815, 0x908ed7b3, 0x83d27286, 0x9b80d5fa, 0x0bdbc140,
+0xff05bcbe, 0x4b347b77, 0x7ebf482a, 0x1d50dfad, 0xac97bad2, 0xf0e405e7,
+0xa2110431, 0xc1f0165d, 0xb885760e, 0xc56f402f, 0x524baf0c, 0xd6fbf683,
+0xab020827, 0x9080e9f9, 0x0f24a3be, 0xe505fe4d, 0x7078a864, 0x22646b61,
+0x68857877, 0x073a5f6e, 0x411a6509, 0x4c6052bc, 0xdd28239c, 0x628ff7f1,
+0x3763388f, 0xcaff8a87, 0x483fdf61, 0x1d6e8398, 0x9a5a208e, 0xa88b0665,
+0x4184378a, 0xed925967, 0xc46f3a40, 0x421725f8, 0xb9e9d803, 0x6e5e0eab,
+0x55e795a6, 0xbfb8f16f, 0xf82921c3, 0xdaf0990c, 0x861e5130, 0xc4210f91,
+0x2d7a06b9, 0xbc344f6c, 0xb591f615, 0x6d409248, 0x6553ec22, 0x586be3ed,
+0x9876935c, 0xddcf8da4, 0xed5a6710, 0xb85bcdd7, 0x59234579, 0xe945a34d,
+0xc3837d4c, 0xfe007d0f, 0x9275ec56, 0x7c865c5e, 0x2beea0fe, 0xf942d9cc,
+0x1548740c, 0xaa4d5b49, 0x17ce42c7, 0x24e4074e, 0x58d55c2f, 0x5ff14e1b,
+0x1f0b969f, 0x5cd5c8a4, 0xfecd05ee, 0xc9f211ea, 0xecaa7be5, 0x06420be4,
+0xd7b63bf9, 0x8a5c06e0, 0x2793c297, 0x03d49a11, 0xca3afbea, 0xfa1cd466,
+0x7df02501, 0x489b4261, 0x8f7864a1, 0xc92bab74, 0x5fe0373e, 0x5663ed79,
+0xe19f7aba, 0x5af07239, 0x37ae3a14, 0xabc5183f, 0xa9e8cb4f, 0xe8e3933e,
+0xcd02d773, 0xa5306021, 0x5d94aeb1, 0x5329218a, 0x95577113, 0x3c412d2c,
+0x0981a994, 0x080e03c0, 0x37d0a00d, 0x36d0fb8e, 0x95a04944, 0x4178364d,
+0x155d215a, 0x545bb534, 0x3ed24f54, 0x899b97f8, 0x58a1aff2, 0xda7c8295,
+0x203ba3c0, 0xe46cc2db, 0xb83fec29, 0xe1f521ab, 0xc6b9bfc2, 0x5c32cb2a,
+0x9ff27191, 0xd52f5c36, 0x5953596d, 0xb9686ed3, 0x087ca132, 0xa528467c,
+0x945c97ee, 0xbfa19e6f, 0xd4e19b4c, 0x55c03e10, 0x390bbd8e, 0x654a76c0,
+0x656030f0, 0xc157ac93, 0x02dcce46, 0x5dc06d58, 0x3b7fd9e9, 0xc8a4de6f,
+0xcbb105da, 0x8a1b6e0f, 0xeb1a7ecd, 0xfe809fd7, 0x43d70381, 0x0cfc5e49,
+0xf0a302d3, 0x9664b2c9, 0xb2793157, 0x5dd5cc39, 0x4e9d42bb, 0x26f65f3a,
+0xfdf325fb, 0x8fbd80f1, 0xd6dc87f0, 0xabd85a41, 0x308029ff, 0xb774c986,
+0x0b0fc9b4, 0xd57c5439, 0x3c3c5b4d, 0x0843d1cf, 0x11a1e765, 0x77d92661,
+0xe7142375, 0xe238ff84, 0xfbb66dd9, 0x3ac33a26, 0x7c843c33, 0x6ac40826,
+0x17d9ae96, 0x98edfd6b, 0x57747f0d, 0xae811573, 0x0cb107fd, 0x8e075d1a,
+0x44b82c2b, 0x5c831473, 0xe132923c, 0x56edfe59, 0xe41ef202, 0x1a4ffff4,
+0x711db68f, 0x097160f2, 0xcafacd90, 0x3861d5ae, 0xcdf9eccd, 0xcdd93506,
+0xaa171f8a, 0xe1de194e, 0xed1a1901, 0x1d9f9e42, 0xdcc2d911, 0x19782ad0,
+0xc52f93c8, 0x162a98b2, 0x56af9960, 0x6c9c5299, 0xcf9a19b7, 0x78c967b5,
+0xd045f7c3, 0xd71354ad, 0xb4b202dd, 0x44c5f03d, 0xf30ca027, 0x7c6e5360,
+0x0f687223, 0x089bc5e5, 0xaa82af26, 0xd3044038, 0x466b6c1e, 0x4f30716e,
+0xc38a5280, 0xd1835859, 0x7cf23e2c, 0x3c1c25dc, 0xdb16c0f6, 0x616d97e9,
+0xc4f921b2, 0xb222a9bf, 0x0da098cc, 0xaf24a9b8, 0x0531f892, 0xa532fc28,
+0xa1b7ff8c, 0x84185bde, 0xbf7e22ee, 0x0acd2cac, 0x8c9c9783, 0x06a12240,
+0xc72727bd, 0xd288dabc, 0x8cdb446e, 0x0775e50b, 0xff75e03c, 0x9b5e3401,
+0x0d72aba1, 0xead6e37f, 0x9e6ab0e8, 0x322bfaaf, 0xa77475ab, 0x209b5cca,
+0x95ec7cf2, 0xc9120454, 0x205950fb, 0x108b00f7, 0xe63691a1, 0x333de3ae,
+0x10a00cc6, 0x6627d276, 0x6ad7a7ba, 0x674bd137, 0x440ee9c6, 0x4baf4fec,
+0xf8fbbb08, 0x6cf14435, 0xeda46d4a, 0xc2970533, 0x1ef9901b, 0xa38c8a02,
+0x3cc92010, 0x11a2ad19, 0xacc4f626, 0x3b79c692, 0xba6fcc96, 0x023b4438,
+0x6e44da89, 0x706833e1, 0xc686d43e, 0x24de1fb0, 0x02cb4043, 0xcdcc9427,
+0x19874c6f, 0x1f0eac03, 0x451287ae, 0xde59e0f9, 0xe3d24b8b, 0xaacb7076,
+0xf9e917ec, 0xc38ee0ef, 0x1e35a948, 0x637e7d0f, 0xc46537e1, 0x57c719c6,
+0xd78e6388, 0x242b2bf1, 0xeeff65a3, 0xdba5167d, 0x52df5992, 0x2c176e9f,
+0x89edc76f, 0xad9bc6c8, 0x85d68905, 0x5fa6ace5, 0x0c29be5c, 0x382ac973,
+0xc90c37a6, 0x703c5202, 0x79982954, 0xb06169d8, 0x8b8eca2a, 0x150fddee,
+0x2ad08bc2, 0xe73410ed, 0x056c863d, 0x92207e0b, 0x61ad097d, 0x5b0112c3,
+0x0590cadb, 0xa4fd73a1, 0x1992d9c6, 0x40d3a1ac, 0x38b6c7e1, 0xc392aeea,
+0xebd97511, 0xcdaf098f, 0x7a37c361, 0xf2699fc9, 0x5f921fb3, 0xc2784ffe,
+0x0c41d640, 0x4a367b6c, 0xf16cc4af, 0xd8c3a120, 0x051d71e7, 0x339f9999,
+0xab664909, 0xa1ae5a9c, 0xcc0f88de, 0x3d4d7d88, 0x0aed3148, 0xd0768c85,
+0x7c7e9061, 0x587e3073, 0xa00baa91, 0x0742d49e, 0x8cdb3316, 0x6a65f748,
+0x97febcd5, 0x63f7e115, 0xe609e4ec, 0x1e7fec67, 0x41613968, 0x0781c35b,
+0xb43e97f2, 0x824b9c32, 0x32033289, 0x6f858691, 0x46bf3ba4, 0xc2c75bb0,
+0x3b93a4ce, 0x4269140b, 0xcee2b4c4, 0x2c7bc82a, 0xa75515dc, 0x2553582f,
+0x5bbd77f3, 0x9b418852, 0xfd8492df, 0xa6d60678, 0x08c8232d, 0xfde0decd,
+0xe9023c01, 0x618dc90f, 0xa7b37ce5, 0x6889c117, 0x818a1563, 0x6492d447,
+0x86fc80ce, 0x570d8ff2, 0x10ec5ab8, 0xc7c5b00d, 0x84cb4057, 0x544b7b69,
+0xb73fbb28, 0x09201691, 0xa63303af, 0x8aa52eca, 0x68e6bbef, 0x82c53c81,
+0x84f5b8ea, 0xf37cc22f, 0x291b9e0c, 0x882a6f6e, 0xc5d70964, 0x32f010ba,
+0xcc514415, 0x87a0d092, 0x1e64a4bd, 0x08210042, 0xb96becb7, 0x7b53f112,
+0xe07f1d2e, 0x850c5a4e, 0x3a77bf2f, 0xc8b412b3, 0x538a4cca, 0xd2007a54,
+0xf6639a46, 0x32f6b8e5, 0xcd0c2034, 0x384bfb85, 0x4cd9eaa8, 0xef8d0279,
+0x1053ef4f, 0x87e6aa9a, 0x547d631b, 0x180adcb3, 0xe1c17586, 0x27bea120,
+0x9d09ef7b, 0x533b41fc, 0x74c16d51, 0xd2f4da18, 0xfd5ff260, 0x47616278,
+0x84820a12, 0x400809cd, 0x6d51f9d7, 0x4f202599, 0xed3202e6, 0x2aad6568,
+0x6bf2f904, 0x6755e9fc, 0x36acd677, 0xdf468ee5, 0x8add5b5e, 0x680f18fd,
+0x60a8eb0f, 0xd12c8b03, 0x50f6e3a0, 0x71fa25ca, 0xd21a8bbd, 0xb75dc83b,
+0xeaec09f6, 0x6776cd02, 0x7c61afb0, 0x48a9cae0, 0xc76f2c05, 0x4767e311,
+0xe4dd0530, 0xc9b0043a, 0xda3a3648, 0x2727e9df, 0x76364d25, 0xd3f8a323,
+0x6d768c8e, 0xa52bb30a, 0xbfdbb71c, 0x58fee667, 0x21e0513c, 0xcf6b6fae,
+0xb6982d21, 0x19a2b799, 0xbc3bf640, 0x373e6dc8, 0x89fdf186, 0xaf29301f,
+0x5323d40b, 0xf246744f, 0x30834a7a, 0xe502cd23, 0x82f6bbc3, 0x43f53d28,
+0x9817925a, 0x2de30a8c, 0x65be27bf, 0x12a7f263, 0x075a1123, 0xb6b8ca95,
+0x0826a4b4, 0x53772e37, 0x8b34504d, 0x7d86de39, 0x651421b7, 0xf11618bd,
+0x5585bc41, 0xcc9d8840, 0x13b28555, 0x18422ec2, 0x79b3542b, 0xb6c50635,
+0x85fde47f, 0xba365424, 0xabb8cb0a, 0x46121703, 0xcdf30dc5, 0xa9c77a58,
+0x98990a39, 0x495c7c25, 0xf1e87074, 0xadf90665, 0xca101660, 0xbf42be0e,
+0x353f55a3, 0x8703e4ef, 0x5fcb8caa, 0x7d9bf991, 0x5b6645f9, 0xeeeb0eee,
+0x2d2ba3ca, 0x763cfc32, 0x0439aa7f, 0x095e6ffc, 0xc83d22ff, 0x7bef6095,
+0x6a684b21, 0x5bb80948, 0xd3ca40b0, 0xf80867f8, 0x08ce7018, 0xfdd2f1f8,
+0x28dca096, 0x888ea736, 0x727c1a03, 0x70eb0cdb, 0x0c20ea43, 0xfe6f36b6,
+0xdff89a48, 0x13e01141, 0x8eb5b6f1, 0x148492da, 0xa785e922, 0x1e7b5bcb,
+0x5acfb1fe, 0xaadb93d9, 0x7eaf816d, 0xbedda9e9, 0xa7ca7f41, 0x3dbc26b7,
+0xbc3bd6af, 0x2d439ab1, 0x033d7088, 0x55ce999d, 0xbf01aede, 0x69d66a12,
+0x66729f87, 0x8e32437f, 0x7c0cd769, 0xc2d6c28e, 0xb46447ae, 0x4a525520,
+0x93096dbf, 0x2a322bcd, 0xde416e8f, 0xb43de9a4, 0xe2103ebb, 0x416e35ed,
+0xd0c13478, 0x0298890a, 0x8d4878f3, 0x8e81f629, 0xd60a85bf, 0x10c2e72d,
+0x68b67fb0, 0x2981247e, 0x6bdbd269, 0xe43784e3, 0x812de42b, 0x867d394d,
+0x423b0ee7, 0x627b8d60, 0x23ab2664, 0x83177153, 0x13dca280, 0x49d3c872,
+0xd45a0b4e, 0x00d45a9f, 0x0c462361, 0x983f61a9, 0x8002d29a, 0x6fbea32b,
+0xfe480c9d, 0xc509b1ae, 0xa16a6480, 0x2ec3f091, 0x278b72bc, 0xedbf05b0,
+0x9b1b3b99, 0xe10ad07e, 0xd72e6076, 0x6c5a971a, 0xf8455dba, 0x4b7dc370,
+0x4a7cdaad, 0xed4f2283, 0xe6f08d15, 0xf6ad0a12, 0x1ae96f4f, 0x4f57bd65,
+0x64695652, 0x0cb93df1, 0x9af11326, 0xce713c08, 0xefc3aba9, 0xf650de25,
+0xb7b39517, 0x45c92ae6, 0x38a8e441, 0x60b1823f, 0xb061259d, 0xb6996e6a,
+0x78786198, 0x06309186, 0x77d3c6f4, 0x8d546f7b, 0xfc7abe48, 0x969ce149,
+0x76950457, 0xd773728e, 0xb6a62ac4, 0x6164c8d3, 0x4f4fd819, 0x0aa0b660,
+0x61d334d1, 0x3deca8cf, 0xec2841ad, 0x44636725, 0x235d3532, 0x3aecb4f3,
+0x3538c6e0, 0xf0060d47, 0x2ab167f4, 0x0b9af7cf, 0x0779ec25, 0x35a33e48,
+0x8a0b999b, 0x593d498d, 0xc336cabf, 0xd49ebae0, 0x4e1756d7, 0x949cd0fb,
+0x1df1c1ee, 0xfbcc6642, 0x31637c7a, 0xf5057c87, 0xa10f0991, 0x8ed58fb9,
+0x09078b6e, 0x20648f01, 0xc1db84e6, 0xde0bda37, 0x61318efd, 0x11cf175e,
+0xb5edbe81, 0xf8904fcd, 0x209f1281, 0x18808af8, 0x1fecace9, 0xe4266782,
+0x37e5b44b, 0x42398c69, 0x5c289090, 0x686fa23f, 0x1e53a0c2, 0x5dac1fdc,
+0x3483d874, 0xc1a4c007, 0xa0cd459f, 0xd189410f, 0xddddc858, 0xaece2922,
+0xdef79aca, 0xc4b9e092, 0xb0fd47c2, 0x82903f08, 0xac21977f, 0x5a5f8bc8,
+0x6dca69c4, 0x7b3ccc8d, 0x0ba11e02, 0x01cdc423, 0x94373db8, 0xa7467d8f,
+0x1c2b70c3, 0xcf8c0768, 0xda7ee497, 0x073acd49, 0x0350dccc, 0x5a6e39c2,
+0xf6f7d4cc, 0xc64af7b5, 0xc445ddaa, 0xc7e24642, 0x1e600f75, 0x47f85b15,
+0x57a8cd36, 0xf9f152f5, 0xefac27df, 0xddb3dd4e, 0xf8e27f9d, 0x6d0f2803,
+0xf64634ef, 0xde7e7b1a, 0xc66b28e5, 0xeb61d4c7, 0x7439135d, 0x547fa78b,
+0x70a3a479, 0xd3200ea9, 0x3382d3c5, 0x1d9de4d8, 0xc343d60f, 0x8bd1e0e7,
+0xe4a541db, 0x5328df3a, 0x4e725ef6, 0x6c97f0e1, 0x221ff24d, 0x3ff691dd,
+0x3f856ea6, 0xf720842b, 0x7fae7374, 0x957b0aaa, 0x9f99a156, 0xe33eec87,
+0xe6761738, 0x792b71de, 0x05a6d387, 0x1e0a3b84, 0x9f7cfc15, 0x4cf4e3c7,
+0x5ee79441, 0x596c285a, 0xba89f481, 0xfa61af2c, 0xe7049f78, 0x59584da5,
+0xd4490299, 0x20933317, 0xee435639, 0x4cc83a0a, 0x86492fdb, 0x162613dd,
+0xc76fce3c, 0xaa454f8f, 0x1816c686, 0x5fc2c514, 0x83501909, 0x3685c367,
+0x46b2b281, 0xcdbef634, 0xd210178c, 0xffbff6e3, 0xed30aac0, 0x3196cc93,
+0xb848dda0, 0x5e2003b4, 0xc3e87650, 0x01a00bf2, 0x74a2d59f, 0x21b75986,
+0x6434d546, 0x8aefc874, 0xdaad3c0d, 0x3d23cfb2, 0x64e46cff, 0xded52526,
+0xd922d31f, 0x5bc9f960, 0xa748f3b5, 0x0da1da76, 0x7f5d4c6d, 0x0be533c1,
+0x2b7e40d0, 0xe25059b6, 0x97848fc2, 0x53a3d340, 0x532cda5d, 0x6f4567dd,
+0x9ca35dee, 0x034d1a87, 0xdd67abcf, 0xa5bca719, 0xadf605ca, 0x58206c3f,
+0x74533a11, 0xfe0f5ffc, 0x2a686617, 0xf6718993, 0x74c9d10a, 0xf056f283,
+0xd0203300, 0x6170b2cc, 0xf866b11d, 0x9469442f, 0x61b8960d, 0xd6030148,
+0x8bd2439f, 0xd60a4ba8, 0x4cbd1d64, 0xe2c713ee, 0x4259e3c9, 0xf2f5f436,
+0xcef487d1, 0x52f60b3d, 0xabf6637d, 0x97396dfe, 0xfe44b265, 0xd882ff2b,
+0x11a3cdcc, 0x206e
+
+ea =
+13068
+
+eb =
+13068
+
+cab =
+2
+
+c =
+3
+
+c_neg =
+0
+
+k_pos =
+4352
+
+k_neg =
+4288
+
+ncb_pos =
+13152
+
+ncb_neg =
+12960
+
+r =
+0
+
+rv_index =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_CRC_24B_ATTACH, RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
diff --git a/doc/guides/tools/testbbdev.rst b/doc/guides/tools/testbbdev.rst
index 7e6a4db..060164c 100644
--- a/doc/guides/tools/testbbdev.rst
+++ b/doc/guides/tools/testbbdev.rst
@@ -62,8 +62,7 @@ The following are the command-line options:
 
 ``-e EAL_PARAMS, --eal_params EAL_PARAMS``
  Specifies EAL arguments which are passed to the test app. For more details,
- refer to DPDK documentation at
- http://doc.dpdk.org/guides/linux_gsg/linux_eal_parameters.html.
+ refer to DPDK documentation at http://dpdk.org/doc.
 
 ``-t TIMEOUT, --timeout TIMEOUT``
  Specifies timeout in seconds. If not specified timeout is set to 300 seconds.
@@ -82,8 +81,8 @@ The following are the command-line options:
 ``-v TEST_VECTOR [TEST_VECTOR ...], --test_vector TEST_VECTOR [TEST_VECTOR ...]``
  Specifies paths to the test vector files. If not specified path is set based
  on *$RTE_SDK* environment variable concatenated with
- "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default
- data file.
+ "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default data
+ file.
 
  **Example usage:**
 
@@ -93,7 +92,7 @@ The following are the command-line options:
  ``./test-bbdev.py -v turbo_dec_test1.data turbo_enc_test2.data``
   The bbdev test app is executed twice. First time vector is filled based on
   *turbo_dec_test1.data* file and second time based on
-  *turb_enc_test2.data* file. For both executions all tests are run.
+  *turbo_enc_test2.data* file. For both executions all tests are run.
 
 ``-n NUM_OPS, --num_ops NUM_OPS``
  Specifies number of operations to process on device. If not specified num_ops
@@ -139,7 +138,7 @@ There are 6 main test cases that can be executed using testbbdev tool:
 * Latency measurement [-c latency]
     - Measures the time consumed from the first enqueue until the first
       appearance of a dequeued result
-    - This measurement represents the full latency of a bbdev operation
+    - This measurment represents the full latency of a bbdev operation
       (encode or decode) to execute
 
 * Poll-mode Throughput measurement [-c throughput]
@@ -170,49 +169,66 @@ It runs all tests with following vectors:
 
 - ``bbdev_null.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
 
-- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+
+- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data``
+
+- ``turbo_enc_c1_k40_r0_e1194_rm.data``
 
 - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
 
-- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
+
+- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+
+- ``turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_posllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
 
 - ``turbo_enc_c1_k40_r0_e272_rm.data``
 
 - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
 
+- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+
+- ``turbo_enc_c1_k456_r0_e1380_scatter.data``
+
+- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
 
 - ``turbo_enc_c1_k6144_r0_e120_rm_rvidx.data``
 
-- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
-
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18444.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data``
 
-- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+- ``turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18448_crc24a.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
-
-- ``turbo_enc_c1_k40_r0_e1194_rm.data``
-
-- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
 
 .. code-block:: console
 
-  ./test-bbdev.py -v app/test-bbdev/turbo_*_default.data
+  ./test-bbdev.py -v app/test-bbdev/test_vectors/turbo_*_default.data
 
 It runs all tests with "default" vectors.
 
@@ -227,36 +243,44 @@ Running Tests
 -------------
 
 Shortened tree of isg_cid-wireless_dpdk_ae with dpdk compiled for
-x86_64-native-linux-icc target:
+x86_64-native-linuxapp-icc target:
 
 ::
 
  |-- app
      |-- test-bbdev
          |-- test_vectors
-             |-- bbdev_null.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
+             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
+             |-- turbo_enc_c1_k40_r0_e1194_rm.data
              |-- turbo_enc_c2_k5952_r0_e17868_crc24b.data
-             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
+             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
+             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_posllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
              |-- turbo_enc_c1_k40_r0_e272_rm.data
              |-- turbo_enc_c3_k4800_r2_e14412_crc24b.data
+             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_enc_c1_k456_r0_e1380_scatter.data
+             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
              |-- turbo_enc_c1_k6144_r0_e120_rm_rvidx.data
-             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18444.data
-             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
+             |-- turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18448_crc24a.data
-             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
-             |-- turbo_enc_c1_k40_r0_e1194_rm.data
-             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
 
- |-- x86_64-native-linux-icc
+
+ |-- x86_64-native-linuxapp-icc
      |-- app
          |-- testbbdev
 
@@ -265,7 +289,7 @@ All bbdev devices
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -v turbo_dec_default.data
 
 It runs all available tests using the test vector filled based on
@@ -279,7 +303,7 @@ baseband turbo_sw device
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -e="--vdev=baseband_turbo_sw" -t 120 -c validation
   -v ./test_vectors/turbo_* -n 64 -b 8 32
 
@@ -307,16 +331,39 @@ baseband_null device does not have to be defined explicitly as it is created by
 
 
 Test Vector files
------------------
+=================
 
 Test Vector files contain the data which is used to set turbo decoder/encoder
 parameters and buffers for validation purpose. New test vector files should be
 stored in ``app/test-bbdev/test_vectors/`` directory. Detailed description of
 the syntax of the test vector files is in the following section.
 
+Naming convention for test vector files
+---------------------------------------
+
+The TV file name should follow this syntax:
+
+``turbo_<enc/dec>_c<c>_k<k>_r<r>_e<e>_<extra-info>``
+
+- ``<k>`` is k_pos in case of c > 1
+- ``<r>`` can be 0
+- ``<e>`` is the eb in case of c > 1
+- Remember to put the letters (c,k,r,e) before the nummber to help the reader to
+  know what the following number represents
+- ``<extra-info>`` should be pretty much based on op_flags, sperated by underscore
+  "_", and should be from this list and in the exact order as follows:
+
+  #. ``crc24a/crc24b`` : based on type of crc perfomed, remove if not crc is performed
+  #. ``sbd`` : in case that rate subblock deinterleave is not bypassed
+  #. ``rm`` : in case that rate matching is not bypassed
+  #. ``teq`` : when performing turbo equalizer
+  #. ``rvidx`` : in case that rv_idx is bypassed
+  #. ``negllr/posllr`` : for type of LLR used, remove if not soft out enabled
+  #. ``scatter`` : in case the buffer is scattered (split)
+
 
 Basic principles for test vector files
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------
 Line started with ``#`` is treated as a comment and is ignored.
 
 If variable is a chain of values, values should be separated by a comma. If
@@ -351,7 +398,7 @@ documented in *rte_bbdev_op.h*
 
 
 Turbo decoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo decoder it has to be always set to ``RTE_BBDEV_OP_TURBO_DEC``
 
@@ -528,7 +575,7 @@ Following statuses can be used:
 
 
 Turbo encoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo encoder it has to be always set to ``RTE_BBDEV_OP_TURBO_ENC``
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 5/5] usertools: update to usertool to allow binding of baseband device
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
                   ` (4 preceding siblings ...)
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 4/5] test-bbdev : Update of bbdec test-app for FPGA and 5G testing Nic Chautru
@ 2019-05-11  0:06 ` Nic Chautru
  2019-05-11  0:06   ` Nic Chautru
  2019-05-13 11:10 ` [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Luca Boccassi
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
  7 siblings, 1 reply; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

 Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 usertools/dpdk-devbind.py | 10 +++++++++-
 usertools/dpdk-setup.sh   |  6 +++---
 2 files changed, 12 insertions(+), 4 deletions(-)
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

diff --git a/usertools/dpdk-devbind.py b/usertools/dpdk-devbind.py
old mode 100755
new mode 100644
index 9e79f0d..a6ee8f9
--- a/usertools/dpdk-devbind.py
+++ b/usertools/dpdk-devbind.py
@@ -18,6 +18,8 @@
                    'SVendor': None, 'SDevice': None}
 intel_processor_class = {'Class': '0b', 'Vendor': '8086', 'Device': None,
                    'SVendor': None, 'SDevice': None}
+acceleration_class = {'Class': '12', 'Vendor': None, 'Device': None,
+               'SVendor': None, 'SDevice': None}
 cavium_sso = {'Class': '08', 'Vendor': '177d', 'Device': 'a04b,a04d',
               'SVendor': None, 'SDevice': None}
 cavium_fpa = {'Class': '08', 'Vendor': '177d', 'Device': 'a053',
@@ -40,6 +42,7 @@
 crypto_devices = [encryption_class, intel_processor_class]
 eventdev_devices = [cavium_sso, cavium_tim, octeontx2_sso]
 mempool_devices = [cavium_fpa, octeontx2_npa]
+baseband_devices = [acceleration_class]
 compress_devices = [cavium_zip]
 
 # global dict ethernet devices present. Dictionary indexed by PCI address.
@@ -89,7 +92,7 @@ def usage():
 
     --status-dev:
         Print the status of given device group. Supported device groups are:
-        "net", "crypto", "event", "mempool" and "compress"
+        "net", "crypto", "baseband", "event", "mempool" and "compress"
 
     -b driver, --bind=driver:
         Select the driver to use or \"none\" to unbind the device
@@ -586,6 +589,9 @@ def show_status():
     if status_dev == "crypto" or status_dev == "all":
         show_device_status(crypto_devices, "Crypto")
 
+    if status_dev == "baseband" or status_dev == "all":
+        show_device_status(baseband_devices, "Baseband")
+
     if status_dev == "event" or status_dev == "all":
         show_device_status(eventdev_devices, "Eventdev")
 
@@ -667,6 +673,7 @@ def do_arg_actions():
             # refresh if we have changed anything
             get_device_details(network_devices)
             get_device_details(crypto_devices)
+            get_device_details(baseband_devices)
             get_device_details(eventdev_devices)
             get_device_details(mempool_devices)
             get_device_details(compress_devices)
@@ -688,6 +695,7 @@ def main():
     get_device_details(network_devices)
     get_device_details(crypto_devices)
     get_device_details(eventdev_devices)
+    get_device_details(baseband_devices)
     get_device_details(mempool_devices)
     get_device_details(compress_devices)
     do_arg_actions()
diff --git a/usertools/dpdk-setup.sh b/usertools/dpdk-setup.sh
old mode 100755
new mode 100644
index d008074..15f91b8
--- a/usertools/dpdk-setup.sh
+++ b/usertools/dpdk-setup.sh
@@ -496,13 +496,13 @@ step2_func()
 	TEXT[5]="Setup hugepage mappings for NUMA systems"
 	FUNC[5]="set_numa_pages"
 
-	TEXT[6]="Display current Ethernet/Crypto device settings"
+	TEXT[6]="Display current Ethernet/Crypto/Baseband device settings"
 	FUNC[6]="show_devices"
 
-	TEXT[7]="Bind Ethernet/Crypto device to IGB UIO module"
+	TEXT[7]="Bind Ethernet/Crypto/Baseband device to IGB UIO module"
 	FUNC[7]="bind_devices_to_igb_uio"
 
-	TEXT[8]="Bind Ethernet/Crypto device to VFIO module"
+	TEXT[8]="Bind Ethernet/Crypto/Baseband device to VFIO module"
 	FUNC[8]="bind_devices_to_vfio"
 
 	TEXT[9]="Setup VFIO permissions"
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH 5/5] usertools: update to usertool to allow binding of baseband device
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 5/5] usertools: update to usertool to allow binding of baseband device Nic Chautru
@ 2019-05-11  0:06   ` Nic Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nic Chautru @ 2019-05-11  0:06 UTC (permalink / raw)
  To: dev; +Cc: Nicolas Chautru

From: Nicolas Chautru <nicolas.chautru@intel.com>

 Signed-off-by: Nic Chautru <nicolas.chautru@intel.com>
---
 usertools/dpdk-devbind.py | 10 +++++++++-
 usertools/dpdk-setup.sh   |  6 +++---
 2 files changed, 12 insertions(+), 4 deletions(-)
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

diff --git a/usertools/dpdk-devbind.py b/usertools/dpdk-devbind.py
old mode 100755
new mode 100644
index 9e79f0d..a6ee8f9
--- a/usertools/dpdk-devbind.py
+++ b/usertools/dpdk-devbind.py
@@ -18,6 +18,8 @@
                    'SVendor': None, 'SDevice': None}
 intel_processor_class = {'Class': '0b', 'Vendor': '8086', 'Device': None,
                    'SVendor': None, 'SDevice': None}
+acceleration_class = {'Class': '12', 'Vendor': None, 'Device': None,
+               'SVendor': None, 'SDevice': None}
 cavium_sso = {'Class': '08', 'Vendor': '177d', 'Device': 'a04b,a04d',
               'SVendor': None, 'SDevice': None}
 cavium_fpa = {'Class': '08', 'Vendor': '177d', 'Device': 'a053',
@@ -40,6 +42,7 @@
 crypto_devices = [encryption_class, intel_processor_class]
 eventdev_devices = [cavium_sso, cavium_tim, octeontx2_sso]
 mempool_devices = [cavium_fpa, octeontx2_npa]
+baseband_devices = [acceleration_class]
 compress_devices = [cavium_zip]
 
 # global dict ethernet devices present. Dictionary indexed by PCI address.
@@ -89,7 +92,7 @@ def usage():
 
     --status-dev:
         Print the status of given device group. Supported device groups are:
-        "net", "crypto", "event", "mempool" and "compress"
+        "net", "crypto", "baseband", "event", "mempool" and "compress"
 
     -b driver, --bind=driver:
         Select the driver to use or \"none\" to unbind the device
@@ -586,6 +589,9 @@ def show_status():
     if status_dev == "crypto" or status_dev == "all":
         show_device_status(crypto_devices, "Crypto")
 
+    if status_dev == "baseband" or status_dev == "all":
+        show_device_status(baseband_devices, "Baseband")
+
     if status_dev == "event" or status_dev == "all":
         show_device_status(eventdev_devices, "Eventdev")
 
@@ -667,6 +673,7 @@ def do_arg_actions():
             # refresh if we have changed anything
             get_device_details(network_devices)
             get_device_details(crypto_devices)
+            get_device_details(baseband_devices)
             get_device_details(eventdev_devices)
             get_device_details(mempool_devices)
             get_device_details(compress_devices)
@@ -688,6 +695,7 @@ def main():
     get_device_details(network_devices)
     get_device_details(crypto_devices)
     get_device_details(eventdev_devices)
+    get_device_details(baseband_devices)
     get_device_details(mempool_devices)
     get_device_details(compress_devices)
     do_arg_actions()
diff --git a/usertools/dpdk-setup.sh b/usertools/dpdk-setup.sh
old mode 100755
new mode 100644
index d008074..15f91b8
--- a/usertools/dpdk-setup.sh
+++ b/usertools/dpdk-setup.sh
@@ -496,13 +496,13 @@ step2_func()
 	TEXT[5]="Setup hugepage mappings for NUMA systems"
 	FUNC[5]="set_numa_pages"
 
-	TEXT[6]="Display current Ethernet/Crypto device settings"
+	TEXT[6]="Display current Ethernet/Crypto/Baseband device settings"
 	FUNC[6]="show_devices"
 
-	TEXT[7]="Bind Ethernet/Crypto device to IGB UIO module"
+	TEXT[7]="Bind Ethernet/Crypto/Baseband device to IGB UIO module"
 	FUNC[7]="bind_devices_to_igb_uio"
 
-	TEXT[8]="Bind Ethernet/Crypto device to VFIO module"
+	TEXT[8]="Bind Ethernet/Crypto/Baseband device to VFIO module"
 	FUNC[8]="bind_devices_to_vfio"
 
 	TEXT[9]="Setup VFIO permissions"
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
                   ` (5 preceding siblings ...)
  2019-05-11  0:06 ` [dpdk-dev] [PATCH 5/5] usertools: update to usertool to allow binding of baseband device Nic Chautru
@ 2019-05-13 11:10 ` Luca Boccassi
  2019-05-13 11:10   ` Luca Boccassi
  2019-05-14  0:07   ` Chautru, Nicolas
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
  7 siblings, 2 replies; 95+ messages in thread
From: Luca Boccassi @ 2019-05-13 11:10 UTC (permalink / raw)
  To: Nic Chautru, dev

On Fri, 2019-05-10 at 17:05 -0700, Nic Chautru wrote:
> This was deferred from 19.05 due to time running out. 
> Addition of a PMD for 4G FEC encoding and decoding functions for
> Intel PAC N300 FPGA. 
> Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
> The HW dependency is available now.
> 
> Nicolas Chautru (5):
>   baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC
>     N300     FPGA card
>   bbdev : Extension of BBDEV for 5G FEC
>   baseband/turbo_sw : Extension of turbo_sw for 5G FEC
>   test-bbdev : Update of bbdec test-app for FPGA and 5G testing
>   usertools: update to usertool to allow binding of baseband device

Hi,

Please add support for building this with Meson. Thanks!

-- 
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-13 11:10 ` [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Luca Boccassi
@ 2019-05-13 11:10   ` Luca Boccassi
  2019-05-14  0:07   ` Chautru, Nicolas
  1 sibling, 0 replies; 95+ messages in thread
From: Luca Boccassi @ 2019-05-13 11:10 UTC (permalink / raw)
  To: Nic Chautru, dev

On Fri, 2019-05-10 at 17:05 -0700, Nic Chautru wrote:
> This was deferred from 19.05 due to time running out. 
> Addition of a PMD for 4G FEC encoding and decoding functions for
> Intel PAC N300 FPGA. 
> Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
> The HW dependency is available now.
> 
> Nicolas Chautru (5):
>   baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC
>     N300     FPGA card
>   bbdev : Extension of BBDEV for 5G FEC
>   baseband/turbo_sw : Extension of turbo_sw for 5G FEC
>   test-bbdev : Update of bbdec test-app for FPGA and 5G testing
>   usertools: update to usertool to allow binding of baseband device

Hi,

Please add support for building this with Meson. Thanks!

-- 
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-13 11:10 ` [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Luca Boccassi
  2019-05-13 11:10   ` Luca Boccassi
@ 2019-05-14  0:07   ` Chautru, Nicolas
  2019-05-14  0:07     ` Chautru, Nicolas
  2019-05-14 20:44     ` Thomas Monjalon
  1 sibling, 2 replies; 95+ messages in thread
From: Chautru, Nicolas @ 2019-05-14  0:07 UTC (permalink / raw)
  To: Luca Boccassi, dev

Hi Luca, 

Is that fair to consider  support meson build in a separate patchset once this one is applied? 
	- Currently even on 19.05 there is no meson build support for the existing baseband driver ("turbo_sw"). 
	- I believe that meson build is still experimental. Default build framework still meant to be make. 

Thanks and regards ,
-Nic

-----Original Message-----
From: Luca Boccassi [mailto:bluca@debian.org] 
Sent: Monday, May 13, 2019 4:10 AM
To: Chautru, Nicolas <nicolas.chautru@intel.com>; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08

On Fri, 2019-05-10 at 17:05 -0700, Nic Chautru wrote:
> This was deferred from 19.05 due to time running out. 
> Addition of a PMD for 4G FEC encoding and decoding functions for Intel 
> PAC N300 FPGA.
> Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
> The HW dependency is available now.
> 
> Nicolas Chautru (5):
>   baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC
>     N300     FPGA card
>   bbdev : Extension of BBDEV for 5G FEC
>   baseband/turbo_sw : Extension of turbo_sw for 5G FEC
>   test-bbdev : Update of bbdec test-app for FPGA and 5G testing
>   usertools: update to usertool to allow binding of baseband device

Hi,

Please add support for building this with Meson. Thanks!

--
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-14  0:07   ` Chautru, Nicolas
@ 2019-05-14  0:07     ` Chautru, Nicolas
  2019-05-14 20:44     ` Thomas Monjalon
  1 sibling, 0 replies; 95+ messages in thread
From: Chautru, Nicolas @ 2019-05-14  0:07 UTC (permalink / raw)
  To: Luca Boccassi, dev

Hi Luca, 

Is that fair to consider  support meson build in a separate patchset once this one is applied? 
	- Currently even on 19.05 there is no meson build support for the existing baseband driver ("turbo_sw"). 
	- I believe that meson build is still experimental. Default build framework still meant to be make. 

Thanks and regards ,
-Nic

-----Original Message-----
From: Luca Boccassi [mailto:bluca@debian.org] 
Sent: Monday, May 13, 2019 4:10 AM
To: Chautru, Nicolas <nicolas.chautru@intel.com>; dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08

On Fri, 2019-05-10 at 17:05 -0700, Nic Chautru wrote:
> This was deferred from 19.05 due to time running out. 
> Addition of a PMD for 4G FEC encoding and decoding functions for Intel 
> PAC N300 FPGA.
> Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
> The HW dependency is available now.
> 
> Nicolas Chautru (5):
>   baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC
>     N300     FPGA card
>   bbdev : Extension of BBDEV for 5G FEC
>   baseband/turbo_sw : Extension of turbo_sw for 5G FEC
>   test-bbdev : Update of bbdec test-app for FPGA and 5G testing
>   usertools: update to usertool to allow binding of baseband device

Hi,

Please add support for building this with Meson. Thanks!

--
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
                   ` (6 preceding siblings ...)
  2019-05-13 11:10 ` [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Luca Boccassi
@ 2019-05-14 19:45 ` Nicolas Chautru
  2019-05-14 19:45   ` Nicolas Chautru
                     ` (6 more replies)
  7 siblings, 7 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

This was deferred from 19.05 due to time running out. 
Addition of a PMD for 4G FEC encoding and decoding functions for Intel PAC N300 FPGA. 
Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
The HW dependency is available now.

v2 : Cosmetic updates from ci/checkpatch

Nicolas Chautru (5):
  baseband/fpga_lte_fec: adding driver for FEC on FPGA
  bbdev: extension of BBDEV for 5G FEC
  baseband/turbo_sw: extension of turbosw for 5G FEC
  test-bbdev: update of bbdev test-app
  usertools: update to usertool for baseband device

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 ++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  521 +++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 +++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 +++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 ++
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 ++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 ++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 ++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 ++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 +++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 ++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    9 +-
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |   57 +-
 doc/guides/prog_guide/bbdev.rst                    |  509 +++-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2674 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 drivers/baseband/turbo_sw/Makefile                 |   15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  707 +++++-
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  137 +-
 lib/librte_bbdev/rte_bbdev_op.h                    |  577 ++++-
 mk/rte.app.mk                                      |    9 +-
 usertools/dpdk-devbind.py                          |   10 +-
 usertools/dpdk-setup.sh                            |    6 +-
 70 files changed, 27207 insertions(+), 404 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
@ 2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA Nicolas Chautru
                     ` (5 subsequent siblings)
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

This was deferred from 19.05 due to time running out. 
Addition of a PMD for 4G FEC encoding and decoding functions for Intel PAC N300 FPGA. 
Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
The HW dependency is available now.

v2 : Cosmetic updates from ci/checkpatch

Nicolas Chautru (5):
  baseband/fpga_lte_fec: adding driver for FEC on FPGA
  bbdev: extension of BBDEV for 5G FEC
  baseband/turbo_sw: extension of turbosw for 5G FEC
  test-bbdev: update of bbdev test-app
  usertools: update to usertool for baseband device

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 ++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  521 +++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 +++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 +++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 ++
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 ++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 ++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 ++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 ++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 +++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 ++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    9 +-
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |   57 +-
 doc/guides/prog_guide/bbdev.rst                    |  509 +++-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2674 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 drivers/baseband/turbo_sw/Makefile                 |   15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  707 +++++-
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  137 +-
 lib/librte_bbdev/rte_bbdev_op.h                    |  577 ++++-
 mk/rte.app.mk                                      |    9 +-
 usertools/dpdk-devbind.py                          |   10 +-
 usertools/dpdk-setup.sh                            |    6 +-
 70 files changed, 27207 insertions(+), 404 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
  2019-05-14 19:45   ` Nicolas Chautru
@ 2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
                       ` (2 more replies)
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 2/5] bbdev: extension of BBDEV for 5G FEC Nicolas Chautru
                     ` (4 subsequent siblings)
  6 siblings, 3 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Supports for FEC 4G PMD Driver on FPGA card PAC N300

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                                 |    6 +
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2674 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 mk/rte.app.mk                                      |    1 +
 9 files changed, 3107 insertions(+)
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map

diff --git a/config/common_base b/config/common_base
index 6b96e0e..ae52028 100644
--- a/config/common_base
+++ b/config/common_base
@@ -521,6 +521,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 # EXPERIMENTAL: API may change without prior notice
 #
 CONFIG_RTE_LIBRTE_BBDEV=y
+CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 
@@ -535,6 +536,11 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
 
 #
+# Compile PMD for Intel FPGA LTE FEC bbdev device
+#
+CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC=y
+
+#
 # Compile generic crypto device library
 #
 CONFIG_RTE_LIBRTE_CRYPTODEV=y
diff --git a/doc/guides/bbdevs/fpga_lte_fec.rst b/doc/guides/bbdevs/fpga_lte_fec.rst
new file mode 100644
index 0000000..066907d
--- /dev/null
+++ b/doc/guides/bbdevs/fpga_lte_fec.rst
@@ -0,0 +1,318 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation
+
+Intel(R) FPGA LTE FEC Poll Mode Driver
+======================================
+
+The BBDEV FPGA LTE FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
+Turbo Encode / Decode LTE wireless acceleration function, using Intel's PCI-e and FPGA
+based Vista Creek device.
+
+Features
+--------
+
+FPGA LTE FEC PMD supports the following features:
+
+- Turbo Encode in the DL with total throughput of 4.5 Gbits/s
+- Turbo Decode in the UL with total throughput of 1.5 Gbits/s assuming 8 decoder iterations
+- 8 VFs per PF (physical device)
+- Maximum of 32 UL queues per VF
+- Maximum of 32 DL queues per VF
+- PCIe Gen-3 x8 Interface
+- MSI-X
+- SR-IOV
+
+
+FPGA LTE FEC PMD supports the following BBDEV capabilities:
+
+* For the turbo encode operation:
+   - ``RTE_BBDEV_TURBO_CRC_24B_ATTACH`` :  set to attach CRC24B to CB(s)
+   - ``RTE_BBDEV_TURBO_RATE_MATCH`` :  if set then do not do Rate Match bypass
+   - ``RTE_BBDEV_TURBO_ENC_INTERRUPTS`` :  set for encoder dequeue interrupts
+
+
+* For the turbo decode operation:
+   - ``RTE_BBDEV_TURBO_CRC_TYPE_24B`` :  check CRC24B from CB(s)
+   - ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE`` :  perform subblock de-interleave
+   - ``RTE_BBDEV_TURBO_DEC_INTERRUPTS`` :  set for decoder dequeue interrupts
+   - ``RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN`` :  set if negative LLR encoder i/p is supported
+   - ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP`` :  keep CRC24B bits appended while decoding
+
+
+Limitations
+-----------
+
+FPGA LTE FEC does not support the following:
+
+- Scatter-Gather function
+
+
+Installation
+--------------
+
+Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
+default set of bbdev compile flags may be found in config/common_base, where for example
+the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
+set. It is assumed DPDK has been compiled for an icc 64-bit target using:
+
+.. code-block:: console
+
+  make install T=x86_64-native-linuxapp-icc
+
+
+DPDK requires hugepages to be configured as detailed in section 2 of the DPDK manual.
+The bbdev test application has been tested with a configuration 40 x 1GB hugepages. The
+hugepage configuration of a server may be examined using:
+
+.. code-block:: console
+
+   grep Huge* /proc/meminfo
+
+
+Initialization
+--------------
+
+When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
+
+.. code-block:: console
+
+  sudo lspci -vd1172:5052
+
+The physical and virtual functions are compatible with Linux UIO drivers:
+``vfio`` and ``igb_uio``. However, in order to work the FPGA LTE FEC device firstly needs
+to be bound to one of these linux drivers through DPDK.
+
+
+Bind PF UIO driver(s)
+~~~~~~~~~~~~~~~~~~~~~
+
+Install the DPDK igb_uio driver, bind it with the PF PCI device ID and use
+``lspci`` to confirm the PF device is under use by ``igb_uio`` DPDK UIO driver.
+
+The igb_uio driver may be bound to the PF PCI device using one of three methods:
+
+
+1. PCI functions (physical or virtual, depending on the use case) can be bound to
+the UIO driver by repeating this command for every function.
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  insmod ./build/kmod/igb_uio.ko
+  echo "1172 5052" > /sys/bus/pci/drivers/igb_uio/new_id
+  lspci -vd1172:
+
+
+2. Another way to bind PF with DPDK UIO driver is by using the ``dpdk-devbind.py`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-devbind.py -b igb_uio 0000:06:00.0
+
+where the PCI device ID (example: 0000:06:00.0) is obtained using lspci -vd1172:
+
+
+3. A third way to bind is to use ``dpdk-setup.sh`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-setup.sh
+
+  select 'Bind Ethernet/Crypto/Baseband device to IGB UIO module'
+  or
+  select 'Bind Ethernet/Crypto/Baseband device to VFIO module' depending on driver required
+  enter PCI device ID
+  select 'Display current Ethernet/Crypto/Baseband device settings' to confirm binding
+
+
+In the same way the FPGA LTE FEC PF can be bound with vfio, but vfio driver does not
+support SR-IOV configuration right out of the box, so it will need to be patched.
+
+
+Enable Virtual Functions
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+Now, it should be visible in the printouts that PCI PF is under igb_uio control
+"``Kernel driver in use: igb_uio``"
+
+To show the number of available VFs on the device, read ``sriov_totalvfs`` file..
+
+.. code-block:: console
+
+  cat /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_totalvfs
+
+  where 0000\:<b>\:<d>.<f> is the PCI device ID
+
+
+To enable VFs via igb_uio, echo the number of virtual functions intended to
+enable to ``max_vfs`` file..
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/max_vfs
+
+
+Afterwards, all VFs must be bound to appropriate UIO drivers as required, same
+way it was done with the physical function previously.
+
+Enabling SR-IOV via vfio driver is pretty much the same, except that the file
+name is different:
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_numvfs
+
+
+Configure the VFs through PF
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The PCI virtual functions must be configured before working or getting assigned
+to VMs/Containers. The configuration involves allocating the number of hardware
+queues, priorities, load balance, bandwidth and other settings necessary for the
+device to perform FEC functions.
+
+This configuration needs to be executed at least once after reboot or PCI FLR and can
+be achieved by using the function ``fpga_lte_fec_configure()``, which sets up the
+parameters defined in ``fpga_lte_fec_conf`` structure:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf {
+      bool pf_mode_en;
+      uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t ul_bandwidth;
+      uint8_t dl_bandwidth;
+      uint8_t ul_load_balance;
+      uint8_t dl_load_balance;
+      uint16_t flr_time_out;
+  };
+
+- ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
+  VFs are mutually exclusive and cannot run simultaneously.
+  Set to 1 for PF mode enabled.
+  If PF mode is enabled all queues available in the device are assigned
+  exclusively to PF and 0 queues given to VFs.
+
+- ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
+
+- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
+  allocates different bandwidth to UL and DL. The weight is configured by this
+  setting. The unit of weight is 3 code blocks. For example, if the code block
+  cbps (code block per second) ratio between UL and DL is 12:1, then the
+  configuration value should be set to 36:3. The schedule algorithm is based
+  on code block regardless the length of each block.
+
+- ``*l_load_balance``: hardware queues are load-balanced in a round-robin
+  fashion. Queues get filled first-in first-out until they reach a pre-defined
+  watermark level, if exceeded, they won't get assigned new code blocks..
+  This watermark is defined by this setting.
+
+  If all hardware queues exceeds the watermark, no code blocks will be
+  streamed in from UL/DL code block FIFO.
+
+- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
+  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
+  the FLR time out then set this setting to 0x262=610.
+
+
+An example configuration code calling the function ``fpga_lte_fec_configure()`` is shown
+below:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf conf;
+  unsigned int i;
+
+  memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+  conf.pf_mode_en = 1;
+
+  for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+      conf.vf_ul_queues_number[i] = 4;
+      conf.vf_dl_queues_number[i] = 4;
+  }
+  conf.ul_bandwidth = 12;
+  conf.dl_bandwidth = 5;
+  conf.dl_load_balance = 64;
+  conf.ul_load_balance = 64;
+
+  /* setup FPGA PF */
+  ret = fpga_lte_fec_configure(info->dev_name, &conf);
+  TEST_ASSERT_SUCCESS(ret,
+      "Failed to configure 4G FPGA PF for bbdev %s",
+      info->dev_name);
+
+
+Test Application
+----------------
+
+BBDEV provides a test application, ``test-bbdev.py`` and range of test data for testing
+the functionality of FPGA LTE FEC turbo encode and turbo decode, depending on the device's
+capabilities. The test application is located under app->test-bbdev folder and has the
+following options:
+
+.. code-block:: console
+
+  "-p", "--testapp-path": specifies path to the bbdev test app.
+  "-e", "--eal-params"	: EAL arguments which are passed to the test app.
+  "-t", "--timeout"	: Timeout in seconds (default=300).
+  "-c", "--test-cases"	: Defines test cases to run. Run all if not specified.
+  "-v", "--test-vector"	: Test vector path (default=dpdk_path+/app/test-bbdev/test_vectors/bbdev_null.data).
+  "-n", "--num-ops"	: Number of operations to process on device (default=32).
+  "-b", "--burst-size"	: Operations enqueue/dequeue burst size (default=32).
+  "-l", "--num-lcores"	: Number of lcores to run (default=16).
+  "-i", "--init-device" : Initialise PF device with default values.
+
+
+To execute the test application tool using simple turbo decode or turbo encode data,
+type one of the following:
+
+.. code-block:: console
+
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_dec_default.data
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_enc_default.data
+
+
+The test application ``test-bbdev.py``, supports the ability to configure the PF device with
+a default set of values, if the "-i" or "- -init-device" option is included. The default values
+are defined in test_bbdev_perf.c as:
+
+- VF_UL_QUEUE_VALUE 4
+- VF_DL_QUEUE_VALUE 4
+- UL_BANDWIDTH 3
+- DL_BANDWIDTH 3
+- UL_LOAD_BALANCE 128
+- DL_LOAD_BALANCE 128
+- FLR_TIMEOUT 610
+
+
+Test Vectors
+~~~~~~~~~~~~
+
+In addition to the simple turbo decoder and turbo encoder tests, bbdev also provides
+a range of additional tests under the test_vectors folder, which may be useful. The results
+of these tests will depend on the FPGA LTE FEC capabilities:
+
+* turbo decoder tests:
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
+
+
+* turbo encoder tests:
+   - ``turbo_enc_c1_k40_r0_e1190_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1194_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1196_rm.data``
+   - ``turbo_enc_c1_k40_r0_e272_rm.data``
+   - ``turbo_enc_c1_k6144_r0_e18444.data``
+   - ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+   - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
+   - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
+   - ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
+
diff --git a/doc/guides/bbdevs/index.rst b/doc/guides/bbdevs/index.rst
index 93276ed..005b95e 100644
--- a/doc/guides/bbdevs/index.rst
+++ b/doc/guides/bbdevs/index.rst
@@ -10,3 +10,4 @@ Baseband Device Drivers
 
     null
     turbo_sw
+    fpga_lte_fec
diff --git a/drivers/baseband/Makefile b/drivers/baseband/Makefile
index 4ec83b0..ceffc7d 100644
--- a/drivers/baseband/Makefile
+++ b/drivers/baseband/Makefile
@@ -10,5 +10,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL) += null
 DEPDIRS-null = $(core-libs)
 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += turbo_sw
 DEPDIRS-turbo_sw = $(core-libs)
+DIRS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec
+DEPDIRS-fpga_lte_fec = $(core-libs)
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/baseband/fpga_lte_fec/Makefile b/drivers/baseband/fpga_lte_fec/Makefile
new file mode 100644
index 0000000..aedc8f3
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/Makefile
@@ -0,0 +1,29 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_pmd_fpga_lte_fec.a
+
+# build flags
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_bbdev
+LDLIBS += -lrte_pci -lrte_bus_pci
+
+# versioning export map
+EXPORT_MAP := fpga_lte_fec_version.map
+
+# library version
+LIBABIVER := 1
+
+# library source files
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec.c
+
+# export include files
+SYMLINK-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC)-include += fpga_lte_fec.h
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
new file mode 100644
index 0000000..856b68e
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -0,0 +1,2674 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#include <unistd.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_dev.h>
+#include <rte_malloc.h>
+#include <rte_mempool.h>
+#include <rte_errno.h>
+#include <rte_pci.h>
+#include <rte_bus_pci.h>
+#include <rte_byteorder.h>
+#ifdef RTE_BBDEV_OFFLOAD_COST
+#include <rte_cycles.h>
+#endif
+
+#include <rte_bbdev.h>
+#include <rte_bbdev_pmd.h>
+
+#include "fpga_lte_fec.h"
+
+/* Turbo SW PMD logging ID */
+static int fpga_lte_fec_logtype;
+
+/* Helper macro for logging */
+#define rte_bbdev_log(level, fmt, ...) \
+	rte_log(RTE_LOG_ ## level, fpga_lte_fec_logtype, fmt "\n", \
+		##__VA_ARGS__)
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+#define rte_bbdev_log_debug(fmt, ...) \
+		rte_bbdev_log(DEBUG, "fpga_lte_fec: " fmt, \
+		##__VA_ARGS__)
+#else
+#define rte_bbdev_log_debug(fmt, ...)
+#endif
+
+/* FPGA LTE FEC driver names */
+#define FPGA_LTE_FEC_PF_DRIVER_NAME intel_fpga_lte_fec_pf
+#define FPGA_LTE_FEC_VF_DRIVER_NAME intel_fpga_lte_fec_vf
+
+/* FPGA LTE FEC PCI vendor & device IDs */
+#define FPGA_LTE_FEC_VENDOR_ID (0x1172)
+#define FPGA_LTE_FEC_PF_DEVICE_ID (0x5052)
+#define FPGA_LTE_FEC_VF_DEVICE_ID (0x5050)
+
+/* Align DMA descriptors to 256 bytes - cache-aligned */
+#define FPGA_RING_DESC_ENTRY_LENGTH (8)
+/* Ring size is in 256 bits (32 bytes) units */
+#define FPGA_RING_DESC_LEN_UNIT_BYTES (32)
+/* Maximum size of queue */
+#define FPGA_RING_MAX_SIZE (1024)
+#define FPGA_FLR_TIMEOUT_UNIT (16.384)
+
+#define FPGA_NUM_UL_QUEUES (32)
+#define FPGA_NUM_DL_QUEUES (32)
+#define FPGA_TOTAL_NUM_QUEUES (FPGA_NUM_UL_QUEUES + FPGA_NUM_DL_QUEUES)
+#define FPGA_NUM_INTR_VEC (FPGA_TOTAL_NUM_QUEUES - RTE_INTR_VEC_RXTX_OFFSET)
+
+#define FPGA_INVALID_HW_QUEUE_ID (0xFFFFFFFF)
+
+#define FPGA_QUEUE_FLUSH_TIMEOUT_US (1000)
+#define FPGA_TIMEOUT_CHECK_INTERVAL (5)
+
+/* FPGA LTE FEC Register mapping on BAR0 */
+enum {
+	FPGA_LTE_FEC_VERSION_ID = 0x00000000, /* len: 4B */
+	FPGA_LTE_FEC_CONFIGURATION = 0x00000004, /* len: 2B */
+	FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE = 0x00000008, /* len: 1B */
+	FPGA_LTE_FEC_LOAD_BALANCE_FACTOR = 0x0000000a, /* len: 2B */
+	FPGA_LTE_FEC_RING_DESC_LEN = 0x0000000c, /* len: 2B */
+	FPGA_LTE_FEC_FLR_TIME_OUT = 0x0000000e, /* len: 2B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW = 0x00000018, /* len: 4B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI = 0x0000001c, /* len: 4B */
+	FPGA_LTE_FEC_VF0_DEBUG = 0x00000020, /* len: 4B */
+	FPGA_LTE_FEC_VF1_DEBUG = 0x00000024, /* len: 4B */
+	FPGA_LTE_FEC_VF2_DEBUG = 0x00000028, /* len: 4B */
+	FPGA_LTE_FEC_VF3_DEBUG = 0x0000002c, /* len: 4B */
+	FPGA_LTE_FEC_VF4_DEBUG = 0x00000030, /* len: 4B */
+	FPGA_LTE_FEC_VF5_DEBUG = 0x00000034, /* len: 4B */
+	FPGA_LTE_FEC_VF6_DEBUG = 0x00000038, /* len: 4B */
+	FPGA_LTE_FEC_VF7_DEBUG = 0x0000003c, /* len: 4B */
+	FPGA_LTE_FEC_QUEUE_MAP = 0x00000040, /* len: 256B */
+	FPGA_LTE_FEC_RING_CTRL_REGS = 0x00000200  /* len: 2048B */
+};
+
+/* FPGA LTE FEC Ring Control Registers */
+enum {
+	FPGA_LTE_FEC_RING_HEAD_ADDR = 0x00000008,
+	FPGA_LTE_FEC_RING_SIZE = 0x00000010,
+	FPGA_LTE_FEC_RING_MISC = 0x00000014,
+	FPGA_LTE_FEC_RING_ENABLE = 0x00000015,
+	FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN = 0x00000016,
+	FPGA_LTE_FEC_RING_SHADOW_TAIL = 0x00000018,
+	FPGA_LTE_FEC_RING_HEAD_POINT = 0x0000001C
+};
+
+/* FPGA LTE FEC DESCRIPTOR ERROR */
+enum {
+	DESC_ERR_NO_ERR = 0x0,
+	DESC_ERR_K_OUT_OF_RANGE = 0x1,
+	DESC_ERR_K_NOT_NORMAL = 0x2,
+	DESC_ERR_KPAI_NOT_NORMAL = 0x3,
+	DESC_ERR_DESC_OFFSET_ERR = 0x4,
+	DESC_ERR_DESC_READ_FAIL = 0x8,
+	DESC_ERR_DESC_READ_TIMEOUT = 0x9,
+	DESC_ERR_DESC_READ_TLP_POISONED = 0xA,
+	DESC_ERR_CB_READ_FAIL = 0xC,
+	DESC_ERR_CB_READ_TIMEOUT = 0xD,
+	DESC_ERR_CB_READ_TLP_POISONED = 0xE
+};
+
+/* FPGA LTE FEC DMA Encoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_enc_desc {
+	uint32_t done:1,
+		rsrvd0:11,
+		error:4,
+		rsrvd1:16;
+	uint32_t ncb:16,
+		rsrvd2:14,
+		rv:2;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		crc_en:1,
+		rsrvd3:13,
+		offset:10,
+		rsrvd4:6;
+	uint16_t e;
+	uint16_t k;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint64_t cbs_in_op;
+		};
+
+		uint8_t sw_ctxt[FPGA_RING_DESC_LEN_UNIT_BYTES *
+					(FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE FEC DMA Decoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_dec_desc {
+	uint32_t done:1,
+		iter:5,
+		rsrvd0:2,
+		crc_pass:1,
+		rsrvd1:3,
+		error:4,
+		crc_type:1,
+		rsrvd2:7,
+		max_iter:5,
+		rsrvd3:3;
+	uint32_t rsrvd4;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		drop_crc:1,
+		rsrvd5:13,
+		offset:10,
+		rsrvd6:6;
+	uint16_t k;
+	uint16_t in_len;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint8_t cbs_in_op;
+		};
+
+		uint32_t sw_ctxt[8 * (FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE DMA Descriptor */
+union fpga_dma_desc {
+	struct fpga_dma_enc_desc enc_req;
+	struct fpga_dma_dec_desc dec_req;
+};
+
+/* FPGA LTE FEC Ring Control Register */
+struct __attribute__((__packed__)) fpga_ring_ctrl_reg {
+	uint64_t ring_base_addr;
+	uint64_t ring_head_addr;
+	uint16_t ring_size:11;
+	uint16_t rsrvd0;
+	union { /* Miscellaneous register */
+		uint8_t misc;
+		uint8_t max_ul_dec:5,
+			max_ul_dec_en:1,
+			rsrvd1:2;
+	};
+	uint8_t enable;
+	uint8_t flush_queue_en;
+	uint8_t rsrvd2;
+	uint16_t shadow_tail;
+	uint16_t rsrvd3;
+	uint16_t head_point;
+	uint16_t rsrvd4;
+
+};
+
+/* Private data structure for each FPGA FEC device */
+struct fpga_lte_fec_device {
+	/** Base address of MMIO registers (BAR0) */
+	void *mmio_base;
+	/** Base address of memory for sw rings */
+	void *sw_rings;
+	/** Physical address of sw_rings */
+	rte_iova_t sw_rings_phys;
+	/** Number of bytes available for each queue in device. */
+	uint32_t sw_ring_size;
+	/** Max number of entries available for each queue in device */
+	uint32_t sw_ring_max_depth;
+	/** Base address of response tail pointer buffer */
+	uint32_t *tail_ptrs;
+	/** Physical address of tail pointers */
+	rte_iova_t tail_ptr_phys;
+	/** Queues flush completion flag */
+	uint64_t *flush_queue_status;
+	/* Bitmap capturing which Queues are bound to the PF/VF */
+	uint64_t q_bound_bit_map;
+	/* Bitmap capturing which Queues have already been assigned */
+	uint64_t q_assigned_bit_map;
+	/** True if this is a PF FPGA FEC device */
+	bool pf_device;
+};
+
+/* Structure associated with each queue. */
+struct __rte_cache_aligned fpga_queue {
+	struct fpga_ring_ctrl_reg ring_ctrl_reg;  /* Ring Control Register */
+	union fpga_dma_desc *ring_addr;  /* Virtual address of software ring */
+	uint64_t *ring_head_addr;  /* Virtual address of completion_head */
+	uint64_t shadow_completion_head; /* Shadow completion head value */
+	uint16_t head_free_desc;  /* Ring head */
+	uint16_t tail;  /* Ring tail */
+	/* Mask used to wrap enqueued descriptors on the sw ring */
+	uint32_t sw_ring_wrap_mask;
+	uint32_t irq_enable;  /* Enable ops dequeue interrupts if set to 1 */
+	uint8_t q_idx;  /* Queue index */
+	struct fpga_lte_fec_device *d;
+	/* MMIO register of shadow_tail used to enqueue descriptors */
+	void *shadow_tail_addr;
+};
+
+/* Write to 16 bit MMIO register address */
+static inline void
+mmio_write_16(void *addr, uint16_t value)
+{
+	*((volatile uint16_t *)(addr)) = rte_cpu_to_le_16(value);
+}
+
+/* Write to 32 bit MMIO register address */
+static inline void
+mmio_write_32(void *addr, uint32_t value)
+{
+	*((volatile uint32_t *)(addr)) = rte_cpu_to_le_32(value);
+}
+
+/* Write to 64 bit MMIO register address */
+static inline void
+mmio_write_64(void *addr, uint64_t value)
+{
+	*((volatile uint64_t *)(addr)) = rte_cpu_to_le_64(value);
+}
+
+/* Write a 8 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_8(void *mmio_base, uint32_t offset, uint8_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	*((volatile uint8_t *)(reg_addr)) = payload;
+}
+
+/* Write a 16 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_16(void *mmio_base, uint32_t offset, uint16_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_16(reg_addr, payload);
+}
+
+/* Write a 32 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_32(void *mmio_base, uint32_t offset, uint32_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_32(reg_addr, payload);
+}
+
+/* Write a 64 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_64(void *mmio_base, uint32_t offset, uint64_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_64(reg_addr, payload);
+}
+
+/* Write a ring control register of a FPGA LTE FEC device */
+static inline void
+fpga_ring_reg_write(void *mmio_base, uint32_t offset,
+		struct fpga_ring_ctrl_reg payload)
+{
+	fpga_reg_write_64(mmio_base, offset, payload.ring_base_addr);
+	fpga_reg_write_64(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_ADDR,
+			payload.ring_head_addr);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SIZE,
+			payload.ring_size);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			payload.head_point);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN,
+			payload.flush_queue_en);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			payload.shadow_tail);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_MISC,
+			payload.misc);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload.enable);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint32_t
+fpga_reg_read_32(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint32_t ret = *((volatile uint32_t *)(reg_addr));
+	return rte_le_to_cpu_32(ret);
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Read a register of FPGA LTE FEC device */
+static uint8_t
+fpga_reg_read_8(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	return *((volatile uint8_t *)(reg_addr));
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint16_t
+fpga_reg_read_16(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint16_t ret = *((volatile uint16_t *)(reg_addr));
+	return rte_le_to_cpu_16(ret);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint64_t
+fpga_reg_read_64(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint64_t ret = *((volatile uint64_t *)(reg_addr));
+	return rte_le_to_cpu_64(ret);
+}
+
+/* Read Ring Control Register of FPGA LTE FEC device */
+static inline void
+print_ring_reg_debug_info(void *mmio_base, uint32_t offset)
+{
+	rte_bbdev_log_debug(
+		"FPGA MMIO base address @ %p | Ring Control Register @ offset = 0x%08"
+		PRIx32, mmio_base, offset);
+	rte_bbdev_log_debug(
+		"RING_BASE_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset));
+	rte_bbdev_log_debug(
+		"RING_HEAD_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_ADDR));
+	rte_bbdev_log_debug(
+		"RING_SIZE = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SIZE));
+	rte_bbdev_log_debug(
+		"RING_MISC = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_MISC));
+	rte_bbdev_log_debug(
+		"RING_ENABLE = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_ENABLE));
+	rte_bbdev_log_debug(
+		"RING_FLUSH_QUEUE_EN = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN));
+	rte_bbdev_log_debug(
+		"RING_SHADOW_TAIL = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SHADOW_TAIL));
+	rte_bbdev_log_debug(
+		"RING_HEAD_POINT = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_POINT));
+}
+
+/* Read Static Register of FPGA LTE FEC device */
+static inline void
+print_static_reg_debug_info(void *mmio_base)
+{
+	uint16_t config = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_CONFIGURATION);
+	uint8_t qmap_done = fpga_reg_read_8(mmio_base,
+			FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE);
+	uint16_t lb_factor = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_LOAD_BALANCE_FACTOR);
+	uint16_t ring_desc_len = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_RING_DESC_LEN);
+	uint16_t flr_time_out = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_FLR_TIME_OUT);
+
+	rte_bbdev_log_debug("UL.DL Weights = %u.%u",
+			((uint8_t)config), ((uint8_t)(config >> 8)));
+	rte_bbdev_log_debug("UL.DL Load Balance = %u.%u",
+			((uint8_t)lb_factor), ((uint8_t)(lb_factor >> 8)));
+	rte_bbdev_log_debug("Queue-PF/VF Mapping Table = %s",
+			(qmap_done > 0) ? "READY" : "NOT-READY");
+	rte_bbdev_log_debug("Ring Descriptor Size = %u bytes",
+			ring_desc_len*FPGA_RING_DESC_LEN_UNIT_BYTES);
+	rte_bbdev_log_debug("FLR Timeout = %f usec",
+			(float)flr_time_out*FPGA_FLR_TIMEOUT_UNIT);
+}
+
+/* Print decode DMA Descriptor of FPGA LTE FEC device */
+static void
+print_dma_dec_desc_debug_info(union fpga_dma_desc *desc)
+{
+	rte_bbdev_log_debug("DMA response desc %p\n"
+		"\t-- done(%"PRIu32") | iter(%"PRIu32") | crc_pass(%"PRIu32")"
+		" | error (%"PRIu32") | crc_type(%"PRIu32")\n"
+		"\t-- max_iter(%"PRIu32") | bypass_rm(%"PRIu32") | "
+		"irq_en (%"PRIu32") | drop_crc(%"PRIu32") | offset(%"PRIu32")\n"
+		"\t-- k(%"PRIu32") | in_len (%"PRIu16") | op_add(%p)\n"
+		"\t-- cbs_in_op(%"PRIu32") | in_add (0x%08"PRIx32"%08"PRIx32") | "
+		"out_add (0x%08"PRIx32"%08"PRIx32")",
+		desc,
+		(uint32_t)desc->dec_req.done,
+		(uint32_t)desc->dec_req.iter,
+		(uint32_t)desc->dec_req.crc_pass,
+		(uint32_t)desc->dec_req.error,
+		(uint32_t)desc->dec_req.crc_type,
+		(uint32_t)desc->dec_req.max_iter,
+		(uint32_t)desc->dec_req.bypass_rm,
+		(uint32_t)desc->dec_req.irq_en,
+		(uint32_t)desc->dec_req.drop_crc,
+		(uint32_t)desc->dec_req.offset,
+		(uint32_t)desc->dec_req.k,
+		(uint16_t)desc->dec_req.in_len,
+		desc->dec_req.op_addr,
+		(uint32_t)desc->dec_req.cbs_in_op,
+		(uint32_t)desc->dec_req.in_addr_hi,
+		(uint32_t)desc->dec_req.in_addr_lw,
+		(uint32_t)desc->dec_req.out_addr_hi,
+		(uint32_t)desc->dec_req.out_addr_lw);
+}
+#endif
+
+static int
+fpga_setup_queues(struct rte_bbdev *dev, uint16_t num_queues, int socket_id)
+{
+	/* Number of queues bound to a PF/VF */
+	uint32_t hw_q_num = 0;
+	uint32_t ring_size, payload, address, q_id, offset;
+	rte_iova_t phys_addr;
+	struct fpga_ring_ctrl_reg ring_reg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	if (!(fpga_reg_read_32(fpga_dev->mmio_base, address) & 0x1)) {
+		rte_bbdev_log(ERR,
+				"Queue-PF/VF mapping is not set! Was PF configured for device (%s) ?",
+				dev->data->name);
+		return -EPERM;
+	}
+
+	/* Clear queue registers structure */
+	memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+
+	/* Scan queue map.
+	 * If a queue is valid and mapped to a calling PF/VF the read value is
+	 * replaced with a queue ID and if it's not then
+	 * FPGA_INVALID_HW_QUEUE_ID is returned.
+	 */
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(fpga_dev->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+
+		rte_bbdev_log_debug("%s: queue ID: %u, registry queue ID: %u",
+				dev->device->name, q_id, hw_q_id);
+
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID) {
+			fpga_dev->q_bound_bit_map |= (1ULL << q_id);
+			/* Clear queue register of found queue */
+			offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+				(sizeof(struct fpga_ring_ctrl_reg) * q_id);
+			fpga_ring_reg_write(fpga_dev->mmio_base,
+					offset, ring_reg);
+			++hw_q_num;
+		}
+	}
+	if (hw_q_num == 0) {
+		rte_bbdev_log(ERR,
+			"No HW queues assigned to this device. Probably this is a VF configured for PF mode. Check device configuration!");
+		return -ENODEV;
+	}
+
+	if (num_queues > hw_q_num) {
+		rte_bbdev_log(ERR,
+			"Not enough queues for device %s! Requested: %u, available: %u",
+			dev->device->name, num_queues, hw_q_num);
+		return -EINVAL;
+	}
+
+	ring_size = FPGA_RING_MAX_SIZE * sizeof(struct fpga_dma_dec_desc);
+
+	/* Enforce 32 byte alignment */
+	RTE_BUILD_BUG_ON((RTE_CACHE_LINE_SIZE % 32) != 0);
+
+	/* Allocate memory for SW descriptor rings */
+	fpga_dev->sw_rings = rte_zmalloc_socket(dev->device->driver->name,
+			num_queues * ring_size, RTE_CACHE_LINE_SIZE,
+			socket_id);
+	if (fpga_dev->sw_rings == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u sw_rings",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	fpga_dev->sw_rings_phys = rte_malloc_virt2iova(fpga_dev->sw_rings);
+	fpga_dev->sw_ring_size = ring_size;
+	fpga_dev->sw_ring_max_depth = FPGA_RING_MAX_SIZE;
+
+	/* Allocate memory for ring flush status */
+	fpga_dev->flush_queue_status = rte_zmalloc_socket(NULL,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, socket_id);
+	if (fpga_dev->flush_queue_status == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u flush_queue_status",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	/* Set the flush status address registers */
+	phys_addr = rte_malloc_virt2iova(fpga_dev->flush_queue_status);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW;
+	payload = (uint32_t)(phys_addr);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI;
+	payload = (uint32_t)(phys_addr >> 32);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	return 0;
+}
+
+static int
+fpga_dev_close(struct rte_bbdev *dev)
+{
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	rte_free(fpga_dev->sw_rings);
+	rte_free(fpga_dev->flush_queue_status);
+
+	return 0;
+}
+
+static void
+fpga_dev_info_get(struct rte_bbdev *dev,
+		struct rte_bbdev_driver_info *dev_info)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint32_t q_id = 0;
+
+	/* TODO RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN and numbers of buffers are set
+	 * to temporary values as they are required by test application while
+	 * validation phase.
+	 */
+	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+		{
+			.type = RTE_BBDEV_OP_TURBO_DEC,
+			.cap.turbo_dec = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_TYPE_24B |
+					RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE |
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS |
+					RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN |
+					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
+				.max_llr_modulus = INT8_MAX,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_hard_out =
+					RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_soft_out = 0
+			}
+		},
+		{
+			.type = RTE_BBDEV_OP_TURBO_ENC,
+			.cap.turbo_enc = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_24B_ATTACH |
+					RTE_BBDEV_TURBO_RATE_MATCH |
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_MAX_CODE_BLOCKS
+			}
+		},
+		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
+	};
+
+	static struct rte_bbdev_queue_conf default_queue_conf;
+	default_queue_conf.socket = dev->data->socket_id;
+	default_queue_conf.queue_size = FPGA_RING_MAX_SIZE;
+
+
+	dev_info->driver_name = dev->device->driver->name;
+	dev_info->queue_size_lim = FPGA_RING_MAX_SIZE;
+	dev_info->hardware_accelerated = true;
+	dev_info->min_alignment = 64;
+	dev_info->default_queue_conf = default_queue_conf;
+	dev_info->capabilities = bbdev_capabilities;
+	dev_info->cpu_flag_reqs = NULL;
+
+	/* Calculates number of queues assigned to device */
+	dev_info->max_num_queues = 0;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(d->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID)
+			dev_info->max_num_queues++;
+	}
+}
+
+/**
+ * Find index of queue bound to current PF/VF which is unassigned. Return -1
+ * when there is no available queue
+ */
+static int
+fpga_find_free_queue_idx(struct rte_bbdev *dev,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint64_t q_idx;
+	uint8_t i = 0;
+	uint8_t range = FPGA_TOTAL_NUM_QUEUES >> 1;
+
+	if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC) {
+		i = FPGA_NUM_DL_QUEUES;
+		range = FPGA_TOTAL_NUM_QUEUES;
+	}
+
+	for (; i < range; ++i) {
+		q_idx = 1ULL << i;
+		/* Check if index of queue is bound to current PF/VF */
+		if (d->q_bound_bit_map & q_idx)
+			/* Check if found queue was not already assigned */
+			if (!(d->q_assigned_bit_map & q_idx)) {
+				d->q_assigned_bit_map |= q_idx;
+				return i;
+			}
+	}
+
+	rte_bbdev_log(INFO, "Failed to find free queue on %s", dev->data->name);
+
+	return -1;
+}
+
+static int
+fpga_queue_setup(struct rte_bbdev *dev, uint16_t queue_id,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	uint32_t address, ring_offset;
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q;
+	int8_t q_idx;
+
+	/* Check if there is a free queue to assign */
+	q_idx = fpga_find_free_queue_idx(dev, conf);
+	if (q_idx == -1)
+		return -1;
+
+	/* Allocate the queue data structure. */
+	q = rte_zmalloc_socket(dev->device->driver->name, sizeof(*q),
+			RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_bbdev_log(ERR, "Failed to allocate queue memory");
+		return -ENOMEM;
+	}
+
+	q->d = d;
+	q->q_idx = q_idx;
+
+	/* Set ring_base_addr */
+	q->ring_addr = RTE_PTR_ADD(d->sw_rings, (d->sw_ring_size * queue_id));
+	q->ring_ctrl_reg.ring_base_addr = d->sw_rings_phys +
+			(d->sw_ring_size * queue_id);
+
+	/* Allocate memory for Completion Head variable*/
+	q->ring_head_addr = rte_zmalloc_socket(dev->device->driver->name,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q->ring_head_addr == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u completion_head",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+	/* Set ring_head_addr */
+	q->ring_ctrl_reg.ring_head_addr =
+			rte_malloc_virt2iova(q->ring_head_addr);
+
+	/* Clear shadow_completion_head */
+	q->shadow_completion_head = 0;
+
+	/* Set ring_size */
+	if (conf->queue_size > FPGA_RING_MAX_SIZE) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Size of queue is too big %d (MAX: %d ) for %s:%u",
+				conf->queue_size, FPGA_RING_MAX_SIZE,
+				dev->device->driver->name, dev->data->dev_id);
+		return -EINVAL;
+	}
+	q->ring_ctrl_reg.ring_size = conf->queue_size;
+
+	/* Set Miscellaneous FPGA register*/
+	/* Max iteration number for TTI mitigation - todo */
+	q->ring_ctrl_reg.max_ul_dec = 0;
+	/* Enable max iteration number for TTI - todo */
+	q->ring_ctrl_reg.max_ul_dec_en = 0;
+
+	/* Enable the ring */
+	q->ring_ctrl_reg.enable = 1;
+
+	/* Set FPGA head_point and tail registers */
+	q->ring_ctrl_reg.head_point = q->tail = 0;
+
+	/* Set FPGA shadow_tail register */
+	q->ring_ctrl_reg.shadow_tail = q->tail;
+
+	/* Calculates the ring offset for found queue */
+	ring_offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q_idx);
+
+	/* Set FPGA Ring Control Registers */
+	fpga_ring_reg_write(d->mmio_base, ring_offset, q->ring_ctrl_reg);
+
+	/* Store MMIO register of shadow_tail */
+	address = ring_offset + FPGA_LTE_FEC_RING_SHADOW_TAIL;
+	q->shadow_tail_addr = RTE_PTR_ADD(d->mmio_base, address);
+
+	q->head_free_desc = q->tail;
+
+	/* Set wrap mask */
+	q->sw_ring_wrap_mask = conf->queue_size - 1;
+
+	rte_bbdev_log_debug("Setup dev%u q%u: queue_idx=%u",
+			dev->data->dev_id, queue_id, q->q_idx);
+
+	dev->data->queues[queue_id].queue_private = q;
+
+	rte_bbdev_log_debug("BBDEV queue[%d] set up for FPGA queue[%d]",
+			queue_id, q_idx);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Read FPGA Ring Control Registers after configuration*/
+	print_ring_reg_debug_info(d->mmio_base, ring_offset);
+#endif
+	return 0;
+}
+
+static int
+fpga_queue_release(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	struct fpga_ring_ctrl_reg ring_reg;
+	uint32_t offset;
+
+	rte_bbdev_log_debug("FPGA Queue[%d] released", queue_id);
+
+	if (q != NULL) {
+		memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+		offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+		/* Disable queue */
+		fpga_reg_write_8(d->mmio_base,
+				offset + FPGA_LTE_FEC_RING_ENABLE, 0x00);
+		/* Clear queue registers */
+		fpga_ring_reg_write(d->mmio_base, offset, ring_reg);
+
+		/* Mark the Queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q->q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		dev->data->queues[queue_id].queue_private = NULL;
+	}
+
+	return 0;
+}
+
+/* Function starts a device queue. */
+static int
+fpga_queue_start(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t enable = 0x01;
+	uint16_t zero = 0x0000;
+
+	/* Clear queue head and tail variables */
+	q->tail = q->head_free_desc = 0;
+
+	/* Clear FPGA head_point and tail registers */
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			zero);
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			zero);
+
+	/* Enable queue */
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			enable);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] started", queue_id);
+	return 0;
+}
+
+/* Function stops a device queue. */
+static int
+fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t payload = 0x01;
+	uint8_t counter = 0;
+	uint8_t timeout = FPGA_QUEUE_FLUSH_TIMEOUT_US /
+			FPGA_TIMEOUT_CHECK_INTERVAL;
+
+	/* Set flush_queue_en bit to trigger queue flushing */
+	fpga_reg_write_8(d->mmio_base,
+			offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN, payload);
+
+	/** Check if queue flush is completed.
+	 * FPGA will update the completion flag after queue flushing is
+	 * completed. If completion flag is not updated within 1ms it is
+	 * considered as a failure.
+	 */
+	while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) {
+		if (counter > timeout) {
+			rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d",
+					queue_id);
+			return -1;
+		}
+		usleep(FPGA_TIMEOUT_CHECK_INTERVAL);
+		counter++;
+	}
+
+	/* Disable queue */
+	payload = 0x00;
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] stopped", queue_id);
+	return 0;
+}
+
+static inline uint16_t
+get_queue_id(struct rte_bbdev_data *data, uint8_t q_idx)
+{
+	uint16_t queue_id;
+
+	for (queue_id = 0; queue_id < data->num_queues; ++queue_id) {
+		struct fpga_queue *q = data->queues[queue_id].queue_private;
+		if (q != NULL && q->q_idx == q_idx)
+			return queue_id;
+	}
+
+	return -1;
+}
+
+/* Interrupt handler triggered by FPGA dev for handling specific interrupt */
+static void
+fpga_dev_interrupt_handler(void *cb_arg)
+{
+	struct rte_bbdev *dev = cb_arg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+	struct fpga_queue *q;
+	uint64_t ring_head;
+	uint64_t q_idx;
+	uint16_t queue_id;
+	uint8_t i;
+
+	/* Scan queue assigned to this device */
+	for (i = 0; i < FPGA_TOTAL_NUM_QUEUES; ++i) {
+		q_idx = 1ULL << i;
+		if (fpga_dev->q_bound_bit_map & q_idx) {
+			queue_id = get_queue_id(dev->data, i);
+			if (queue_id == (uint16_t) -1)
+				continue;
+
+			/* Check if completion head was changed */
+			q = dev->data->queues[queue_id].queue_private;
+			ring_head = *q->ring_head_addr;
+			if (q->shadow_completion_head != ring_head &&
+				q->irq_enable == 1) {
+				q->shadow_completion_head = ring_head;
+				rte_bbdev_pmd_callback_process(
+						dev,
+						RTE_BBDEV_EVENT_DEQUEUE,
+						&queue_id);
+			}
+		}
+	}
+}
+
+static int
+fpga_queue_intr_enable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle))
+		return -ENOTSUP;
+
+	q->irq_enable = 1;
+
+	return 0;
+}
+
+static int
+fpga_queue_intr_disable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	q->irq_enable = 0;
+
+	return 0;
+}
+
+static int
+fpga_intr_enable(struct rte_bbdev *dev)
+{
+	int ret;
+	uint8_t i;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle)) {
+		rte_bbdev_log(ERR, "Multiple intr vector is not supported by FPGA (%s)",
+				dev->data->name);
+		return -ENOTSUP;
+	}
+
+	/* Create event file descriptors for each of 64 queue. Event fds will be
+	 * mapped to FPGA IRQs in rte_intr_enable(). This is a 1:1 mapping where
+	 * the IRQ number is a direct translation to the queue number.
+	 *
+	 * 63 (FPGA_NUM_INTR_VEC) event fds are created as rte_intr_enable()
+	 * mapped the first IRQ to already created interrupt event file
+	 * descriptor (intr_handle->fd).
+	 */
+	if (rte_intr_efd_enable(dev->intr_handle, FPGA_NUM_INTR_VEC)) {
+		rte_bbdev_log(ERR, "Failed to create fds for %u queues",
+				dev->data->num_queues);
+		return -1;
+	}
+
+	/* TODO Each event file descriptor is overwritten by interrupt event
+	 * file descriptor. That descriptor is added to epoll observed list.
+	 * It ensures that callback function assigned to that descriptor will
+	 * invoked when any FPGA queue issues interrupt.
+	 */
+	for (i = 0; i < FPGA_NUM_INTR_VEC; ++i)
+		dev->intr_handle->efds[i] = dev->intr_handle->fd;
+
+	if (!dev->intr_handle->intr_vec) {
+		dev->intr_handle->intr_vec = rte_zmalloc("intr_vec",
+				dev->data->num_queues * sizeof(int), 0);
+		if (!dev->intr_handle->intr_vec) {
+			rte_bbdev_log(ERR, "Failed to allocate %u vectors",
+					dev->data->num_queues);
+			return -ENOMEM;
+		}
+	}
+
+	ret = rte_intr_enable(dev->intr_handle);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't enable interrupts for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	ret = rte_intr_callback_register(dev->intr_handle,
+			fpga_dev_interrupt_handler, dev);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't register interrupt callback for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct rte_bbdev_ops fpga_ops = {
+	.setup_queues = fpga_setup_queues,
+	.intr_enable = fpga_intr_enable,
+	.close = fpga_dev_close,
+	.info_get = fpga_dev_info_get,
+	.queue_setup = fpga_queue_setup,
+	.queue_stop = fpga_queue_stop,
+	.queue_start = fpga_queue_start,
+	.queue_release = fpga_queue_release,
+	.queue_intr_enable = fpga_queue_intr_enable,
+	.queue_intr_disable = fpga_queue_intr_disable
+};
+
+static inline void
+fpga_dma_enqueue(struct fpga_queue *q, uint16_t num_desc,
+		struct rte_bbdev_stats *queue_stats)
+{
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = 0;
+	queue_stats->acc_offload_cycles = 0;
+#else
+	RTE_SET_USED(queue_stats);
+#endif
+
+	/* Update tail and shadow_tail register */
+	q->tail = (q->tail + num_desc) & q->sw_ring_wrap_mask;
+
+	rte_wmb();
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	/* Start time measurement for enqueue function offload. */
+	start_time = rte_rdtsc_precise();
+#endif
+	mmio_write_16(q->shadow_tail_addr, q->tail);
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	rte_wmb();
+	queue_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+}
+
+/* Calculates number of CBs in processed encoder TB based on 'r' and input
+ * length.
+ */
+static inline uint8_t
+get_num_cbs_in_op_enc(struct rte_bbdev_op_turbo_enc *turbo_enc)
+{
+	uint8_t c, c_neg, r, crc24_bits = 0;
+	uint16_t k, k_neg, k_pos;
+	uint8_t cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_enc->input.length;
+	r = turbo_enc->tb_params.r;
+	c = turbo_enc->tb_params.c;
+	c_neg = turbo_enc->tb_params.c_neg;
+	k_neg = turbo_enc->tb_params.k_neg;
+	k_pos = turbo_enc->tb_params.k_pos;
+	crc24_bits = 24;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		length -= (k - crc24_bits) >> 3;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Calculates number of CBs in processed decoder TB based on 'r' and input
+ * length.
+ */
+static inline uint16_t
+get_num_cbs_in_op_dec(struct rte_bbdev_op_turbo_dec *turbo_dec)
+{
+	uint8_t c, c_neg, r = 0;
+	uint16_t kw, k, k_neg, k_pos, cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_dec->input.length;
+	r = turbo_dec->tb_params.r;
+	c = turbo_dec->tb_params.c;
+	c_neg = turbo_dec->tb_params.c_neg;
+	k_neg = turbo_dec->tb_params.k_neg;
+	k_pos = turbo_dec->tb_params.k_pos;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+		length -= kw;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Read flag value 0/1/ from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
+/* Print an error if a descriptor error has occurred.
+ *  Return 0 on success, 1 on failure
+ */
+static inline int
+check_desc_error(uint32_t error_code) {
+	switch (error_code) {
+	case DESC_ERR_NO_ERR:
+		return 0;
+	case DESC_ERR_K_OUT_OF_RANGE:
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144)");
+		break;
+	case DESC_ERR_K_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range");
+		break;
+	case DESC_ERR_KPAI_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only");
+		break;
+	case DESC_ERR_DESC_OFFSET_ERR:
+		rte_bbdev_log(ERR, "Queue offset does not meet the expectation in the FPGA");
+		break;
+	case (DESC_ERR_K_OUT_OF_RANGE | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144) and queue offset error");
+		break;
+	case (DESC_ERR_K_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range and queue offset error");
+		break;
+	case (DESC_ERR_KPAI_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only and queue offset error");
+		break;
+	case DESC_ERR_DESC_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for descriptor read");
+		break;
+	case DESC_ERR_DESC_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Descriptor read time-out");
+		break;
+	case DESC_ERR_DESC_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Descriptor read TLP poisoned");
+		break;
+	case DESC_ERR_CB_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for code block");
+		break;
+	case DESC_ERR_CB_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Code block read time-out");
+		break;
+	case DESC_ERR_CB_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Code block read TLP poisoned");
+		break;
+	default:
+		rte_bbdev_log(ERR, "Descriptor error unknown error code %u",
+				error_code);
+		break;
+	}
+	return 1;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param k
+ *   K value (length of input in bits).
+ * @param e
+ *   E value (length of output in bits).
+ * @param ncb
+ *   Ncb value (size of the soft buffer).
+ * @param out_length
+ *   Length of output buffer
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_te_fill(struct rte_bbdev_enc_op *op,
+		struct fpga_dma_enc_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t k, uint16_t e, uint16_t ncb,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+
+{
+	/* reset */
+	desc->done = 0;
+	desc->crc_en = check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_CRC_24B_ATTACH);
+	desc->bypass_rm = !check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_RATE_MATCH);
+	desc->k = k;
+	desc->e = e;
+	desc->ncb = ncb;
+	desc->rv = op->turbo_enc.rv_index;
+	desc->offset = desc_offset;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param in_length
+ *   Length of an input.
+ * @param k
+ *   K value (length of an output in bits).
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_td_fill(struct rte_bbdev_dec_op *op,
+		struct fpga_dma_dec_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t in_length, uint16_t k,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+{
+	/* reset */
+	desc->done = 0;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+	desc->in_len = in_length;
+	desc->k = k;
+	desc->crc_type = !check_bit(op->turbo_dec.op_flags,
+			RTE_BBDEV_TURBO_CRC_TYPE_24B);
+	if ((op->turbo_dec.code_block_mode == 0)
+		&& !check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		desc->drop_crc = 1;
+	desc->max_iter = op->turbo_dec.iter_max * 2;
+	desc->offset = desc_offset;
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo encoder parameters */
+static int
+validate_enc_op(struct rte_bbdev_enc_op *op)
+{
+	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
+	uint16_t kw, kw_neg, kw_pos;
+
+	if (turbo_enc->input.length >
+			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return -1;
+	}
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_enc->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_enc->output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid output pointer");
+		return -1;
+	}
+	if (turbo_enc->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_enc->rv_index);
+		return -1;
+	}
+	if (turbo_enc->code_block_mode != 0 &&
+			turbo_enc->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_enc->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_enc->code_block_mode == 0) {
+		tb = &turbo_enc->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+				&& tb->r < tb->cab) {
+			rte_bbdev_log(ERR,
+					"ea (%u) is less than %u or it is not even",
+					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+				&& tb->c > tb->cab) {
+			rte_bbdev_log(ERR,
+					"eb (%u) is less than %u or it is not even",
+					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
+			rte_bbdev_log(ERR,
+					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
+					tb->ncb_neg, tb->k_neg, kw_neg);
+			return -1;
+		}
+
+		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
+			rte_bbdev_log(ERR,
+					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
+					tb->ncb_pos, tb->k_pos, kw_pos);
+			return -1;
+		}
+		if (tb->r > (tb->c - 1)) {
+			rte_bbdev_log(ERR,
+					"r (%u) is greater than c - 1 (%u)",
+					tb->r, tb->c - 1);
+			return -1;
+		}
+	} else {
+		cb = &turbo_enc->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+
+		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+			rte_bbdev_log(ERR,
+					"e (%u) is less than %u or it is not even",
+					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
+		if (cb->ncb < cb->k || cb->ncb > kw) {
+			rte_bbdev_log(ERR,
+					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
+					cb->ncb, cb->k, kw);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline char *
+mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
+{
+	if (unlikely(len > rte_pktmbuf_tailroom(m)))
+		return NULL;
+
+	char *tail = (char *)m->buf_addr + m->data_off + m->data_len;
+	m->data_len = (uint16_t)(m->data_len + len);
+	m_head->pkt_len  = (m_head->pkt_len + len);
+	return tail;
+}
+
+static inline int
+enqueue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	total_left = op->turbo_enc.input.length;
+	k = op->turbo_enc.cb_params.k;
+	e = op->turbo_enc.cb_params.e;
+	ncb = op->turbo_enc.cb_params.ncb;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		in_length = ((k - 24) >> 3);
+	else
+		in_length = k >> 3;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_RATE_MATCH))
+		out_length = (e + 7) >> 3;
+	else
+		out_length = (k >> 3) * 3 + 2;
+
+	mbuf_append(output, output, out_length);
+
+	/* Offset into the ring */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	/* Setup DMA Descriptor */
+	desc = q->ring_addr + ring_offset;
+
+	ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output, k, e,
+			ncb, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_enc.output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+			"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+static inline int
+enqueue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c, crc24_bits = 0;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t mbuf_total_left, in_length, out_length, in_offset, out_offset;
+	uint32_t seg_total_left;
+	uint16_t current_enqueued_cbs = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output_head = output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	mbuf_total_left = op->turbo_enc.input.length;
+
+	c = op->turbo_enc.tb_params.c;
+	r = op->turbo_enc.tb_params.r;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		crc24_bits = 24;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+
+		e = (r < op->turbo_enc.tb_params.cab) ?
+				op->turbo_enc.tb_params.ea :
+				op->turbo_enc.tb_params.eb;
+		k = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.k_neg :
+				op->turbo_enc.tb_params.k_pos;
+		ncb = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.ncb_neg :
+				op->turbo_enc.tb_params.ncb_pos;
+
+		in_length = ((k - crc24_bits) >> 3);
+
+		if (check_bit(op->turbo_enc.op_flags,
+			RTE_BBDEV_TURBO_RATE_MATCH))
+			out_length = (e + 7) >> 3;
+		else
+			out_length = (k >> 3) * 3 + 2;
+
+		mbuf_append(output_head, output, out_length);
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output,
+				k, e, ncb, in_offset, out_offset, ring_offset,
+				cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		rte_bbdev_log_debug("DMA request desc %p", desc);
+
+		/* Update lengths */
+		op->turbo_enc.output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo decoder parameters */
+static int
+validate_dec_op(struct rte_bbdev_dec_op *op)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_dec->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_dec->hard_output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid hard_output pointer");
+		return -1;
+	}
+	if (turbo_dec->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_dec->rv_index);
+		return -1;
+	}
+	if (turbo_dec->iter_min < 1) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is less than 1",
+				turbo_dec->iter_min);
+		return -1;
+	}
+	if (turbo_dec->iter_max <= 2) {
+		rte_bbdev_log(ERR,
+				"iter_max (%u) is less than or equal to 2",
+				turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->iter_min > turbo_dec->iter_max) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is greater than iter_max (%u)",
+				turbo_dec->iter_min, turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->code_block_mode != 0 &&
+			turbo_dec->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_dec->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_dec->code_block_mode == 0) {
+
+		if ((turbo_dec->op_flags &
+			RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+			!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+			rte_bbdev_log(ERR,
+				"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP should accompany RTE_BBDEV_TURBO_CRC_TYPE_24B");
+			return -1;
+		}
+
+		tb = &turbo_dec->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c > tb->c_neg) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+	} else {
+
+		if (turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) {
+			rte_bbdev_log(ERR,
+					"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP is invalid in CB-mode");
+			return -1;
+		}
+
+		cb = &turbo_dec->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline int
+enqueue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, kw, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output = op->turbo_dec.hard_output.data;
+	total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	k = op->turbo_dec.cb_params.k;
+	kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+	in_length = kw;
+	out_length = k >> 3;
+
+	mbuf_append(output, output, out_length);
+
+	/* Setup DMA Descriptor */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	desc = q->ring_addr + ring_offset;
+	ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+			in_length, k, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+#endif
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_dec.hard_output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+
+static inline int
+enqueue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c;
+	uint16_t k, kw, in_length, out_length, ring_offset;
+	uint32_t mbuf_total_left, seg_total_left, in_offset, out_offset;
+	uint16_t current_enqueued_cbs = 0;
+	uint16_t crc24_overlap = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output_head = output = op->turbo_dec.hard_output.data;
+	mbuf_total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	if (!check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		crc24_overlap = 24;
+
+	c = op->turbo_dec.tb_params.c;
+	r = op->turbo_dec.tb_params.r;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+		k = (r < op->turbo_dec.tb_params.c_neg) ?
+				op->turbo_dec.tb_params.k_neg :
+				op->turbo_dec.tb_params.k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+
+		in_length = kw;
+		out_length = (k - crc24_overlap) >> 3;
+
+		mbuf_append(output_head, output, out_length);
+
+		if (seg_total_left < in_length) {
+			rte_bbdev_log(ERR,
+					"Partial CB found in a TB. FPGA Driver doesn't support scatter-gather operations!");
+			return -1;
+		}
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+				in_length, k, in_offset, out_offset,
+				ring_offset, cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		/* Update lengths */
+		ret = rte_pktmbuf_trim(op->turbo_dec.hard_output.data,
+				(crc24_overlap >> 3));
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		if (ret < 0) {
+			rte_bbdev_log(ERR,
+					"The length to remove is greater than the length of the last segment");
+			return -EINVAL;
+		}
+#endif
+		op->turbo_dec.hard_output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+static uint16_t
+fpga_enqueue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_enc.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_enc(&ops[i]->turbo_enc);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_enc_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_enc_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing enc ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->enc_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static uint16_t
+fpga_enqueue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_dec.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_dec(&ops[i]->turbo_dec);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_dec_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_dec_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing dec ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->dec_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static inline int
+dequeue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+
+	/* Set current desc */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/*check if done */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+	rte_bbdev_log_debug("DMA response desc %p", desc);
+
+	*op = desc->enc_req.op_addr;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status = desc_error << RTE_BBDEV_DATA_ERROR;
+
+	return 1;
+}
+
+static inline int
+dequeue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx;
+	int desc_error = 0;
+	int status = 0;
+
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->enc_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->enc_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |=  desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->enc_req.op_addr;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static inline int
+dequeue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+
+#endif
+
+	*op = desc->dec_req.op_addr;
+	/* FPGA reports in half-iterations, from 0 to 31. get ceiling */
+	(*op)->turbo_dec.iter_count = (desc->dec_req.iter + 2) >> 1;
+	/* crc_pass = 0 when decoder fails */
+	(*op)->status = !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status |= desc_error << RTE_BBDEV_DATA_ERROR;
+	return 1;
+}
+
+static inline int
+dequeue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx, iter_count = 0;
+	int status = 0;
+	int  desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->dec_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->dec_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* get max iter_count for all CBs in op */
+		iter_count = RTE_MAX(iter_count, (uint8_t) desc->dec_req.iter);
+		/* crc_pass = 0 when decoder fails, one fails all */
+		status |= !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |= desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->dec_req.op_addr;
+
+	/* FPGA reports in half-iterations, get ceiling */
+	(*op)->turbo_dec.iter_count = (iter_count + 2) >> 1;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static uint16_t
+fpga_dequeue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_enc_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->enc_req.op_addr;
+		if (op->turbo_enc.code_block_mode == 0)
+			ret = dequeue_enc_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_enc_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing enc ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+static uint16_t
+fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_dec_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->dec_req.op_addr;
+		if (op->turbo_dec.code_block_mode == 0)
+			ret = dequeue_dec_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_dec_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing dec ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+/* Initialization Function */
+static void
+fpga_lte_fec_init(struct rte_bbdev *dev)
+{
+	struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+
+	dev->dev_ops = &fpga_ops;
+	dev->enqueue_enc_ops = fpga_enqueue_enc;
+	dev->enqueue_dec_ops = fpga_enqueue_dec;
+	dev->dequeue_enc_ops = fpga_dequeue_enc;
+	dev->dequeue_dec_ops = fpga_dequeue_dec;
+
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device =
+			!strcmp(dev->device->driver->name,
+					RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME));
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base =
+			pci_dev->mem_resource[0].addr;
+
+	rte_bbdev_log_debug(
+			"Init device %s [%s] @ virtaddr %p phyaddr %#"PRIx64,
+			dev->device->driver->name, dev->data->name,
+			(void *)pci_dev->mem_resource[0].addr,
+			pci_dev->mem_resource[0].phys_addr);
+}
+
+static int
+fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev = NULL;
+	char dev_name[RTE_BBDEV_NAME_MAX_LEN];
+
+	if (pci_dev == NULL) {
+		rte_bbdev_log(ERR, "NULL PCI device");
+		return -EINVAL;
+	}
+
+	rte_pci_device_name(&pci_dev->addr, dev_name, sizeof(dev_name));
+
+	/* Allocate memory to be used privately by drivers */
+	bbdev = rte_bbdev_allocate(pci_dev->device.name);
+	if (bbdev == NULL)
+		return -ENODEV;
+
+	/* allocate device private memory */
+	bbdev->data->dev_private = rte_zmalloc_socket(dev_name,
+			sizeof(struct fpga_lte_fec_device), RTE_CACHE_LINE_SIZE,
+			pci_dev->device.numa_node);
+
+	if (bbdev->data->dev_private == NULL) {
+		rte_bbdev_log(CRIT,
+				"Allocate of %zu bytes for device \"%s\" failed",
+				sizeof(struct fpga_lte_fec_device), dev_name);
+				rte_bbdev_release(bbdev);
+			return -ENOMEM;
+	}
+
+	/* Fill HW specific part of device structure */
+	bbdev->device = &pci_dev->device;
+	bbdev->intr_handle = &pci_dev->intr_handle;
+	bbdev->data->socket_id = pci_dev->device.numa_node;
+
+	/* Invoke FEC FPGA device initialization function */
+	fpga_lte_fec_init(bbdev);
+
+	rte_bbdev_log_debug("bbdev id = %u [%s]",
+			bbdev->data->dev_id, dev_name);
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+	uint32_t version_id = fpga_reg_read_32(d->mmio_base,
+			FPGA_LTE_FEC_VERSION_ID);
+	rte_bbdev_log(INFO, "FEC FPGA RTL v%u.%u",
+		((uint16_t)(version_id >> 16)), ((uint16_t)version_id));
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (!strcmp(bbdev->device->driver->name,
+			RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)))
+		print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+static int
+fpga_lte_fec_remove(struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev;
+	int ret;
+	uint8_t dev_id;
+
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* Find device */
+	bbdev = rte_bbdev_get_named_dev(pci_dev->device.name);
+	if (bbdev == NULL) {
+		rte_bbdev_log(CRIT,
+				"Couldn't find HW dev \"%s\" to uninitialise it",
+				pci_dev->device.name);
+		return -ENODEV;
+	}
+	dev_id = bbdev->data->dev_id;
+
+	/* free device private memory before close */
+	rte_free(bbdev->data->dev_private);
+
+	/* Close device */
+	ret = rte_bbdev_close(dev_id);
+	if (ret < 0)
+		rte_bbdev_log(ERR,
+				"Device %i failed to close during uninit: %i",
+				dev_id, ret);
+
+	/* release bbdev from library */
+	ret = rte_bbdev_release(bbdev);
+	if (ret)
+		rte_bbdev_log(ERR, "Device %i failed to uninit: %i", dev_id,
+				ret);
+
+	rte_bbdev_log_debug("Destroyed bbdev = %u", dev_id);
+
+	return 0;
+}
+
+static inline void
+set_default_fpga_conf(struct fpga_lte_fec_conf *def_conf)
+{
+	/* clear default configuration before initialization */
+	memset(def_conf, 0, sizeof(struct fpga_lte_fec_conf));
+	/* Set pf mode to true */
+	def_conf->pf_mode_en = true;
+
+	/* Set ratio between UL and DL to 1:1 (unit of weight is 3 CBs) */
+	def_conf->ul_bandwidth = 3;
+	def_conf->dl_bandwidth = 3;
+
+	/* Set Load Balance Factor to 64 */
+	def_conf->dl_load_balance = 64;
+	def_conf->ul_load_balance = 64;
+}
+
+/* Initial configuration of FPGA LTE FEC device */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf)
+{
+	uint32_t payload_32, address;
+	uint16_t payload_16;
+	uint8_t payload_8;
+	uint16_t q_id, vf_id, total_q_id, total_ul_q_id, total_dl_q_id;
+	struct rte_bbdev *bbdev = rte_bbdev_get_named_dev(dev_name);
+	struct fpga_lte_fec_conf def_conf;
+
+	if (bbdev == NULL) {
+		rte_bbdev_log(ERR,
+				"Invalid dev_name (%s), or device is not yet initialised",
+				dev_name);
+		return -ENODEV;
+	}
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+
+	if (conf == NULL) {
+		rte_bbdev_log(ERR,
+				"FPGA Configuration was not provided. Default configuration will be loaded.");
+		set_default_fpga_conf(&def_conf);
+		conf = &def_conf;
+	}
+
+	/*
+	 * Configure UL:DL ratio.
+	 * [7:0]: UL weight
+	 * [15:8]: DL weight
+	 */
+	payload_16 = (conf->dl_bandwidth << 8) | conf->ul_bandwidth;
+	address = FPGA_LTE_FEC_CONFIGURATION;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Clear all queues registers */
+	payload_32 = FPGA_INVALID_HW_QUEUE_ID;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+		fpga_reg_write_32(d->mmio_base, address, payload_32);
+	}
+
+	/*
+	 * If PF mode is enabled allocate all queues for PF only.
+	 *
+	 * For VF mode each VF can have different number of UL and DL queues.
+	 * Total number of queues to configure cannot exceed FPGA
+	 * capabilities - 64 queues - 32 queues for UL and 32 queues for DL.
+	 * Queues mapping is done according to configuration:
+	 *
+	 * UL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 0                |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_dl_queues_number[0] - 1 |   0   |
+	 * | conf->vf_dl_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_dl_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_dl_queues_number[7] - 1 |   7   |
+	 *
+	 * DL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 32               |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_ul_queues_number[0] - 1 |   0   |
+	 * | conf->vf_ul_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_ul_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_ul_queues_number[7] - 1 |   7   |
+	 *
+	 * Example of configuration:
+	 * conf->vf_ul_queues_number[0] = 4;  -> 4 UL queues for VF0
+	 * conf->vf_dl_queues_number[0] = 4;  -> 4 DL queues for VF0
+	 * conf->vf_ul_queues_number[1] = 2;  -> 2 UL queues for VF1
+	 * conf->vf_dl_queues_number[1] = 2;  -> 2 DL queues for VF1
+	 *
+	 * UL:
+	 * | Q_ID | VF_ID |
+	 * |   0  |   0   |
+	 * |   1  |   0   |
+	 * |   2  |   0   |
+	 * |   3  |   0   |
+	 * |   4  |   1   |
+	 * |   5  |   1   |
+	 *
+	 * DL:
+	 * | Q_ID | VF_ID |
+	 * |  32  |   0   |
+	 * |  33  |   0   |
+	 * |  34  |   0   |
+	 * |  35  |   0   |
+	 * |  36  |   1   |
+	 * |  37  |   1   |
+	 */
+	if (conf->pf_mode_en) {
+		payload_32 = 0x1;
+		for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+			address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+			fpga_reg_write_32(d->mmio_base, address, payload_32);
+		}
+	} else {
+		/* Calculate total number of UL and DL queues to configure */
+		total_ul_q_id = total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			total_ul_q_id += conf->vf_ul_queues_number[vf_id];
+			total_dl_q_id += conf->vf_dl_queues_number[vf_id];
+		}
+		total_q_id = total_dl_q_id + total_ul_q_id;
+		/*
+		 * Check if total number of queues to configure does not exceed
+		 * FPGA capabilities (64 queues - 32 UL and 32 DL queues)
+		 */
+		if ((total_ul_q_id > FPGA_NUM_UL_QUEUES) ||
+			(total_dl_q_id > FPGA_NUM_DL_QUEUES) ||
+			(total_q_id > FPGA_TOTAL_NUM_QUEUES)) {
+			rte_bbdev_log(ERR,
+					"FPGA Configuration failed. Too many queues to configure: UL_Q %u, DL_Q %u, FPGA_Q %u",
+					total_ul_q_id, total_dl_q_id,
+					FPGA_TOTAL_NUM_QUEUES);
+			return -EINVAL;
+		}
+		total_ul_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_ul_queues_number[vf_id];
+					++q_id, ++total_ul_q_id) {
+				address = (total_ul_q_id << 2) +
+						FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+		total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_dl_queues_number[vf_id];
+					++q_id, ++total_dl_q_id) {
+				address = ((total_dl_q_id + FPGA_NUM_UL_QUEUES)
+						<< 2) + FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+	}
+
+	/* Setting Load Balance Factor */
+	payload_16 = (conf->dl_load_balance << 8) | (conf->ul_load_balance);
+	address = FPGA_LTE_FEC_LOAD_BALANCE_FACTOR;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting length of ring descriptor entry */
+	payload_16 = FPGA_RING_DESC_ENTRY_LENGTH;
+	address = FPGA_LTE_FEC_RING_DESC_LEN;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting FLR timeout value */
+	payload_16 = conf->flr_time_out;
+	address = FPGA_LTE_FEC_FLR_TIME_OUT;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Queue PF/VF mapping table is ready */
+	payload_8 = 0x1;
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	fpga_reg_write_8(d->mmio_base, address, payload_8);
+
+	rte_bbdev_log_debug("PF FPGA LTE FEC configuration complete for %s",
+			dev_name);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+/* FPGA LTE FEC PCI PF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_pf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_PF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_pf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_pf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+/* FPGA LTE FEC PCI VF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_vf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_VF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_vf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_vf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_PF_DRIVER_NAME, fpga_lte_fec_pci_pf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_pf_map);
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_vf_map);
+
+RTE_INIT(fpga_lte_fec_init_log)
+{
+	fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec");
+	if (fpga_lte_fec_logtype >= 0)
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG);
+#else
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE);
+#endif
+}
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
new file mode 100644
index 0000000..2c6952e
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#ifndef _FPGA_LTE_FEC_H_
+#define _FPGA_LTE_FEC_H_
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/**
+ * @file fpga_lte_fec.h
+ *
+ * Interface for Intel(R) FGPA LTE FEC device configuration at the host level,
+ * directly accessible by the application.
+ * Configuration related to LTE Turbo coding functionality is done through
+ * librte_bbdev library.
+ *
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**< Number of Virtual Functions FGPA 4G FEC supports */
+#define FPGA_LTE_FEC_NUM_VFS 8
+
+/**
+ * Structure to pass FPGA 4G FEC configuration.
+ */
+struct fpga_lte_fec_conf {
+	/**< 1 if PF is used for dataplane, 0 for VFs */
+	bool pf_mode_en;
+	/**< Number of UL queues per VF */
+	uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< Number of DL queues per VF */
+	uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< UL bandwidth. Needed for schedule algorithm */
+	uint8_t ul_bandwidth;
+	/**< DL bandwidth. Needed for schedule algorithm */
+	uint8_t dl_bandwidth;
+	/**< UL Load Balance */
+	uint8_t ul_load_balance;
+	/**< DL Load Balance */
+	uint8_t dl_load_balance;
+	/**< FLR timeout value */
+	uint16_t flr_time_out;
+};
+
+/**
+ * Configure Intel(R) FPGA LTE FEC device
+ *
+ * @param dev_name
+ *   The name of the device. This is the short form of PCI BDF, e.g. 00:01.0.
+ *   It can also be retrieved for a bbdev device from the dev_name field in the
+ *   rte_bbdev_info structure returned by rte_bbdev_info_get().
+ * @param conf
+ *   Configuration to apply to FPGA 4G FEC.
+ *
+ * @return
+ *   Zero on success, negative value on failure.
+ */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FPGA_LTE_FEC_H_ */
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
new file mode 100644
index 0000000..1a99f8d
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
@@ -0,0 +1,3 @@
+DPDK_18.08 {
+    local: *;
+};
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 7c9b4b5..21d32a2 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -218,6 +218,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_NETVSC_PMD)     += -lrte_pmd_netvsc
 
 ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += -lrte_pmd_fpga_lte_fec
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA Nicolas Chautru
@ 2019-05-14 19:45     ` Nicolas Chautru
  2019-05-15  8:28     ` Thomas Monjalon
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Supports for FEC 4G PMD Driver on FPGA card PAC N300

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                                 |    6 +
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2674 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 .../baseband/fpga_lte_fec/fpga_lte_fec_version.map |    3 +
 mk/rte.app.mk                                      |    1 +
 9 files changed, 3107 insertions(+)
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map

diff --git a/config/common_base b/config/common_base
index 6b96e0e..ae52028 100644
--- a/config/common_base
+++ b/config/common_base
@@ -521,6 +521,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 # EXPERIMENTAL: API may change without prior notice
 #
 CONFIG_RTE_LIBRTE_BBDEV=y
+CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 
@@ -535,6 +536,11 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
 
 #
+# Compile PMD for Intel FPGA LTE FEC bbdev device
+#
+CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC=y
+
+#
 # Compile generic crypto device library
 #
 CONFIG_RTE_LIBRTE_CRYPTODEV=y
diff --git a/doc/guides/bbdevs/fpga_lte_fec.rst b/doc/guides/bbdevs/fpga_lte_fec.rst
new file mode 100644
index 0000000..066907d
--- /dev/null
+++ b/doc/guides/bbdevs/fpga_lte_fec.rst
@@ -0,0 +1,318 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation
+
+Intel(R) FPGA LTE FEC Poll Mode Driver
+======================================
+
+The BBDEV FPGA LTE FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
+Turbo Encode / Decode LTE wireless acceleration function, using Intel's PCI-e and FPGA
+based Vista Creek device.
+
+Features
+--------
+
+FPGA LTE FEC PMD supports the following features:
+
+- Turbo Encode in the DL with total throughput of 4.5 Gbits/s
+- Turbo Decode in the UL with total throughput of 1.5 Gbits/s assuming 8 decoder iterations
+- 8 VFs per PF (physical device)
+- Maximum of 32 UL queues per VF
+- Maximum of 32 DL queues per VF
+- PCIe Gen-3 x8 Interface
+- MSI-X
+- SR-IOV
+
+
+FPGA LTE FEC PMD supports the following BBDEV capabilities:
+
+* For the turbo encode operation:
+   - ``RTE_BBDEV_TURBO_CRC_24B_ATTACH`` :  set to attach CRC24B to CB(s)
+   - ``RTE_BBDEV_TURBO_RATE_MATCH`` :  if set then do not do Rate Match bypass
+   - ``RTE_BBDEV_TURBO_ENC_INTERRUPTS`` :  set for encoder dequeue interrupts
+
+
+* For the turbo decode operation:
+   - ``RTE_BBDEV_TURBO_CRC_TYPE_24B`` :  check CRC24B from CB(s)
+   - ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE`` :  perform subblock de-interleave
+   - ``RTE_BBDEV_TURBO_DEC_INTERRUPTS`` :  set for decoder dequeue interrupts
+   - ``RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN`` :  set if negative LLR encoder i/p is supported
+   - ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP`` :  keep CRC24B bits appended while decoding
+
+
+Limitations
+-----------
+
+FPGA LTE FEC does not support the following:
+
+- Scatter-Gather function
+
+
+Installation
+--------------
+
+Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
+default set of bbdev compile flags may be found in config/common_base, where for example
+the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
+set. It is assumed DPDK has been compiled for an icc 64-bit target using:
+
+.. code-block:: console
+
+  make install T=x86_64-native-linuxapp-icc
+
+
+DPDK requires hugepages to be configured as detailed in section 2 of the DPDK manual.
+The bbdev test application has been tested with a configuration 40 x 1GB hugepages. The
+hugepage configuration of a server may be examined using:
+
+.. code-block:: console
+
+   grep Huge* /proc/meminfo
+
+
+Initialization
+--------------
+
+When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
+
+.. code-block:: console
+
+  sudo lspci -vd1172:5052
+
+The physical and virtual functions are compatible with Linux UIO drivers:
+``vfio`` and ``igb_uio``. However, in order to work the FPGA LTE FEC device firstly needs
+to be bound to one of these linux drivers through DPDK.
+
+
+Bind PF UIO driver(s)
+~~~~~~~~~~~~~~~~~~~~~
+
+Install the DPDK igb_uio driver, bind it with the PF PCI device ID and use
+``lspci`` to confirm the PF device is under use by ``igb_uio`` DPDK UIO driver.
+
+The igb_uio driver may be bound to the PF PCI device using one of three methods:
+
+
+1. PCI functions (physical or virtual, depending on the use case) can be bound to
+the UIO driver by repeating this command for every function.
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  insmod ./build/kmod/igb_uio.ko
+  echo "1172 5052" > /sys/bus/pci/drivers/igb_uio/new_id
+  lspci -vd1172:
+
+
+2. Another way to bind PF with DPDK UIO driver is by using the ``dpdk-devbind.py`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-devbind.py -b igb_uio 0000:06:00.0
+
+where the PCI device ID (example: 0000:06:00.0) is obtained using lspci -vd1172:
+
+
+3. A third way to bind is to use ``dpdk-setup.sh`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-setup.sh
+
+  select 'Bind Ethernet/Crypto/Baseband device to IGB UIO module'
+  or
+  select 'Bind Ethernet/Crypto/Baseband device to VFIO module' depending on driver required
+  enter PCI device ID
+  select 'Display current Ethernet/Crypto/Baseband device settings' to confirm binding
+
+
+In the same way the FPGA LTE FEC PF can be bound with vfio, but vfio driver does not
+support SR-IOV configuration right out of the box, so it will need to be patched.
+
+
+Enable Virtual Functions
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+Now, it should be visible in the printouts that PCI PF is under igb_uio control
+"``Kernel driver in use: igb_uio``"
+
+To show the number of available VFs on the device, read ``sriov_totalvfs`` file..
+
+.. code-block:: console
+
+  cat /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_totalvfs
+
+  where 0000\:<b>\:<d>.<f> is the PCI device ID
+
+
+To enable VFs via igb_uio, echo the number of virtual functions intended to
+enable to ``max_vfs`` file..
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/max_vfs
+
+
+Afterwards, all VFs must be bound to appropriate UIO drivers as required, same
+way it was done with the physical function previously.
+
+Enabling SR-IOV via vfio driver is pretty much the same, except that the file
+name is different:
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_numvfs
+
+
+Configure the VFs through PF
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The PCI virtual functions must be configured before working or getting assigned
+to VMs/Containers. The configuration involves allocating the number of hardware
+queues, priorities, load balance, bandwidth and other settings necessary for the
+device to perform FEC functions.
+
+This configuration needs to be executed at least once after reboot or PCI FLR and can
+be achieved by using the function ``fpga_lte_fec_configure()``, which sets up the
+parameters defined in ``fpga_lte_fec_conf`` structure:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf {
+      bool pf_mode_en;
+      uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t ul_bandwidth;
+      uint8_t dl_bandwidth;
+      uint8_t ul_load_balance;
+      uint8_t dl_load_balance;
+      uint16_t flr_time_out;
+  };
+
+- ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
+  VFs are mutually exclusive and cannot run simultaneously.
+  Set to 1 for PF mode enabled.
+  If PF mode is enabled all queues available in the device are assigned
+  exclusively to PF and 0 queues given to VFs.
+
+- ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
+
+- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
+  allocates different bandwidth to UL and DL. The weight is configured by this
+  setting. The unit of weight is 3 code blocks. For example, if the code block
+  cbps (code block per second) ratio between UL and DL is 12:1, then the
+  configuration value should be set to 36:3. The schedule algorithm is based
+  on code block regardless the length of each block.
+
+- ``*l_load_balance``: hardware queues are load-balanced in a round-robin
+  fashion. Queues get filled first-in first-out until they reach a pre-defined
+  watermark level, if exceeded, they won't get assigned new code blocks..
+  This watermark is defined by this setting.
+
+  If all hardware queues exceeds the watermark, no code blocks will be
+  streamed in from UL/DL code block FIFO.
+
+- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
+  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
+  the FLR time out then set this setting to 0x262=610.
+
+
+An example configuration code calling the function ``fpga_lte_fec_configure()`` is shown
+below:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf conf;
+  unsigned int i;
+
+  memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+  conf.pf_mode_en = 1;
+
+  for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+      conf.vf_ul_queues_number[i] = 4;
+      conf.vf_dl_queues_number[i] = 4;
+  }
+  conf.ul_bandwidth = 12;
+  conf.dl_bandwidth = 5;
+  conf.dl_load_balance = 64;
+  conf.ul_load_balance = 64;
+
+  /* setup FPGA PF */
+  ret = fpga_lte_fec_configure(info->dev_name, &conf);
+  TEST_ASSERT_SUCCESS(ret,
+      "Failed to configure 4G FPGA PF for bbdev %s",
+      info->dev_name);
+
+
+Test Application
+----------------
+
+BBDEV provides a test application, ``test-bbdev.py`` and range of test data for testing
+the functionality of FPGA LTE FEC turbo encode and turbo decode, depending on the device's
+capabilities. The test application is located under app->test-bbdev folder and has the
+following options:
+
+.. code-block:: console
+
+  "-p", "--testapp-path": specifies path to the bbdev test app.
+  "-e", "--eal-params"	: EAL arguments which are passed to the test app.
+  "-t", "--timeout"	: Timeout in seconds (default=300).
+  "-c", "--test-cases"	: Defines test cases to run. Run all if not specified.
+  "-v", "--test-vector"	: Test vector path (default=dpdk_path+/app/test-bbdev/test_vectors/bbdev_null.data).
+  "-n", "--num-ops"	: Number of operations to process on device (default=32).
+  "-b", "--burst-size"	: Operations enqueue/dequeue burst size (default=32).
+  "-l", "--num-lcores"	: Number of lcores to run (default=16).
+  "-i", "--init-device" : Initialise PF device with default values.
+
+
+To execute the test application tool using simple turbo decode or turbo encode data,
+type one of the following:
+
+.. code-block:: console
+
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_dec_default.data
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_enc_default.data
+
+
+The test application ``test-bbdev.py``, supports the ability to configure the PF device with
+a default set of values, if the "-i" or "- -init-device" option is included. The default values
+are defined in test_bbdev_perf.c as:
+
+- VF_UL_QUEUE_VALUE 4
+- VF_DL_QUEUE_VALUE 4
+- UL_BANDWIDTH 3
+- DL_BANDWIDTH 3
+- UL_LOAD_BALANCE 128
+- DL_LOAD_BALANCE 128
+- FLR_TIMEOUT 610
+
+
+Test Vectors
+~~~~~~~~~~~~
+
+In addition to the simple turbo decoder and turbo encoder tests, bbdev also provides
+a range of additional tests under the test_vectors folder, which may be useful. The results
+of these tests will depend on the FPGA LTE FEC capabilities:
+
+* turbo decoder tests:
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
+
+
+* turbo encoder tests:
+   - ``turbo_enc_c1_k40_r0_e1190_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1194_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1196_rm.data``
+   - ``turbo_enc_c1_k40_r0_e272_rm.data``
+   - ``turbo_enc_c1_k6144_r0_e18444.data``
+   - ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+   - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
+   - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
+   - ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
+
diff --git a/doc/guides/bbdevs/index.rst b/doc/guides/bbdevs/index.rst
index 93276ed..005b95e 100644
--- a/doc/guides/bbdevs/index.rst
+++ b/doc/guides/bbdevs/index.rst
@@ -10,3 +10,4 @@ Baseband Device Drivers
 
     null
     turbo_sw
+    fpga_lte_fec
diff --git a/drivers/baseband/Makefile b/drivers/baseband/Makefile
index 4ec83b0..ceffc7d 100644
--- a/drivers/baseband/Makefile
+++ b/drivers/baseband/Makefile
@@ -10,5 +10,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL) += null
 DEPDIRS-null = $(core-libs)
 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += turbo_sw
 DEPDIRS-turbo_sw = $(core-libs)
+DIRS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec
+DEPDIRS-fpga_lte_fec = $(core-libs)
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/baseband/fpga_lte_fec/Makefile b/drivers/baseband/fpga_lte_fec/Makefile
new file mode 100644
index 0000000..aedc8f3
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/Makefile
@@ -0,0 +1,29 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_pmd_fpga_lte_fec.a
+
+# build flags
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_bbdev
+LDLIBS += -lrte_pci -lrte_bus_pci
+
+# versioning export map
+EXPORT_MAP := fpga_lte_fec_version.map
+
+# library version
+LIBABIVER := 1
+
+# library source files
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec.c
+
+# export include files
+SYMLINK-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC)-include += fpga_lte_fec.h
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
new file mode 100644
index 0000000..856b68e
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -0,0 +1,2674 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#include <unistd.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_dev.h>
+#include <rte_malloc.h>
+#include <rte_mempool.h>
+#include <rte_errno.h>
+#include <rte_pci.h>
+#include <rte_bus_pci.h>
+#include <rte_byteorder.h>
+#ifdef RTE_BBDEV_OFFLOAD_COST
+#include <rte_cycles.h>
+#endif
+
+#include <rte_bbdev.h>
+#include <rte_bbdev_pmd.h>
+
+#include "fpga_lte_fec.h"
+
+/* Turbo SW PMD logging ID */
+static int fpga_lte_fec_logtype;
+
+/* Helper macro for logging */
+#define rte_bbdev_log(level, fmt, ...) \
+	rte_log(RTE_LOG_ ## level, fpga_lte_fec_logtype, fmt "\n", \
+		##__VA_ARGS__)
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+#define rte_bbdev_log_debug(fmt, ...) \
+		rte_bbdev_log(DEBUG, "fpga_lte_fec: " fmt, \
+		##__VA_ARGS__)
+#else
+#define rte_bbdev_log_debug(fmt, ...)
+#endif
+
+/* FPGA LTE FEC driver names */
+#define FPGA_LTE_FEC_PF_DRIVER_NAME intel_fpga_lte_fec_pf
+#define FPGA_LTE_FEC_VF_DRIVER_NAME intel_fpga_lte_fec_vf
+
+/* FPGA LTE FEC PCI vendor & device IDs */
+#define FPGA_LTE_FEC_VENDOR_ID (0x1172)
+#define FPGA_LTE_FEC_PF_DEVICE_ID (0x5052)
+#define FPGA_LTE_FEC_VF_DEVICE_ID (0x5050)
+
+/* Align DMA descriptors to 256 bytes - cache-aligned */
+#define FPGA_RING_DESC_ENTRY_LENGTH (8)
+/* Ring size is in 256 bits (32 bytes) units */
+#define FPGA_RING_DESC_LEN_UNIT_BYTES (32)
+/* Maximum size of queue */
+#define FPGA_RING_MAX_SIZE (1024)
+#define FPGA_FLR_TIMEOUT_UNIT (16.384)
+
+#define FPGA_NUM_UL_QUEUES (32)
+#define FPGA_NUM_DL_QUEUES (32)
+#define FPGA_TOTAL_NUM_QUEUES (FPGA_NUM_UL_QUEUES + FPGA_NUM_DL_QUEUES)
+#define FPGA_NUM_INTR_VEC (FPGA_TOTAL_NUM_QUEUES - RTE_INTR_VEC_RXTX_OFFSET)
+
+#define FPGA_INVALID_HW_QUEUE_ID (0xFFFFFFFF)
+
+#define FPGA_QUEUE_FLUSH_TIMEOUT_US (1000)
+#define FPGA_TIMEOUT_CHECK_INTERVAL (5)
+
+/* FPGA LTE FEC Register mapping on BAR0 */
+enum {
+	FPGA_LTE_FEC_VERSION_ID = 0x00000000, /* len: 4B */
+	FPGA_LTE_FEC_CONFIGURATION = 0x00000004, /* len: 2B */
+	FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE = 0x00000008, /* len: 1B */
+	FPGA_LTE_FEC_LOAD_BALANCE_FACTOR = 0x0000000a, /* len: 2B */
+	FPGA_LTE_FEC_RING_DESC_LEN = 0x0000000c, /* len: 2B */
+	FPGA_LTE_FEC_FLR_TIME_OUT = 0x0000000e, /* len: 2B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW = 0x00000018, /* len: 4B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI = 0x0000001c, /* len: 4B */
+	FPGA_LTE_FEC_VF0_DEBUG = 0x00000020, /* len: 4B */
+	FPGA_LTE_FEC_VF1_DEBUG = 0x00000024, /* len: 4B */
+	FPGA_LTE_FEC_VF2_DEBUG = 0x00000028, /* len: 4B */
+	FPGA_LTE_FEC_VF3_DEBUG = 0x0000002c, /* len: 4B */
+	FPGA_LTE_FEC_VF4_DEBUG = 0x00000030, /* len: 4B */
+	FPGA_LTE_FEC_VF5_DEBUG = 0x00000034, /* len: 4B */
+	FPGA_LTE_FEC_VF6_DEBUG = 0x00000038, /* len: 4B */
+	FPGA_LTE_FEC_VF7_DEBUG = 0x0000003c, /* len: 4B */
+	FPGA_LTE_FEC_QUEUE_MAP = 0x00000040, /* len: 256B */
+	FPGA_LTE_FEC_RING_CTRL_REGS = 0x00000200  /* len: 2048B */
+};
+
+/* FPGA LTE FEC Ring Control Registers */
+enum {
+	FPGA_LTE_FEC_RING_HEAD_ADDR = 0x00000008,
+	FPGA_LTE_FEC_RING_SIZE = 0x00000010,
+	FPGA_LTE_FEC_RING_MISC = 0x00000014,
+	FPGA_LTE_FEC_RING_ENABLE = 0x00000015,
+	FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN = 0x00000016,
+	FPGA_LTE_FEC_RING_SHADOW_TAIL = 0x00000018,
+	FPGA_LTE_FEC_RING_HEAD_POINT = 0x0000001C
+};
+
+/* FPGA LTE FEC DESCRIPTOR ERROR */
+enum {
+	DESC_ERR_NO_ERR = 0x0,
+	DESC_ERR_K_OUT_OF_RANGE = 0x1,
+	DESC_ERR_K_NOT_NORMAL = 0x2,
+	DESC_ERR_KPAI_NOT_NORMAL = 0x3,
+	DESC_ERR_DESC_OFFSET_ERR = 0x4,
+	DESC_ERR_DESC_READ_FAIL = 0x8,
+	DESC_ERR_DESC_READ_TIMEOUT = 0x9,
+	DESC_ERR_DESC_READ_TLP_POISONED = 0xA,
+	DESC_ERR_CB_READ_FAIL = 0xC,
+	DESC_ERR_CB_READ_TIMEOUT = 0xD,
+	DESC_ERR_CB_READ_TLP_POISONED = 0xE
+};
+
+/* FPGA LTE FEC DMA Encoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_enc_desc {
+	uint32_t done:1,
+		rsrvd0:11,
+		error:4,
+		rsrvd1:16;
+	uint32_t ncb:16,
+		rsrvd2:14,
+		rv:2;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		crc_en:1,
+		rsrvd3:13,
+		offset:10,
+		rsrvd4:6;
+	uint16_t e;
+	uint16_t k;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint64_t cbs_in_op;
+		};
+
+		uint8_t sw_ctxt[FPGA_RING_DESC_LEN_UNIT_BYTES *
+					(FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE FEC DMA Decoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_dec_desc {
+	uint32_t done:1,
+		iter:5,
+		rsrvd0:2,
+		crc_pass:1,
+		rsrvd1:3,
+		error:4,
+		crc_type:1,
+		rsrvd2:7,
+		max_iter:5,
+		rsrvd3:3;
+	uint32_t rsrvd4;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		drop_crc:1,
+		rsrvd5:13,
+		offset:10,
+		rsrvd6:6;
+	uint16_t k;
+	uint16_t in_len;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint8_t cbs_in_op;
+		};
+
+		uint32_t sw_ctxt[8 * (FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE DMA Descriptor */
+union fpga_dma_desc {
+	struct fpga_dma_enc_desc enc_req;
+	struct fpga_dma_dec_desc dec_req;
+};
+
+/* FPGA LTE FEC Ring Control Register */
+struct __attribute__((__packed__)) fpga_ring_ctrl_reg {
+	uint64_t ring_base_addr;
+	uint64_t ring_head_addr;
+	uint16_t ring_size:11;
+	uint16_t rsrvd0;
+	union { /* Miscellaneous register */
+		uint8_t misc;
+		uint8_t max_ul_dec:5,
+			max_ul_dec_en:1,
+			rsrvd1:2;
+	};
+	uint8_t enable;
+	uint8_t flush_queue_en;
+	uint8_t rsrvd2;
+	uint16_t shadow_tail;
+	uint16_t rsrvd3;
+	uint16_t head_point;
+	uint16_t rsrvd4;
+
+};
+
+/* Private data structure for each FPGA FEC device */
+struct fpga_lte_fec_device {
+	/** Base address of MMIO registers (BAR0) */
+	void *mmio_base;
+	/** Base address of memory for sw rings */
+	void *sw_rings;
+	/** Physical address of sw_rings */
+	rte_iova_t sw_rings_phys;
+	/** Number of bytes available for each queue in device. */
+	uint32_t sw_ring_size;
+	/** Max number of entries available for each queue in device */
+	uint32_t sw_ring_max_depth;
+	/** Base address of response tail pointer buffer */
+	uint32_t *tail_ptrs;
+	/** Physical address of tail pointers */
+	rte_iova_t tail_ptr_phys;
+	/** Queues flush completion flag */
+	uint64_t *flush_queue_status;
+	/* Bitmap capturing which Queues are bound to the PF/VF */
+	uint64_t q_bound_bit_map;
+	/* Bitmap capturing which Queues have already been assigned */
+	uint64_t q_assigned_bit_map;
+	/** True if this is a PF FPGA FEC device */
+	bool pf_device;
+};
+
+/* Structure associated with each queue. */
+struct __rte_cache_aligned fpga_queue {
+	struct fpga_ring_ctrl_reg ring_ctrl_reg;  /* Ring Control Register */
+	union fpga_dma_desc *ring_addr;  /* Virtual address of software ring */
+	uint64_t *ring_head_addr;  /* Virtual address of completion_head */
+	uint64_t shadow_completion_head; /* Shadow completion head value */
+	uint16_t head_free_desc;  /* Ring head */
+	uint16_t tail;  /* Ring tail */
+	/* Mask used to wrap enqueued descriptors on the sw ring */
+	uint32_t sw_ring_wrap_mask;
+	uint32_t irq_enable;  /* Enable ops dequeue interrupts if set to 1 */
+	uint8_t q_idx;  /* Queue index */
+	struct fpga_lte_fec_device *d;
+	/* MMIO register of shadow_tail used to enqueue descriptors */
+	void *shadow_tail_addr;
+};
+
+/* Write to 16 bit MMIO register address */
+static inline void
+mmio_write_16(void *addr, uint16_t value)
+{
+	*((volatile uint16_t *)(addr)) = rte_cpu_to_le_16(value);
+}
+
+/* Write to 32 bit MMIO register address */
+static inline void
+mmio_write_32(void *addr, uint32_t value)
+{
+	*((volatile uint32_t *)(addr)) = rte_cpu_to_le_32(value);
+}
+
+/* Write to 64 bit MMIO register address */
+static inline void
+mmio_write_64(void *addr, uint64_t value)
+{
+	*((volatile uint64_t *)(addr)) = rte_cpu_to_le_64(value);
+}
+
+/* Write a 8 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_8(void *mmio_base, uint32_t offset, uint8_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	*((volatile uint8_t *)(reg_addr)) = payload;
+}
+
+/* Write a 16 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_16(void *mmio_base, uint32_t offset, uint16_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_16(reg_addr, payload);
+}
+
+/* Write a 32 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_32(void *mmio_base, uint32_t offset, uint32_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_32(reg_addr, payload);
+}
+
+/* Write a 64 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_64(void *mmio_base, uint32_t offset, uint64_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_64(reg_addr, payload);
+}
+
+/* Write a ring control register of a FPGA LTE FEC device */
+static inline void
+fpga_ring_reg_write(void *mmio_base, uint32_t offset,
+		struct fpga_ring_ctrl_reg payload)
+{
+	fpga_reg_write_64(mmio_base, offset, payload.ring_base_addr);
+	fpga_reg_write_64(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_ADDR,
+			payload.ring_head_addr);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SIZE,
+			payload.ring_size);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			payload.head_point);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN,
+			payload.flush_queue_en);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			payload.shadow_tail);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_MISC,
+			payload.misc);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload.enable);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint32_t
+fpga_reg_read_32(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint32_t ret = *((volatile uint32_t *)(reg_addr));
+	return rte_le_to_cpu_32(ret);
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Read a register of FPGA LTE FEC device */
+static uint8_t
+fpga_reg_read_8(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	return *((volatile uint8_t *)(reg_addr));
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint16_t
+fpga_reg_read_16(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint16_t ret = *((volatile uint16_t *)(reg_addr));
+	return rte_le_to_cpu_16(ret);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint64_t
+fpga_reg_read_64(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint64_t ret = *((volatile uint64_t *)(reg_addr));
+	return rte_le_to_cpu_64(ret);
+}
+
+/* Read Ring Control Register of FPGA LTE FEC device */
+static inline void
+print_ring_reg_debug_info(void *mmio_base, uint32_t offset)
+{
+	rte_bbdev_log_debug(
+		"FPGA MMIO base address @ %p | Ring Control Register @ offset = 0x%08"
+		PRIx32, mmio_base, offset);
+	rte_bbdev_log_debug(
+		"RING_BASE_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset));
+	rte_bbdev_log_debug(
+		"RING_HEAD_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_ADDR));
+	rte_bbdev_log_debug(
+		"RING_SIZE = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SIZE));
+	rte_bbdev_log_debug(
+		"RING_MISC = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_MISC));
+	rte_bbdev_log_debug(
+		"RING_ENABLE = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_ENABLE));
+	rte_bbdev_log_debug(
+		"RING_FLUSH_QUEUE_EN = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN));
+	rte_bbdev_log_debug(
+		"RING_SHADOW_TAIL = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SHADOW_TAIL));
+	rte_bbdev_log_debug(
+		"RING_HEAD_POINT = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_POINT));
+}
+
+/* Read Static Register of FPGA LTE FEC device */
+static inline void
+print_static_reg_debug_info(void *mmio_base)
+{
+	uint16_t config = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_CONFIGURATION);
+	uint8_t qmap_done = fpga_reg_read_8(mmio_base,
+			FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE);
+	uint16_t lb_factor = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_LOAD_BALANCE_FACTOR);
+	uint16_t ring_desc_len = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_RING_DESC_LEN);
+	uint16_t flr_time_out = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_FLR_TIME_OUT);
+
+	rte_bbdev_log_debug("UL.DL Weights = %u.%u",
+			((uint8_t)config), ((uint8_t)(config >> 8)));
+	rte_bbdev_log_debug("UL.DL Load Balance = %u.%u",
+			((uint8_t)lb_factor), ((uint8_t)(lb_factor >> 8)));
+	rte_bbdev_log_debug("Queue-PF/VF Mapping Table = %s",
+			(qmap_done > 0) ? "READY" : "NOT-READY");
+	rte_bbdev_log_debug("Ring Descriptor Size = %u bytes",
+			ring_desc_len*FPGA_RING_DESC_LEN_UNIT_BYTES);
+	rte_bbdev_log_debug("FLR Timeout = %f usec",
+			(float)flr_time_out*FPGA_FLR_TIMEOUT_UNIT);
+}
+
+/* Print decode DMA Descriptor of FPGA LTE FEC device */
+static void
+print_dma_dec_desc_debug_info(union fpga_dma_desc *desc)
+{
+	rte_bbdev_log_debug("DMA response desc %p\n"
+		"\t-- done(%"PRIu32") | iter(%"PRIu32") | crc_pass(%"PRIu32")"
+		" | error (%"PRIu32") | crc_type(%"PRIu32")\n"
+		"\t-- max_iter(%"PRIu32") | bypass_rm(%"PRIu32") | "
+		"irq_en (%"PRIu32") | drop_crc(%"PRIu32") | offset(%"PRIu32")\n"
+		"\t-- k(%"PRIu32") | in_len (%"PRIu16") | op_add(%p)\n"
+		"\t-- cbs_in_op(%"PRIu32") | in_add (0x%08"PRIx32"%08"PRIx32") | "
+		"out_add (0x%08"PRIx32"%08"PRIx32")",
+		desc,
+		(uint32_t)desc->dec_req.done,
+		(uint32_t)desc->dec_req.iter,
+		(uint32_t)desc->dec_req.crc_pass,
+		(uint32_t)desc->dec_req.error,
+		(uint32_t)desc->dec_req.crc_type,
+		(uint32_t)desc->dec_req.max_iter,
+		(uint32_t)desc->dec_req.bypass_rm,
+		(uint32_t)desc->dec_req.irq_en,
+		(uint32_t)desc->dec_req.drop_crc,
+		(uint32_t)desc->dec_req.offset,
+		(uint32_t)desc->dec_req.k,
+		(uint16_t)desc->dec_req.in_len,
+		desc->dec_req.op_addr,
+		(uint32_t)desc->dec_req.cbs_in_op,
+		(uint32_t)desc->dec_req.in_addr_hi,
+		(uint32_t)desc->dec_req.in_addr_lw,
+		(uint32_t)desc->dec_req.out_addr_hi,
+		(uint32_t)desc->dec_req.out_addr_lw);
+}
+#endif
+
+static int
+fpga_setup_queues(struct rte_bbdev *dev, uint16_t num_queues, int socket_id)
+{
+	/* Number of queues bound to a PF/VF */
+	uint32_t hw_q_num = 0;
+	uint32_t ring_size, payload, address, q_id, offset;
+	rte_iova_t phys_addr;
+	struct fpga_ring_ctrl_reg ring_reg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	if (!(fpga_reg_read_32(fpga_dev->mmio_base, address) & 0x1)) {
+		rte_bbdev_log(ERR,
+				"Queue-PF/VF mapping is not set! Was PF configured for device (%s) ?",
+				dev->data->name);
+		return -EPERM;
+	}
+
+	/* Clear queue registers structure */
+	memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+
+	/* Scan queue map.
+	 * If a queue is valid and mapped to a calling PF/VF the read value is
+	 * replaced with a queue ID and if it's not then
+	 * FPGA_INVALID_HW_QUEUE_ID is returned.
+	 */
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(fpga_dev->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+
+		rte_bbdev_log_debug("%s: queue ID: %u, registry queue ID: %u",
+				dev->device->name, q_id, hw_q_id);
+
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID) {
+			fpga_dev->q_bound_bit_map |= (1ULL << q_id);
+			/* Clear queue register of found queue */
+			offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+				(sizeof(struct fpga_ring_ctrl_reg) * q_id);
+			fpga_ring_reg_write(fpga_dev->mmio_base,
+					offset, ring_reg);
+			++hw_q_num;
+		}
+	}
+	if (hw_q_num == 0) {
+		rte_bbdev_log(ERR,
+			"No HW queues assigned to this device. Probably this is a VF configured for PF mode. Check device configuration!");
+		return -ENODEV;
+	}
+
+	if (num_queues > hw_q_num) {
+		rte_bbdev_log(ERR,
+			"Not enough queues for device %s! Requested: %u, available: %u",
+			dev->device->name, num_queues, hw_q_num);
+		return -EINVAL;
+	}
+
+	ring_size = FPGA_RING_MAX_SIZE * sizeof(struct fpga_dma_dec_desc);
+
+	/* Enforce 32 byte alignment */
+	RTE_BUILD_BUG_ON((RTE_CACHE_LINE_SIZE % 32) != 0);
+
+	/* Allocate memory for SW descriptor rings */
+	fpga_dev->sw_rings = rte_zmalloc_socket(dev->device->driver->name,
+			num_queues * ring_size, RTE_CACHE_LINE_SIZE,
+			socket_id);
+	if (fpga_dev->sw_rings == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u sw_rings",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	fpga_dev->sw_rings_phys = rte_malloc_virt2iova(fpga_dev->sw_rings);
+	fpga_dev->sw_ring_size = ring_size;
+	fpga_dev->sw_ring_max_depth = FPGA_RING_MAX_SIZE;
+
+	/* Allocate memory for ring flush status */
+	fpga_dev->flush_queue_status = rte_zmalloc_socket(NULL,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, socket_id);
+	if (fpga_dev->flush_queue_status == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u flush_queue_status",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	/* Set the flush status address registers */
+	phys_addr = rte_malloc_virt2iova(fpga_dev->flush_queue_status);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW;
+	payload = (uint32_t)(phys_addr);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI;
+	payload = (uint32_t)(phys_addr >> 32);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	return 0;
+}
+
+static int
+fpga_dev_close(struct rte_bbdev *dev)
+{
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	rte_free(fpga_dev->sw_rings);
+	rte_free(fpga_dev->flush_queue_status);
+
+	return 0;
+}
+
+static void
+fpga_dev_info_get(struct rte_bbdev *dev,
+		struct rte_bbdev_driver_info *dev_info)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint32_t q_id = 0;
+
+	/* TODO RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN and numbers of buffers are set
+	 * to temporary values as they are required by test application while
+	 * validation phase.
+	 */
+	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+		{
+			.type = RTE_BBDEV_OP_TURBO_DEC,
+			.cap.turbo_dec = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_TYPE_24B |
+					RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE |
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS |
+					RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN |
+					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
+				.max_llr_modulus = INT8_MAX,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_hard_out =
+					RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_soft_out = 0
+			}
+		},
+		{
+			.type = RTE_BBDEV_OP_TURBO_ENC,
+			.cap.turbo_enc = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_24B_ATTACH |
+					RTE_BBDEV_TURBO_RATE_MATCH |
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_MAX_CODE_BLOCKS
+			}
+		},
+		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
+	};
+
+	static struct rte_bbdev_queue_conf default_queue_conf;
+	default_queue_conf.socket = dev->data->socket_id;
+	default_queue_conf.queue_size = FPGA_RING_MAX_SIZE;
+
+
+	dev_info->driver_name = dev->device->driver->name;
+	dev_info->queue_size_lim = FPGA_RING_MAX_SIZE;
+	dev_info->hardware_accelerated = true;
+	dev_info->min_alignment = 64;
+	dev_info->default_queue_conf = default_queue_conf;
+	dev_info->capabilities = bbdev_capabilities;
+	dev_info->cpu_flag_reqs = NULL;
+
+	/* Calculates number of queues assigned to device */
+	dev_info->max_num_queues = 0;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(d->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID)
+			dev_info->max_num_queues++;
+	}
+}
+
+/**
+ * Find index of queue bound to current PF/VF which is unassigned. Return -1
+ * when there is no available queue
+ */
+static int
+fpga_find_free_queue_idx(struct rte_bbdev *dev,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint64_t q_idx;
+	uint8_t i = 0;
+	uint8_t range = FPGA_TOTAL_NUM_QUEUES >> 1;
+
+	if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC) {
+		i = FPGA_NUM_DL_QUEUES;
+		range = FPGA_TOTAL_NUM_QUEUES;
+	}
+
+	for (; i < range; ++i) {
+		q_idx = 1ULL << i;
+		/* Check if index of queue is bound to current PF/VF */
+		if (d->q_bound_bit_map & q_idx)
+			/* Check if found queue was not already assigned */
+			if (!(d->q_assigned_bit_map & q_idx)) {
+				d->q_assigned_bit_map |= q_idx;
+				return i;
+			}
+	}
+
+	rte_bbdev_log(INFO, "Failed to find free queue on %s", dev->data->name);
+
+	return -1;
+}
+
+static int
+fpga_queue_setup(struct rte_bbdev *dev, uint16_t queue_id,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	uint32_t address, ring_offset;
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q;
+	int8_t q_idx;
+
+	/* Check if there is a free queue to assign */
+	q_idx = fpga_find_free_queue_idx(dev, conf);
+	if (q_idx == -1)
+		return -1;
+
+	/* Allocate the queue data structure. */
+	q = rte_zmalloc_socket(dev->device->driver->name, sizeof(*q),
+			RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_bbdev_log(ERR, "Failed to allocate queue memory");
+		return -ENOMEM;
+	}
+
+	q->d = d;
+	q->q_idx = q_idx;
+
+	/* Set ring_base_addr */
+	q->ring_addr = RTE_PTR_ADD(d->sw_rings, (d->sw_ring_size * queue_id));
+	q->ring_ctrl_reg.ring_base_addr = d->sw_rings_phys +
+			(d->sw_ring_size * queue_id);
+
+	/* Allocate memory for Completion Head variable*/
+	q->ring_head_addr = rte_zmalloc_socket(dev->device->driver->name,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q->ring_head_addr == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u completion_head",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+	/* Set ring_head_addr */
+	q->ring_ctrl_reg.ring_head_addr =
+			rte_malloc_virt2iova(q->ring_head_addr);
+
+	/* Clear shadow_completion_head */
+	q->shadow_completion_head = 0;
+
+	/* Set ring_size */
+	if (conf->queue_size > FPGA_RING_MAX_SIZE) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Size of queue is too big %d (MAX: %d ) for %s:%u",
+				conf->queue_size, FPGA_RING_MAX_SIZE,
+				dev->device->driver->name, dev->data->dev_id);
+		return -EINVAL;
+	}
+	q->ring_ctrl_reg.ring_size = conf->queue_size;
+
+	/* Set Miscellaneous FPGA register*/
+	/* Max iteration number for TTI mitigation - todo */
+	q->ring_ctrl_reg.max_ul_dec = 0;
+	/* Enable max iteration number for TTI - todo */
+	q->ring_ctrl_reg.max_ul_dec_en = 0;
+
+	/* Enable the ring */
+	q->ring_ctrl_reg.enable = 1;
+
+	/* Set FPGA head_point and tail registers */
+	q->ring_ctrl_reg.head_point = q->tail = 0;
+
+	/* Set FPGA shadow_tail register */
+	q->ring_ctrl_reg.shadow_tail = q->tail;
+
+	/* Calculates the ring offset for found queue */
+	ring_offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q_idx);
+
+	/* Set FPGA Ring Control Registers */
+	fpga_ring_reg_write(d->mmio_base, ring_offset, q->ring_ctrl_reg);
+
+	/* Store MMIO register of shadow_tail */
+	address = ring_offset + FPGA_LTE_FEC_RING_SHADOW_TAIL;
+	q->shadow_tail_addr = RTE_PTR_ADD(d->mmio_base, address);
+
+	q->head_free_desc = q->tail;
+
+	/* Set wrap mask */
+	q->sw_ring_wrap_mask = conf->queue_size - 1;
+
+	rte_bbdev_log_debug("Setup dev%u q%u: queue_idx=%u",
+			dev->data->dev_id, queue_id, q->q_idx);
+
+	dev->data->queues[queue_id].queue_private = q;
+
+	rte_bbdev_log_debug("BBDEV queue[%d] set up for FPGA queue[%d]",
+			queue_id, q_idx);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Read FPGA Ring Control Registers after configuration*/
+	print_ring_reg_debug_info(d->mmio_base, ring_offset);
+#endif
+	return 0;
+}
+
+static int
+fpga_queue_release(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	struct fpga_ring_ctrl_reg ring_reg;
+	uint32_t offset;
+
+	rte_bbdev_log_debug("FPGA Queue[%d] released", queue_id);
+
+	if (q != NULL) {
+		memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+		offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+		/* Disable queue */
+		fpga_reg_write_8(d->mmio_base,
+				offset + FPGA_LTE_FEC_RING_ENABLE, 0x00);
+		/* Clear queue registers */
+		fpga_ring_reg_write(d->mmio_base, offset, ring_reg);
+
+		/* Mark the Queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q->q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		dev->data->queues[queue_id].queue_private = NULL;
+	}
+
+	return 0;
+}
+
+/* Function starts a device queue. */
+static int
+fpga_queue_start(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t enable = 0x01;
+	uint16_t zero = 0x0000;
+
+	/* Clear queue head and tail variables */
+	q->tail = q->head_free_desc = 0;
+
+	/* Clear FPGA head_point and tail registers */
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			zero);
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			zero);
+
+	/* Enable queue */
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			enable);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] started", queue_id);
+	return 0;
+}
+
+/* Function stops a device queue. */
+static int
+fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t payload = 0x01;
+	uint8_t counter = 0;
+	uint8_t timeout = FPGA_QUEUE_FLUSH_TIMEOUT_US /
+			FPGA_TIMEOUT_CHECK_INTERVAL;
+
+	/* Set flush_queue_en bit to trigger queue flushing */
+	fpga_reg_write_8(d->mmio_base,
+			offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN, payload);
+
+	/** Check if queue flush is completed.
+	 * FPGA will update the completion flag after queue flushing is
+	 * completed. If completion flag is not updated within 1ms it is
+	 * considered as a failure.
+	 */
+	while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) {
+		if (counter > timeout) {
+			rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d",
+					queue_id);
+			return -1;
+		}
+		usleep(FPGA_TIMEOUT_CHECK_INTERVAL);
+		counter++;
+	}
+
+	/* Disable queue */
+	payload = 0x00;
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] stopped", queue_id);
+	return 0;
+}
+
+static inline uint16_t
+get_queue_id(struct rte_bbdev_data *data, uint8_t q_idx)
+{
+	uint16_t queue_id;
+
+	for (queue_id = 0; queue_id < data->num_queues; ++queue_id) {
+		struct fpga_queue *q = data->queues[queue_id].queue_private;
+		if (q != NULL && q->q_idx == q_idx)
+			return queue_id;
+	}
+
+	return -1;
+}
+
+/* Interrupt handler triggered by FPGA dev for handling specific interrupt */
+static void
+fpga_dev_interrupt_handler(void *cb_arg)
+{
+	struct rte_bbdev *dev = cb_arg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+	struct fpga_queue *q;
+	uint64_t ring_head;
+	uint64_t q_idx;
+	uint16_t queue_id;
+	uint8_t i;
+
+	/* Scan queue assigned to this device */
+	for (i = 0; i < FPGA_TOTAL_NUM_QUEUES; ++i) {
+		q_idx = 1ULL << i;
+		if (fpga_dev->q_bound_bit_map & q_idx) {
+			queue_id = get_queue_id(dev->data, i);
+			if (queue_id == (uint16_t) -1)
+				continue;
+
+			/* Check if completion head was changed */
+			q = dev->data->queues[queue_id].queue_private;
+			ring_head = *q->ring_head_addr;
+			if (q->shadow_completion_head != ring_head &&
+				q->irq_enable == 1) {
+				q->shadow_completion_head = ring_head;
+				rte_bbdev_pmd_callback_process(
+						dev,
+						RTE_BBDEV_EVENT_DEQUEUE,
+						&queue_id);
+			}
+		}
+	}
+}
+
+static int
+fpga_queue_intr_enable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle))
+		return -ENOTSUP;
+
+	q->irq_enable = 1;
+
+	return 0;
+}
+
+static int
+fpga_queue_intr_disable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	q->irq_enable = 0;
+
+	return 0;
+}
+
+static int
+fpga_intr_enable(struct rte_bbdev *dev)
+{
+	int ret;
+	uint8_t i;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle)) {
+		rte_bbdev_log(ERR, "Multiple intr vector is not supported by FPGA (%s)",
+				dev->data->name);
+		return -ENOTSUP;
+	}
+
+	/* Create event file descriptors for each of 64 queue. Event fds will be
+	 * mapped to FPGA IRQs in rte_intr_enable(). This is a 1:1 mapping where
+	 * the IRQ number is a direct translation to the queue number.
+	 *
+	 * 63 (FPGA_NUM_INTR_VEC) event fds are created as rte_intr_enable()
+	 * mapped the first IRQ to already created interrupt event file
+	 * descriptor (intr_handle->fd).
+	 */
+	if (rte_intr_efd_enable(dev->intr_handle, FPGA_NUM_INTR_VEC)) {
+		rte_bbdev_log(ERR, "Failed to create fds for %u queues",
+				dev->data->num_queues);
+		return -1;
+	}
+
+	/* TODO Each event file descriptor is overwritten by interrupt event
+	 * file descriptor. That descriptor is added to epoll observed list.
+	 * It ensures that callback function assigned to that descriptor will
+	 * invoked when any FPGA queue issues interrupt.
+	 */
+	for (i = 0; i < FPGA_NUM_INTR_VEC; ++i)
+		dev->intr_handle->efds[i] = dev->intr_handle->fd;
+
+	if (!dev->intr_handle->intr_vec) {
+		dev->intr_handle->intr_vec = rte_zmalloc("intr_vec",
+				dev->data->num_queues * sizeof(int), 0);
+		if (!dev->intr_handle->intr_vec) {
+			rte_bbdev_log(ERR, "Failed to allocate %u vectors",
+					dev->data->num_queues);
+			return -ENOMEM;
+		}
+	}
+
+	ret = rte_intr_enable(dev->intr_handle);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't enable interrupts for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	ret = rte_intr_callback_register(dev->intr_handle,
+			fpga_dev_interrupt_handler, dev);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't register interrupt callback for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct rte_bbdev_ops fpga_ops = {
+	.setup_queues = fpga_setup_queues,
+	.intr_enable = fpga_intr_enable,
+	.close = fpga_dev_close,
+	.info_get = fpga_dev_info_get,
+	.queue_setup = fpga_queue_setup,
+	.queue_stop = fpga_queue_stop,
+	.queue_start = fpga_queue_start,
+	.queue_release = fpga_queue_release,
+	.queue_intr_enable = fpga_queue_intr_enable,
+	.queue_intr_disable = fpga_queue_intr_disable
+};
+
+static inline void
+fpga_dma_enqueue(struct fpga_queue *q, uint16_t num_desc,
+		struct rte_bbdev_stats *queue_stats)
+{
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = 0;
+	queue_stats->acc_offload_cycles = 0;
+#else
+	RTE_SET_USED(queue_stats);
+#endif
+
+	/* Update tail and shadow_tail register */
+	q->tail = (q->tail + num_desc) & q->sw_ring_wrap_mask;
+
+	rte_wmb();
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	/* Start time measurement for enqueue function offload. */
+	start_time = rte_rdtsc_precise();
+#endif
+	mmio_write_16(q->shadow_tail_addr, q->tail);
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	rte_wmb();
+	queue_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+}
+
+/* Calculates number of CBs in processed encoder TB based on 'r' and input
+ * length.
+ */
+static inline uint8_t
+get_num_cbs_in_op_enc(struct rte_bbdev_op_turbo_enc *turbo_enc)
+{
+	uint8_t c, c_neg, r, crc24_bits = 0;
+	uint16_t k, k_neg, k_pos;
+	uint8_t cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_enc->input.length;
+	r = turbo_enc->tb_params.r;
+	c = turbo_enc->tb_params.c;
+	c_neg = turbo_enc->tb_params.c_neg;
+	k_neg = turbo_enc->tb_params.k_neg;
+	k_pos = turbo_enc->tb_params.k_pos;
+	crc24_bits = 24;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		length -= (k - crc24_bits) >> 3;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Calculates number of CBs in processed decoder TB based on 'r' and input
+ * length.
+ */
+static inline uint16_t
+get_num_cbs_in_op_dec(struct rte_bbdev_op_turbo_dec *turbo_dec)
+{
+	uint8_t c, c_neg, r = 0;
+	uint16_t kw, k, k_neg, k_pos, cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_dec->input.length;
+	r = turbo_dec->tb_params.r;
+	c = turbo_dec->tb_params.c;
+	c_neg = turbo_dec->tb_params.c_neg;
+	k_neg = turbo_dec->tb_params.k_neg;
+	k_pos = turbo_dec->tb_params.k_pos;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+		length -= kw;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Read flag value 0/1/ from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
+/* Print an error if a descriptor error has occurred.
+ *  Return 0 on success, 1 on failure
+ */
+static inline int
+check_desc_error(uint32_t error_code) {
+	switch (error_code) {
+	case DESC_ERR_NO_ERR:
+		return 0;
+	case DESC_ERR_K_OUT_OF_RANGE:
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144)");
+		break;
+	case DESC_ERR_K_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range");
+		break;
+	case DESC_ERR_KPAI_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only");
+		break;
+	case DESC_ERR_DESC_OFFSET_ERR:
+		rte_bbdev_log(ERR, "Queue offset does not meet the expectation in the FPGA");
+		break;
+	case (DESC_ERR_K_OUT_OF_RANGE | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144) and queue offset error");
+		break;
+	case (DESC_ERR_K_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range and queue offset error");
+		break;
+	case (DESC_ERR_KPAI_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only and queue offset error");
+		break;
+	case DESC_ERR_DESC_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for descriptor read");
+		break;
+	case DESC_ERR_DESC_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Descriptor read time-out");
+		break;
+	case DESC_ERR_DESC_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Descriptor read TLP poisoned");
+		break;
+	case DESC_ERR_CB_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for code block");
+		break;
+	case DESC_ERR_CB_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Code block read time-out");
+		break;
+	case DESC_ERR_CB_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Code block read TLP poisoned");
+		break;
+	default:
+		rte_bbdev_log(ERR, "Descriptor error unknown error code %u",
+				error_code);
+		break;
+	}
+	return 1;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param k
+ *   K value (length of input in bits).
+ * @param e
+ *   E value (length of output in bits).
+ * @param ncb
+ *   Ncb value (size of the soft buffer).
+ * @param out_length
+ *   Length of output buffer
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_te_fill(struct rte_bbdev_enc_op *op,
+		struct fpga_dma_enc_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t k, uint16_t e, uint16_t ncb,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+
+{
+	/* reset */
+	desc->done = 0;
+	desc->crc_en = check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_CRC_24B_ATTACH);
+	desc->bypass_rm = !check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_RATE_MATCH);
+	desc->k = k;
+	desc->e = e;
+	desc->ncb = ncb;
+	desc->rv = op->turbo_enc.rv_index;
+	desc->offset = desc_offset;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param in_length
+ *   Length of an input.
+ * @param k
+ *   K value (length of an output in bits).
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_td_fill(struct rte_bbdev_dec_op *op,
+		struct fpga_dma_dec_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t in_length, uint16_t k,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+{
+	/* reset */
+	desc->done = 0;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+	desc->in_len = in_length;
+	desc->k = k;
+	desc->crc_type = !check_bit(op->turbo_dec.op_flags,
+			RTE_BBDEV_TURBO_CRC_TYPE_24B);
+	if ((op->turbo_dec.code_block_mode == 0)
+		&& !check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		desc->drop_crc = 1;
+	desc->max_iter = op->turbo_dec.iter_max * 2;
+	desc->offset = desc_offset;
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo encoder parameters */
+static int
+validate_enc_op(struct rte_bbdev_enc_op *op)
+{
+	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
+	uint16_t kw, kw_neg, kw_pos;
+
+	if (turbo_enc->input.length >
+			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return -1;
+	}
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_enc->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_enc->output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid output pointer");
+		return -1;
+	}
+	if (turbo_enc->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_enc->rv_index);
+		return -1;
+	}
+	if (turbo_enc->code_block_mode != 0 &&
+			turbo_enc->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_enc->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_enc->code_block_mode == 0) {
+		tb = &turbo_enc->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+				&& tb->r < tb->cab) {
+			rte_bbdev_log(ERR,
+					"ea (%u) is less than %u or it is not even",
+					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+				&& tb->c > tb->cab) {
+			rte_bbdev_log(ERR,
+					"eb (%u) is less than %u or it is not even",
+					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
+			rte_bbdev_log(ERR,
+					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
+					tb->ncb_neg, tb->k_neg, kw_neg);
+			return -1;
+		}
+
+		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
+		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
+			rte_bbdev_log(ERR,
+					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
+					tb->ncb_pos, tb->k_pos, kw_pos);
+			return -1;
+		}
+		if (tb->r > (tb->c - 1)) {
+			rte_bbdev_log(ERR,
+					"r (%u) is greater than c - 1 (%u)",
+					tb->r, tb->c - 1);
+			return -1;
+		}
+	} else {
+		cb = &turbo_enc->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+
+		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+			rte_bbdev_log(ERR,
+					"e (%u) is less than %u or it is not even",
+					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
+		if (cb->ncb < cb->k || cb->ncb > kw) {
+			rte_bbdev_log(ERR,
+					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
+					cb->ncb, cb->k, kw);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline char *
+mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
+{
+	if (unlikely(len > rte_pktmbuf_tailroom(m)))
+		return NULL;
+
+	char *tail = (char *)m->buf_addr + m->data_off + m->data_len;
+	m->data_len = (uint16_t)(m->data_len + len);
+	m_head->pkt_len  = (m_head->pkt_len + len);
+	return tail;
+}
+
+static inline int
+enqueue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	total_left = op->turbo_enc.input.length;
+	k = op->turbo_enc.cb_params.k;
+	e = op->turbo_enc.cb_params.e;
+	ncb = op->turbo_enc.cb_params.ncb;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		in_length = ((k - 24) >> 3);
+	else
+		in_length = k >> 3;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_RATE_MATCH))
+		out_length = (e + 7) >> 3;
+	else
+		out_length = (k >> 3) * 3 + 2;
+
+	mbuf_append(output, output, out_length);
+
+	/* Offset into the ring */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	/* Setup DMA Descriptor */
+	desc = q->ring_addr + ring_offset;
+
+	ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output, k, e,
+			ncb, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_enc.output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+			"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+static inline int
+enqueue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c, crc24_bits = 0;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t mbuf_total_left, in_length, out_length, in_offset, out_offset;
+	uint32_t seg_total_left;
+	uint16_t current_enqueued_cbs = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output_head = output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	mbuf_total_left = op->turbo_enc.input.length;
+
+	c = op->turbo_enc.tb_params.c;
+	r = op->turbo_enc.tb_params.r;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		crc24_bits = 24;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+
+		e = (r < op->turbo_enc.tb_params.cab) ?
+				op->turbo_enc.tb_params.ea :
+				op->turbo_enc.tb_params.eb;
+		k = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.k_neg :
+				op->turbo_enc.tb_params.k_pos;
+		ncb = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.ncb_neg :
+				op->turbo_enc.tb_params.ncb_pos;
+
+		in_length = ((k - crc24_bits) >> 3);
+
+		if (check_bit(op->turbo_enc.op_flags,
+			RTE_BBDEV_TURBO_RATE_MATCH))
+			out_length = (e + 7) >> 3;
+		else
+			out_length = (k >> 3) * 3 + 2;
+
+		mbuf_append(output_head, output, out_length);
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output,
+				k, e, ncb, in_offset, out_offset, ring_offset,
+				cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		rte_bbdev_log_debug("DMA request desc %p", desc);
+
+		/* Update lengths */
+		op->turbo_enc.output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo decoder parameters */
+static int
+validate_dec_op(struct rte_bbdev_dec_op *op)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_dec->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_dec->hard_output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid hard_output pointer");
+		return -1;
+	}
+	if (turbo_dec->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_dec->rv_index);
+		return -1;
+	}
+	if (turbo_dec->iter_min < 1) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is less than 1",
+				turbo_dec->iter_min);
+		return -1;
+	}
+	if (turbo_dec->iter_max <= 2) {
+		rte_bbdev_log(ERR,
+				"iter_max (%u) is less than or equal to 2",
+				turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->iter_min > turbo_dec->iter_max) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is greater than iter_max (%u)",
+				turbo_dec->iter_min, turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->code_block_mode != 0 &&
+			turbo_dec->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_dec->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_dec->code_block_mode == 0) {
+
+		if ((turbo_dec->op_flags &
+			RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+			!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+			rte_bbdev_log(ERR,
+				"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP should accompany RTE_BBDEV_TURBO_CRC_TYPE_24B");
+			return -1;
+		}
+
+		tb = &turbo_dec->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c > tb->c_neg) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+	} else {
+
+		if (turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) {
+			rte_bbdev_log(ERR,
+					"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP is invalid in CB-mode");
+			return -1;
+		}
+
+		cb = &turbo_dec->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline int
+enqueue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, kw, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output = op->turbo_dec.hard_output.data;
+	total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	k = op->turbo_dec.cb_params.k;
+	kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+	in_length = kw;
+	out_length = k >> 3;
+
+	mbuf_append(output, output, out_length);
+
+	/* Setup DMA Descriptor */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	desc = q->ring_addr + ring_offset;
+	ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+			in_length, k, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+#endif
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_dec.hard_output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+
+static inline int
+enqueue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c;
+	uint16_t k, kw, in_length, out_length, ring_offset;
+	uint32_t mbuf_total_left, seg_total_left, in_offset, out_offset;
+	uint16_t current_enqueued_cbs = 0;
+	uint16_t crc24_overlap = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output_head = output = op->turbo_dec.hard_output.data;
+	mbuf_total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	if (!check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		crc24_overlap = 24;
+
+	c = op->turbo_dec.tb_params.c;
+	r = op->turbo_dec.tb_params.r;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+		k = (r < op->turbo_dec.tb_params.c_neg) ?
+				op->turbo_dec.tb_params.k_neg :
+				op->turbo_dec.tb_params.k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+
+		in_length = kw;
+		out_length = (k - crc24_overlap) >> 3;
+
+		mbuf_append(output_head, output, out_length);
+
+		if (seg_total_left < in_length) {
+			rte_bbdev_log(ERR,
+					"Partial CB found in a TB. FPGA Driver doesn't support scatter-gather operations!");
+			return -1;
+		}
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+				in_length, k, in_offset, out_offset,
+				ring_offset, cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		/* Update lengths */
+		ret = rte_pktmbuf_trim(op->turbo_dec.hard_output.data,
+				(crc24_overlap >> 3));
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		if (ret < 0) {
+			rte_bbdev_log(ERR,
+					"The length to remove is greater than the length of the last segment");
+			return -EINVAL;
+		}
+#endif
+		op->turbo_dec.hard_output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+static uint16_t
+fpga_enqueue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_enc.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_enc(&ops[i]->turbo_enc);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_enc_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_enc_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing enc ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->enc_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static uint16_t
+fpga_enqueue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_dec.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_dec(&ops[i]->turbo_dec);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_dec_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_dec_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing dec ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->dec_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static inline int
+dequeue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+
+	/* Set current desc */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/*check if done */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+	rte_bbdev_log_debug("DMA response desc %p", desc);
+
+	*op = desc->enc_req.op_addr;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status = desc_error << RTE_BBDEV_DATA_ERROR;
+
+	return 1;
+}
+
+static inline int
+dequeue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx;
+	int desc_error = 0;
+	int status = 0;
+
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->enc_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->enc_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |=  desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->enc_req.op_addr;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static inline int
+dequeue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+
+#endif
+
+	*op = desc->dec_req.op_addr;
+	/* FPGA reports in half-iterations, from 0 to 31. get ceiling */
+	(*op)->turbo_dec.iter_count = (desc->dec_req.iter + 2) >> 1;
+	/* crc_pass = 0 when decoder fails */
+	(*op)->status = !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status |= desc_error << RTE_BBDEV_DATA_ERROR;
+	return 1;
+}
+
+static inline int
+dequeue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx, iter_count = 0;
+	int status = 0;
+	int  desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->dec_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->dec_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* get max iter_count for all CBs in op */
+		iter_count = RTE_MAX(iter_count, (uint8_t) desc->dec_req.iter);
+		/* crc_pass = 0 when decoder fails, one fails all */
+		status |= !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |= desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->dec_req.op_addr;
+
+	/* FPGA reports in half-iterations, get ceiling */
+	(*op)->turbo_dec.iter_count = (iter_count + 2) >> 1;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static uint16_t
+fpga_dequeue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_enc_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->enc_req.op_addr;
+		if (op->turbo_enc.code_block_mode == 0)
+			ret = dequeue_enc_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_enc_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing enc ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+static uint16_t
+fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_dec_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->dec_req.op_addr;
+		if (op->turbo_dec.code_block_mode == 0)
+			ret = dequeue_dec_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_dec_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing dec ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+/* Initialization Function */
+static void
+fpga_lte_fec_init(struct rte_bbdev *dev)
+{
+	struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+
+	dev->dev_ops = &fpga_ops;
+	dev->enqueue_enc_ops = fpga_enqueue_enc;
+	dev->enqueue_dec_ops = fpga_enqueue_dec;
+	dev->dequeue_enc_ops = fpga_dequeue_enc;
+	dev->dequeue_dec_ops = fpga_dequeue_dec;
+
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device =
+			!strcmp(dev->device->driver->name,
+					RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME));
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base =
+			pci_dev->mem_resource[0].addr;
+
+	rte_bbdev_log_debug(
+			"Init device %s [%s] @ virtaddr %p phyaddr %#"PRIx64,
+			dev->device->driver->name, dev->data->name,
+			(void *)pci_dev->mem_resource[0].addr,
+			pci_dev->mem_resource[0].phys_addr);
+}
+
+static int
+fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev = NULL;
+	char dev_name[RTE_BBDEV_NAME_MAX_LEN];
+
+	if (pci_dev == NULL) {
+		rte_bbdev_log(ERR, "NULL PCI device");
+		return -EINVAL;
+	}
+
+	rte_pci_device_name(&pci_dev->addr, dev_name, sizeof(dev_name));
+
+	/* Allocate memory to be used privately by drivers */
+	bbdev = rte_bbdev_allocate(pci_dev->device.name);
+	if (bbdev == NULL)
+		return -ENODEV;
+
+	/* allocate device private memory */
+	bbdev->data->dev_private = rte_zmalloc_socket(dev_name,
+			sizeof(struct fpga_lte_fec_device), RTE_CACHE_LINE_SIZE,
+			pci_dev->device.numa_node);
+
+	if (bbdev->data->dev_private == NULL) {
+		rte_bbdev_log(CRIT,
+				"Allocate of %zu bytes for device \"%s\" failed",
+				sizeof(struct fpga_lte_fec_device), dev_name);
+				rte_bbdev_release(bbdev);
+			return -ENOMEM;
+	}
+
+	/* Fill HW specific part of device structure */
+	bbdev->device = &pci_dev->device;
+	bbdev->intr_handle = &pci_dev->intr_handle;
+	bbdev->data->socket_id = pci_dev->device.numa_node;
+
+	/* Invoke FEC FPGA device initialization function */
+	fpga_lte_fec_init(bbdev);
+
+	rte_bbdev_log_debug("bbdev id = %u [%s]",
+			bbdev->data->dev_id, dev_name);
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+	uint32_t version_id = fpga_reg_read_32(d->mmio_base,
+			FPGA_LTE_FEC_VERSION_ID);
+	rte_bbdev_log(INFO, "FEC FPGA RTL v%u.%u",
+		((uint16_t)(version_id >> 16)), ((uint16_t)version_id));
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (!strcmp(bbdev->device->driver->name,
+			RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)))
+		print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+static int
+fpga_lte_fec_remove(struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev;
+	int ret;
+	uint8_t dev_id;
+
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* Find device */
+	bbdev = rte_bbdev_get_named_dev(pci_dev->device.name);
+	if (bbdev == NULL) {
+		rte_bbdev_log(CRIT,
+				"Couldn't find HW dev \"%s\" to uninitialise it",
+				pci_dev->device.name);
+		return -ENODEV;
+	}
+	dev_id = bbdev->data->dev_id;
+
+	/* free device private memory before close */
+	rte_free(bbdev->data->dev_private);
+
+	/* Close device */
+	ret = rte_bbdev_close(dev_id);
+	if (ret < 0)
+		rte_bbdev_log(ERR,
+				"Device %i failed to close during uninit: %i",
+				dev_id, ret);
+
+	/* release bbdev from library */
+	ret = rte_bbdev_release(bbdev);
+	if (ret)
+		rte_bbdev_log(ERR, "Device %i failed to uninit: %i", dev_id,
+				ret);
+
+	rte_bbdev_log_debug("Destroyed bbdev = %u", dev_id);
+
+	return 0;
+}
+
+static inline void
+set_default_fpga_conf(struct fpga_lte_fec_conf *def_conf)
+{
+	/* clear default configuration before initialization */
+	memset(def_conf, 0, sizeof(struct fpga_lte_fec_conf));
+	/* Set pf mode to true */
+	def_conf->pf_mode_en = true;
+
+	/* Set ratio between UL and DL to 1:1 (unit of weight is 3 CBs) */
+	def_conf->ul_bandwidth = 3;
+	def_conf->dl_bandwidth = 3;
+
+	/* Set Load Balance Factor to 64 */
+	def_conf->dl_load_balance = 64;
+	def_conf->ul_load_balance = 64;
+}
+
+/* Initial configuration of FPGA LTE FEC device */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf)
+{
+	uint32_t payload_32, address;
+	uint16_t payload_16;
+	uint8_t payload_8;
+	uint16_t q_id, vf_id, total_q_id, total_ul_q_id, total_dl_q_id;
+	struct rte_bbdev *bbdev = rte_bbdev_get_named_dev(dev_name);
+	struct fpga_lte_fec_conf def_conf;
+
+	if (bbdev == NULL) {
+		rte_bbdev_log(ERR,
+				"Invalid dev_name (%s), or device is not yet initialised",
+				dev_name);
+		return -ENODEV;
+	}
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+
+	if (conf == NULL) {
+		rte_bbdev_log(ERR,
+				"FPGA Configuration was not provided. Default configuration will be loaded.");
+		set_default_fpga_conf(&def_conf);
+		conf = &def_conf;
+	}
+
+	/*
+	 * Configure UL:DL ratio.
+	 * [7:0]: UL weight
+	 * [15:8]: DL weight
+	 */
+	payload_16 = (conf->dl_bandwidth << 8) | conf->ul_bandwidth;
+	address = FPGA_LTE_FEC_CONFIGURATION;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Clear all queues registers */
+	payload_32 = FPGA_INVALID_HW_QUEUE_ID;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+		fpga_reg_write_32(d->mmio_base, address, payload_32);
+	}
+
+	/*
+	 * If PF mode is enabled allocate all queues for PF only.
+	 *
+	 * For VF mode each VF can have different number of UL and DL queues.
+	 * Total number of queues to configure cannot exceed FPGA
+	 * capabilities - 64 queues - 32 queues for UL and 32 queues for DL.
+	 * Queues mapping is done according to configuration:
+	 *
+	 * UL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 0                |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_dl_queues_number[0] - 1 |   0   |
+	 * | conf->vf_dl_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_dl_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_dl_queues_number[7] - 1 |   7   |
+	 *
+	 * DL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 32               |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_ul_queues_number[0] - 1 |   0   |
+	 * | conf->vf_ul_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_ul_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_ul_queues_number[7] - 1 |   7   |
+	 *
+	 * Example of configuration:
+	 * conf->vf_ul_queues_number[0] = 4;  -> 4 UL queues for VF0
+	 * conf->vf_dl_queues_number[0] = 4;  -> 4 DL queues for VF0
+	 * conf->vf_ul_queues_number[1] = 2;  -> 2 UL queues for VF1
+	 * conf->vf_dl_queues_number[1] = 2;  -> 2 DL queues for VF1
+	 *
+	 * UL:
+	 * | Q_ID | VF_ID |
+	 * |   0  |   0   |
+	 * |   1  |   0   |
+	 * |   2  |   0   |
+	 * |   3  |   0   |
+	 * |   4  |   1   |
+	 * |   5  |   1   |
+	 *
+	 * DL:
+	 * | Q_ID | VF_ID |
+	 * |  32  |   0   |
+	 * |  33  |   0   |
+	 * |  34  |   0   |
+	 * |  35  |   0   |
+	 * |  36  |   1   |
+	 * |  37  |   1   |
+	 */
+	if (conf->pf_mode_en) {
+		payload_32 = 0x1;
+		for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+			address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+			fpga_reg_write_32(d->mmio_base, address, payload_32);
+		}
+	} else {
+		/* Calculate total number of UL and DL queues to configure */
+		total_ul_q_id = total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			total_ul_q_id += conf->vf_ul_queues_number[vf_id];
+			total_dl_q_id += conf->vf_dl_queues_number[vf_id];
+		}
+		total_q_id = total_dl_q_id + total_ul_q_id;
+		/*
+		 * Check if total number of queues to configure does not exceed
+		 * FPGA capabilities (64 queues - 32 UL and 32 DL queues)
+		 */
+		if ((total_ul_q_id > FPGA_NUM_UL_QUEUES) ||
+			(total_dl_q_id > FPGA_NUM_DL_QUEUES) ||
+			(total_q_id > FPGA_TOTAL_NUM_QUEUES)) {
+			rte_bbdev_log(ERR,
+					"FPGA Configuration failed. Too many queues to configure: UL_Q %u, DL_Q %u, FPGA_Q %u",
+					total_ul_q_id, total_dl_q_id,
+					FPGA_TOTAL_NUM_QUEUES);
+			return -EINVAL;
+		}
+		total_ul_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_ul_queues_number[vf_id];
+					++q_id, ++total_ul_q_id) {
+				address = (total_ul_q_id << 2) +
+						FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+		total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_dl_queues_number[vf_id];
+					++q_id, ++total_dl_q_id) {
+				address = ((total_dl_q_id + FPGA_NUM_UL_QUEUES)
+						<< 2) + FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+	}
+
+	/* Setting Load Balance Factor */
+	payload_16 = (conf->dl_load_balance << 8) | (conf->ul_load_balance);
+	address = FPGA_LTE_FEC_LOAD_BALANCE_FACTOR;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting length of ring descriptor entry */
+	payload_16 = FPGA_RING_DESC_ENTRY_LENGTH;
+	address = FPGA_LTE_FEC_RING_DESC_LEN;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting FLR timeout value */
+	payload_16 = conf->flr_time_out;
+	address = FPGA_LTE_FEC_FLR_TIME_OUT;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Queue PF/VF mapping table is ready */
+	payload_8 = 0x1;
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	fpga_reg_write_8(d->mmio_base, address, payload_8);
+
+	rte_bbdev_log_debug("PF FPGA LTE FEC configuration complete for %s",
+			dev_name);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+/* FPGA LTE FEC PCI PF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_pf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_PF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_pf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_pf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+/* FPGA LTE FEC PCI VF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_vf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_VF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_vf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_vf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_PF_DRIVER_NAME, fpga_lte_fec_pci_pf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_pf_map);
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_vf_map);
+
+RTE_INIT(fpga_lte_fec_init_log)
+{
+	fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec");
+	if (fpga_lte_fec_logtype >= 0)
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG);
+#else
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE);
+#endif
+}
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
new file mode 100644
index 0000000..2c6952e
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2018 Intel Corporation
+ */
+
+#ifndef _FPGA_LTE_FEC_H_
+#define _FPGA_LTE_FEC_H_
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/**
+ * @file fpga_lte_fec.h
+ *
+ * Interface for Intel(R) FGPA LTE FEC device configuration at the host level,
+ * directly accessible by the application.
+ * Configuration related to LTE Turbo coding functionality is done through
+ * librte_bbdev library.
+ *
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**< Number of Virtual Functions FGPA 4G FEC supports */
+#define FPGA_LTE_FEC_NUM_VFS 8
+
+/**
+ * Structure to pass FPGA 4G FEC configuration.
+ */
+struct fpga_lte_fec_conf {
+	/**< 1 if PF is used for dataplane, 0 for VFs */
+	bool pf_mode_en;
+	/**< Number of UL queues per VF */
+	uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< Number of DL queues per VF */
+	uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< UL bandwidth. Needed for schedule algorithm */
+	uint8_t ul_bandwidth;
+	/**< DL bandwidth. Needed for schedule algorithm */
+	uint8_t dl_bandwidth;
+	/**< UL Load Balance */
+	uint8_t ul_load_balance;
+	/**< DL Load Balance */
+	uint8_t dl_load_balance;
+	/**< FLR timeout value */
+	uint16_t flr_time_out;
+};
+
+/**
+ * Configure Intel(R) FPGA LTE FEC device
+ *
+ * @param dev_name
+ *   The name of the device. This is the short form of PCI BDF, e.g. 00:01.0.
+ *   It can also be retrieved for a bbdev device from the dev_name field in the
+ *   rte_bbdev_info structure returned by rte_bbdev_info_get().
+ * @param conf
+ *   Configuration to apply to FPGA 4G FEC.
+ *
+ * @return
+ *   Zero on success, negative value on failure.
+ */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FPGA_LTE_FEC_H_ */
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
new file mode 100644
index 0000000..1a99f8d
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec_version.map
@@ -0,0 +1,3 @@
+DPDK_18.08 {
+    local: *;
+};
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 7c9b4b5..21d32a2 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -218,6 +218,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_NETVSC_PMD)     += -lrte_pmd_netvsc
 
 ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += -lrte_pmd_fpga_lte_fec
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 2/5] bbdev: extension of BBDEV for 5G FEC
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
  2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA Nicolas Chautru
@ 2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 3/5] baseband/turbo_sw: extension of turbosw " Nicolas Chautru
                     ` (3 subsequent siblings)
  6 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Supporting API for FEC operation with LDPC

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/prog_guide/bbdev.rst                  | 509 ++++++++++++++++++--
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     |  24 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  36 +-
 lib/librte_bbdev/rte_bbdev.c                     |  22 +-
 lib/librte_bbdev/rte_bbdev.h                     | 137 +++++-
 lib/librte_bbdev/rte_bbdev_op.h                  | 577 ++++++++++++++++++-----
 6 files changed, 1091 insertions(+), 214 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 658ffd4..9a47a9b 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -78,7 +78,7 @@ From the application point of view, each instance of a bbdev device consists of
 one or more queues identified by queue IDs. While different devices may have
 different capabilities (e.g. support different operation types), all queues on
 a device support identical configuration possibilities. A queue is configured
-for only one type of operation and is configured at initialization time.
+for only one type of operation and is configured at initializations time.
 When an operation is enqueued to a specific queue ID, the result is dequeued
 from the same queue ID.
 
@@ -91,8 +91,7 @@ and queue configuration is applied with
 ``rte_bbdev_queue_configure(dev_id,queue_id,conf)``. Note that, although all
 queues on a device support same capabilities, they can be configured differently
 and will then behave differently.
-Devices supporting interrupts can enable them by using
-``rte_bbdev_intr_enable(dev_id)``.
+Devices supporting interrupts can enable them by using ``rte_bbdev_intr_enable(dev_id)``.
 
 The configuration of each bbdev device includes the following operations:
 
@@ -150,8 +149,6 @@ device. Once closed, it cannot be restarted.
     int rte_bbdev_start(uint16_t dev_id)
     int rte_bbdev_stop(uint16_t dev_id)
     int rte_bbdev_close(uint16_t dev_id)
-    int rte_bbdev_queue_start(uint16_t dev_id, uint16_t queue_id)
-    int rte_bbdev_queue_stop(uint16_t dev_id, uint16_t queue_id)
 
 
 By default, all queues are started when the device is started, but they can be
@@ -166,9 +163,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +217,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +231,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +263,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +333,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +403,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +452,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +522,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +549,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +624,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +655,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +676,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +707,373 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (transport block mode only)          |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (code block mode only)         |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index 856b68e..64c96b3 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -607,9 +607,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -621,9 +621,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1389,15 +1389,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1731,15 +1731,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5204a77..c714d03 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -33,9 +33,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -101,7 +101,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -154,9 +154,9 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -168,8 +168,8 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -248,7 +248,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -268,7 +268,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -286,7 +286,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -304,7 +304,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -429,9 +429,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -456,9 +456,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -745,9 +745,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1027,7 +1027,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index a3ab5d9..7e4acfc 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev * __rte_experimental
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev * __rte_experimental
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev * __rte_experimental
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev * __rte_experimental
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool * __rte_experimental
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index d131692..63e382d 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -43,7 +43,7 @@
 #define RTE_BBDEV_MAX_DEVS 128  /**< Max number of devices */
 #endif
 
-/** Flags indicate current state of BBDEV device */
+/** Flags indiciate current state of BBDEV device */
 enum rte_bbdev_state {
 	RTE_BBDEV_UNUSED,
 	RTE_BBDEV_INITIALIZED
@@ -161,7 +161,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -313,7 +313,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -433,6 +433,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -506,6 +514,67 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -566,6 +635,68 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index 6be53f5..7ae6877 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,62 +26,66 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,110 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +216,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +228,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +236,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +251,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+};
+
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +352,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
+	};
+};
+
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	 * per bit of the original CB.
+	 */
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo encode code block parameters */
+struct rte_bbdev_op_enc_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** Turbo encode transport block parameters */
+struct rte_bbdev_op_enc_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +545,38 @@ struct rte_bbdev_op_enc_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +593,127 @@ struct rte_bbdev_op_enc_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched CB or TB output buffer */
+	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
+	};
+};
+
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched TB or CB output buffer */
 	struct rte_bbdev_op_data output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 0:Basegraph 0, 1: Basegraph 1. */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +721,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -513,7 +844,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -548,7 +880,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 2/5] bbdev: extension of BBDEV for 5G FEC
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 2/5] bbdev: extension of BBDEV for 5G FEC Nicolas Chautru
@ 2019-05-14 19:45     ` Nicolas Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Supporting API for FEC operation with LDPC

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/prog_guide/bbdev.rst                  | 509 ++++++++++++++++++--
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     |  24 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  36 +-
 lib/librte_bbdev/rte_bbdev.c                     |  22 +-
 lib/librte_bbdev/rte_bbdev.h                     | 137 +++++-
 lib/librte_bbdev/rte_bbdev_op.h                  | 577 ++++++++++++++++++-----
 6 files changed, 1091 insertions(+), 214 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 658ffd4..9a47a9b 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -78,7 +78,7 @@ From the application point of view, each instance of a bbdev device consists of
 one or more queues identified by queue IDs. While different devices may have
 different capabilities (e.g. support different operation types), all queues on
 a device support identical configuration possibilities. A queue is configured
-for only one type of operation and is configured at initialization time.
+for only one type of operation and is configured at initializations time.
 When an operation is enqueued to a specific queue ID, the result is dequeued
 from the same queue ID.
 
@@ -91,8 +91,7 @@ and queue configuration is applied with
 ``rte_bbdev_queue_configure(dev_id,queue_id,conf)``. Note that, although all
 queues on a device support same capabilities, they can be configured differently
 and will then behave differently.
-Devices supporting interrupts can enable them by using
-``rte_bbdev_intr_enable(dev_id)``.
+Devices supporting interrupts can enable them by using ``rte_bbdev_intr_enable(dev_id)``.
 
 The configuration of each bbdev device includes the following operations:
 
@@ -150,8 +149,6 @@ device. Once closed, it cannot be restarted.
     int rte_bbdev_start(uint16_t dev_id)
     int rte_bbdev_stop(uint16_t dev_id)
     int rte_bbdev_close(uint16_t dev_id)
-    int rte_bbdev_queue_start(uint16_t dev_id, uint16_t queue_id)
-    int rte_bbdev_queue_stop(uint16_t dev_id, uint16_t queue_id)
 
 
 By default, all queues are started when the device is started, but they can be
@@ -166,9 +163,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +217,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +231,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +263,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +333,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +403,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +452,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +522,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +549,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +624,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +655,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +676,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +707,373 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (transport block mode only)          |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (code block mode only)         |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index 856b68e..64c96b3 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -607,9 +607,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -621,9 +621,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1389,15 +1389,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1731,15 +1731,15 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5204a77..c714d03 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -33,9 +33,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -101,7 +101,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -154,9 +154,9 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -168,8 +168,8 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -248,7 +248,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -268,7 +268,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -286,7 +286,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -304,7 +304,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -429,9 +429,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -456,9 +456,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -745,9 +745,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1027,7 +1027,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index a3ab5d9..7e4acfc 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev * __rte_experimental
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev * __rte_experimental
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev * __rte_experimental
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev * __rte_experimental
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool * __rte_experimental
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index d131692..63e382d 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -43,7 +43,7 @@
 #define RTE_BBDEV_MAX_DEVS 128  /**< Max number of devices */
 #endif
 
-/** Flags indicate current state of BBDEV device */
+/** Flags indiciate current state of BBDEV device */
 enum rte_bbdev_state {
 	RTE_BBDEV_UNUSED,
 	RTE_BBDEV_INITIALIZED
@@ -161,7 +161,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -313,7 +313,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -433,6 +433,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -506,6 +514,67 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -566,6 +635,68 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index 6be53f5..7ae6877 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,62 +26,66 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,110 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +216,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +228,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +236,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +251,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+};
+
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +352,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
+	};
+};
+
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	 * per bit of the original CB.
+	 */
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo encode code block parameters */
+struct rte_bbdev_op_enc_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** Turbo encode transport block parameters */
+struct rte_bbdev_op_enc_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +545,38 @@ struct rte_bbdev_op_enc_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +593,127 @@ struct rte_bbdev_op_enc_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched CB or TB output buffer */
+	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
+	};
+};
+
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched TB or CB output buffer */
 	struct rte_bbdev_op_data output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 0:Basegraph 0, 1: Basegraph 1. */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +721,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -513,7 +844,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -548,7 +880,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 3/5] baseband/turbo_sw: extension of turbosw for 5G FEC
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
                     ` (2 preceding siblings ...)
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 2/5] bbdev: extension of BBDEV for 5G FEC Nicolas Chautru
@ 2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 4/5] test-bbdev: update of bbdev test-app Nicolas Chautru
                     ` (2 subsequent siblings)
  6 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Implementation still based on Intel SDK libraries
Optimized for AVX512 instructions set

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 config/common_base                               |   3 +-
 doc/guides/bbdevs/turbo_sw.rst                   |  57 +-
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 679 ++++++++++++++++++++++-
 mk/rte.app.mk                                    |   8 +-
 7 files changed, 731 insertions(+), 37 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/config/common_base b/config/common_base
index ae52028..78e41f2 100644
--- a/config/common_base
+++ b/config/common_base
@@ -523,7 +523,8 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 CONFIG_RTE_LIBRTE_BBDEV=y
 CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
+CONFIG_RTE_BBDEV_OFFLOAD_COST=n
+CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 29f7ec9..e67ecc4 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -1,26 +1,26 @@
 ..  SPDX-License-Identifier: BSD-3-Clause
     Copyright(c) 2017 Intel Corporation
 
-SW Turbo Poll Mode Driver
+SW FEC Poll Mode Driver
 =========================
 
-The SW Turbo PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
-Intel optimized libraries for LTE Layer 1 workloads acceleration. This PMD
-supports the functions: Turbo FEC, Rate Matching and CRC functions.
+The SW FEC PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
+Intel optimized libraries for LTE and 5GNR Layer 1 workloads acceleration. This PMD
+supports the functions: FEC, Rate Matching and CRC functions.
 
 Features
 --------
 
-SW Turbo PMD has support for the following capabilities:
+SW FEC PMD has support for the following capabilities:
 
-For the encode operation:
+For the LTE encode operation:
 
 * ``RTE_BBDEV_TURBO_CRC_24A_ATTACH``
 * ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 * ``RTE_BBDEV_TURBO_RATE_MATCH``
 * ``RTE_BBDEV_TURBO_RV_INDEX_BYPASS``
 
-For the decode operation:
+For the LTE decode operation:
 
 * ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE``
 * ``RTE_BBDEV_TURBO_CRC_TYPE_24B``
@@ -29,11 +29,25 @@ For the decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -65,14 +79,14 @@ The following table maps DPDK versions with past FlexRAN SDK releases:
    18.02                  1.3.0
    18.05                  1.4.0
    18.08                  1.6.0
-   19.02                  18.09
+   18.08-Patch            19.04
    =====================  ============================
 
 FlexRAN SDK Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
 The following are pre-requisites for building FlexRAN SDK Libraries:
- (a) An AVX2 supporting machine
+ (a) An AVX512 supporting machine
  (b) CentOS Linux release 7.2.1511 (Core) operating system
  (c) Intel ICC 18.0.1 20171018 compiler installed
 
@@ -84,25 +98,25 @@ The following instructions should be followed in this exact order:
 
         source <path-to-icc-compiler-install-folder>/linux/bin/compilervars.sh intel64 -platform linux
 
-#. Extract the ``605167-flexran-18-09-tar.gz`` package:
+#. Extract the ``...-flexran-19-04-tar.gz`` package:
 
     .. code-block:: console
 
-        mkdir FlexRAN-18.09
-        tar xvzf 605167-flexran-18-09-tar.gz -C FlexRAN-18.09/
+        mkdir FlexRAN-19.04
+        tar xvzf ...-flexran-19-04-tar.gz -C FlexRAN-19.04/
 
 #. Run the SDK extractor script and accept the license:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/
-        ./SDK-18.09.sh
+        cd <path-to-workspace>/FlexRAN-19.04/
+        ./SDK-19.04.sh
 
 #. Generate makefiles based on system configuration:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
+        cd <path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
         ./create-makefiles-linux.sh
 
 #. A build folder is generated in this form ``build-<ISA>-<CC>``, enter that
@@ -110,7 +124,7 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
 
@@ -129,12 +143,11 @@ Example:
 
 .. code-block:: console
 
-    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/build-avx2-icc/install
-    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
-
+    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/build-avx2-icc/install
+    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
 
-* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` in DPDK common configuration
-  file ``config/common_base``.
+* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` and ``CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=y``
+  in DPDK common configuration file ``config/common_base``.
 
 To use the PMD in an application, user must:
 
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index d364677..1a47dfb 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -26,12 +26,25 @@ CFLAGS += -I$(FLEXRAN_SDK)/lib_common
 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+endif
 
 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
-LDLIBS += -lstdc++ -lirc -limf -lipps
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
+LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 
 # library version
 LIBABIVER := 1
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index c714d03..af5e731 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,9 +14,23 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
+
 #include <divide.h>
 
 #define DRIVER_NAME baseband_turbo_sw
@@ -154,7 +168,8 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
 						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
@@ -168,10 +183,46 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			}
+		},
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
 			}
 		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.num_buffers_src =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
@@ -268,7 +319,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -276,7 +327,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -410,6 +461,7 @@ struct turbo_sw_queue {
 	.queue_release = q_release
 };
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -437,7 +489,9 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the decoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -464,15 +518,20 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -496,11 +555,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -529,11 +591,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -560,13 +625,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -726,6 +794,143 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -819,6 +1024,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -835,6 +1127,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
 		uint16_t ncb)
@@ -856,7 +1165,11 @@ struct turbo_sw_queue {
 		uint16_t crc24_overlap, uint16_t in_length,
 		struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -874,11 +1187,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -894,11 +1209,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -975,6 +1291,196 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		/* get output data starting address */
+		harq_out = NULL;
+		if (m_harq_out != NULL)
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq output mbuf");
+			return;
+		}
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1033,6 +1539,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1054,6 +1561,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1077,6 +1681,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1096,6 +1717,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1111,6 +1750,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1223,6 +1880,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 21d32a2..060e0ec 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -225,8 +225,14 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 3/5] baseband/turbo_sw: extension of turbosw for 5G FEC
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 3/5] baseband/turbo_sw: extension of turbosw " Nicolas Chautru
@ 2019-05-14 19:45     ` Nicolas Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Implementation still based on Intel SDK libraries
Optimized for AVX512 instructions set

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 config/common_base                               |   3 +-
 doc/guides/bbdevs/turbo_sw.rst                   |  57 +-
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 679 ++++++++++++++++++++++-
 mk/rte.app.mk                                    |   8 +-
 7 files changed, 731 insertions(+), 37 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/config/common_base b/config/common_base
index ae52028..78e41f2 100644
--- a/config/common_base
+++ b/config/common_base
@@ -523,7 +523,8 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 CONFIG_RTE_LIBRTE_BBDEV=y
 CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
+CONFIG_RTE_BBDEV_OFFLOAD_COST=n
+CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 29f7ec9..e67ecc4 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -1,26 +1,26 @@
 ..  SPDX-License-Identifier: BSD-3-Clause
     Copyright(c) 2017 Intel Corporation
 
-SW Turbo Poll Mode Driver
+SW FEC Poll Mode Driver
 =========================
 
-The SW Turbo PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
-Intel optimized libraries for LTE Layer 1 workloads acceleration. This PMD
-supports the functions: Turbo FEC, Rate Matching and CRC functions.
+The SW FEC PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
+Intel optimized libraries for LTE and 5GNR Layer 1 workloads acceleration. This PMD
+supports the functions: FEC, Rate Matching and CRC functions.
 
 Features
 --------
 
-SW Turbo PMD has support for the following capabilities:
+SW FEC PMD has support for the following capabilities:
 
-For the encode operation:
+For the LTE encode operation:
 
 * ``RTE_BBDEV_TURBO_CRC_24A_ATTACH``
 * ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 * ``RTE_BBDEV_TURBO_RATE_MATCH``
 * ``RTE_BBDEV_TURBO_RV_INDEX_BYPASS``
 
-For the decode operation:
+For the LTE decode operation:
 
 * ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE``
 * ``RTE_BBDEV_TURBO_CRC_TYPE_24B``
@@ -29,11 +29,25 @@ For the decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -65,14 +79,14 @@ The following table maps DPDK versions with past FlexRAN SDK releases:
    18.02                  1.3.0
    18.05                  1.4.0
    18.08                  1.6.0
-   19.02                  18.09
+   18.08-Patch            19.04
    =====================  ============================
 
 FlexRAN SDK Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
 The following are pre-requisites for building FlexRAN SDK Libraries:
- (a) An AVX2 supporting machine
+ (a) An AVX512 supporting machine
  (b) CentOS Linux release 7.2.1511 (Core) operating system
  (c) Intel ICC 18.0.1 20171018 compiler installed
 
@@ -84,25 +98,25 @@ The following instructions should be followed in this exact order:
 
         source <path-to-icc-compiler-install-folder>/linux/bin/compilervars.sh intel64 -platform linux
 
-#. Extract the ``605167-flexran-18-09-tar.gz`` package:
+#. Extract the ``...-flexran-19-04-tar.gz`` package:
 
     .. code-block:: console
 
-        mkdir FlexRAN-18.09
-        tar xvzf 605167-flexran-18-09-tar.gz -C FlexRAN-18.09/
+        mkdir FlexRAN-19.04
+        tar xvzf ...-flexran-19-04-tar.gz -C FlexRAN-19.04/
 
 #. Run the SDK extractor script and accept the license:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/
-        ./SDK-18.09.sh
+        cd <path-to-workspace>/FlexRAN-19.04/
+        ./SDK-19.04.sh
 
 #. Generate makefiles based on system configuration:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
+        cd <path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
         ./create-makefiles-linux.sh
 
 #. A build folder is generated in this form ``build-<ISA>-<CC>``, enter that
@@ -110,7 +124,7 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
 
@@ -129,12 +143,11 @@ Example:
 
 .. code-block:: console
 
-    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/build-avx2-icc/install
-    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
-
+    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/build-avx2-icc/install
+    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-19.04/SDK-19.04/sdk/
 
-* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` in DPDK common configuration
-  file ``config/common_base``.
+* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` and ``CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512=y``
+  in DPDK common configuration file ``config/common_base``.
 
 To use the PMD in an application, user must:
 
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index d364677..1a47dfb 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -26,12 +26,25 @@ CFLAGS += -I$(FLEXRAN_SDK)/lib_common
 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+endif
 
 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
-LDLIBS += -lstdc++ -lirc -limf -lipps
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
+LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 
 # library version
 LIBABIVER := 1
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index c714d03..af5e731 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,9 +14,23 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
+
 #include <divide.h>
 
 #define DRIVER_NAME baseband_turbo_sw
@@ -154,7 +168,8 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
 						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
@@ -168,10 +183,46 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			}
+		},
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
 			}
 		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.num_buffers_src =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
@@ -268,7 +319,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -276,7 +327,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -410,6 +461,7 @@ struct turbo_sw_queue {
 	.queue_release = q_release
 };
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -437,7 +489,9 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the decoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -464,15 +518,20 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -496,11 +555,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -529,11 +591,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -560,13 +625,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -726,6 +794,143 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -819,6 +1024,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -835,6 +1127,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
 		uint16_t ncb)
@@ -856,7 +1165,11 @@ struct turbo_sw_queue {
 		uint16_t crc24_overlap, uint16_t in_length,
 		struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -874,11 +1187,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -894,11 +1209,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -975,6 +1291,196 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_LIBRTE_PMD_BBDEV_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		/* get output data starting address */
+		harq_out = NULL;
+		if (m_harq_out != NULL)
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq output mbuf");
+			return;
+		}
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1033,6 +1539,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1054,6 +1561,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1077,6 +1681,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1096,6 +1717,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1111,6 +1750,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1223,6 +1880,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 21d32a2..060e0ec 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -225,8 +225,14 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
+ifeq ($(CONFIG_RTE_LIBRTE_PMD_BBDEV_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 4/5] test-bbdev: update of bbdev test-app
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
                     ` (3 preceding siblings ...)
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 3/5] baseband/turbo_sw: extension of turbosw " Nicolas Chautru
@ 2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 5/5] usertools: update to usertool for baseband device Nicolas Chautru
  2019-05-14 20:54   ` [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08 Thomas Monjalon
  6 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Updated to match support in PMD drivers
for FPGA and 5G SW implementation.
Extending test framework for FEC 5G operations
Addition of test vectors for 5G LDPC

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 +++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  517 ++++-
 app/test-bbdev/test_bbdev_vector.h                 |   14 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 ++++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 ++++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 ++
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 +++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 +++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 +++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 +++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 ++++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 +++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 52 files changed, 22282 insertions(+), 165 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 100644
index 0000000..e1df6ea
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_HARQ_1_1.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 100644
index 0000000..9901517
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
\ No newline at end of file
diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..653907d 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -6,4 +6,4 @@ sources = files('main.c',
 		'test_bbdev_perf.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
-deps += ['bbdev', 'bus_vdev']
+deps = ['bbdev', 'bus_vdev']
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
old mode 100755
new mode 100644
index 25340ec..a94ba9a
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -23,7 +23,7 @@ def kill(process):
 if "RTE_TARGET" in os.environ:
     dpdk_target = os.environ["RTE_TARGET"]
 else:
-    dpdk_target = "x86_64-native-linux-gcc"
+    dpdk_target = "x86_64-native-linuxapp-gcc"
 
 parser = argparse.ArgumentParser(
                     description='BBdev Unit Test Application',
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..dc7ee1d 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,57 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set pf mode, true if PF is used for dataplane,
+		 *  false for VFs
+		 */
+
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +783,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +822,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +868,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +887,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +942,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +976,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +997,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1106,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1305,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1386,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1423,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1456,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1489,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1526,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1553,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1568,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1619,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
+
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
 		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
 
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
 		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1706,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1730,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1775,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1798,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1883,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1898,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1987,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2098,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2285,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2298,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2451,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, itr mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2474,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2494,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2542,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1860,9 +2584,11 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2666,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2804,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2907,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2916,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2995,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3029,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3060,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3162,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3195,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3223,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3341,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3369,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3395,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3501,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3517,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..d478d76 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -2,7 +2,7 @@
  * Copyright(c) 2017 Intel Corporation
  */
 
-#ifdef RTE_EXEC_ENV_FREEBSD
+#ifdef RTE_EXEC_ENV_BSDAPP
 	#define _WITH_GETLINE
 #endif
 #include <stdio.h>
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..c8d38e3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,354 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..19a1537
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,685 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..d1f8f45
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,903 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
new file mode 100644
index 0000000..2588655
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
@@ -0,0 +1,939 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_HARQ
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x07151003, 0x09FBFA0E, 0xFB0BF9EE, 0xFC1306F8, 0x0BF6FCFB, 0x0407F709, 0x0CF30FF1, 0x10F7070F,
+0xFEFB0EF8, 0x0F0B12F5, 0xF3F506F2, 0x0B05F0F0, 0x00FA050B, 0xF40C15F6, 0xF7FAF5F5, 0xF7EC140A,
+0x05F20C0D, 0xF6060D10, 0xF90FF8EF, 0xEF08F20D, 0xF8F9F80D, 0x06F4F5ED, 0xFD12F3FE, 0x0610F30D,
+0x0312EEF8, 0x0DFB03F8, 0x01031408, 0xFD0E02F3, 0xF1EE0AFF, 0x0AF609F8, 0x1503FAFC, 0x0DFF04FD,
+0xED0F0F0F, 0x0CF7FE0C, 0x1006F1EE, 0x14EEF00A, 0xEE0AF2F2, 0x0BED04F2, 0x0612F5F2, 0x0FF314F4,
+0x00F00D04, 0x08140509, 0x05EC0E18, 0xF40B09F8, 0xE90F01EF, 0x0DFDFB02, 0x07EF10F3, 0x03F211ED,
+0xEF16FD00, 0x06F4040A, 0x0B0BF910, 0x0B0206F8, 0x0D0109ED, 0xECF2F006, 0xFFF50A07, 0xFB06F5F7,
+0x0D0EF210, 0x07010611, 0x06F2F9F8, 0x0E06EF00, 0x070CF1F8, 0x0C0FF405, 0x10EA0CF6, 0xFDEF0B14,
+0x17FCF80C, 0x08F506F4, 0x09000AFF, 0xFA05F50C, 0x040DF9F6, 0x0A0B12FD, 0x12F41201, 0xF20707F3,
+0xFDF402F8, 0xFDFB0FF0, 0xEE070D05, 0xE9F0F006, 0xFCF8F1F4, 0xF9FA0F0D, 0xE9050B09, 0xEEF2140D,
+0x020AF5F8, 0xFBED0CF6, 0xF110F4EF, 0x0C07130A, 0xEF12FD0A, 0xF6050708, 0x10F1FA00, 0x0B0CF40D,
+0x04F5FBFF, 0x00EEF2FF, 0xEFF9F701, 0xFA140DF8, 0xF404ECFC, 0x0A04EDF9, 0x0213080C, 0xF1F60916,
+0xF0F40000, 0x1303F614, 0xF009FFF2, 0xF8F5F2FA, 0x0B0C0414, 0xFB0E0EFA, 0x12010B11, 0xF50EFA05,
+0xF4FBFA09, 0x130605EF, 0x0B030B0E, 0x0717E7F3, 0xF405FDF5, 0xEFF5EAFE, 0x07F9F3FB, 0xF9FD0812,
+0x0DF70A16, 0x05F210F4, 0x06F708F3, 0x040C0EF9, 0x090D0AF2, 0x02FFF9FB, 0xF7F5FD12, 0xFF0BF5FB,
+0xF1F60A0C, 0x01EF13FD, 0x070BED0D, 0xF10A0BF7, 0x01010BF4, 0xF703FBF6, 0x06FAFA05, 0x050CEFFD,
+0x1107EE00, 0xF5EEFBF0, 0xF3EF0615, 0xF203FC12, 0x0FEC000B, 0xF70C0C06, 0x04F6EE0E, 0x0EF1070C,
+0xFE0D0A10, 0xF6EC0CFA, 0xF5060D07, 0xF708E8F0, 0xF5EEFDF7, 0xEE09F6FD, 0x020AEEFC, 0x090BE811,
+0xF70CFCF7, 0xEFF809F1, 0xF00AF1F5, 0xF00C0CFB, 0xFC0AF4FF, 0xF8FB0817, 0xEEEFFA04, 0xFB04EC08,
+0x02F411FE, 0xFCFDF2F4, 0x06EB0307, 0xF905F108, 0xF4ED09F7, 0xF7FFF010, 0x0CF601E8, 0xEEF714F0,
+0xF502EFFA, 0x0A000AF1, 0xF5F30501, 0xF1F008F2, 0xFD06EC11, 0xE9FA02FF, 0x0A15F6F4, 0xF307080C,
+0x10F7F20B, 0xF9F90402, 0x09FEF315, 0x0DFA060B, 0xF6FC08F7, 0xF707FB06, 0xF00A050E, 0xF40608FD,
+0xF6F8F1F5, 0xFAFBFDF7, 0x0AFA0A11, 0x03080C09, 0x11F1F8FF, 0xFF000CE9, 0xF7120C0A, 0x05F4FD03,
+0xF5030203, 0x0C0914F8, 0xFDF8080B, 0x12FBFD0A, 0xF308FF09, 0xF9FA0B14, 0x0EF71117, 0xF50AF2EF,
+0x0D160610, 0xF2FBFE0F, 0xF907F5FC, 0xFE110707, 0x0D0BF9F7, 0xFC050808, 0x0B08F5FC, 0xF206F1F9,
+0x1DF5FAFF, 0x0BF0060C, 0x020C110E, 0xFB040007, 0x02F4F4F8, 0x0D100EF0, 0x110201F3, 0x06F5EA00,
+0xF4E80DFE, 0x0A0E0A01, 0x07FB0DF7, 0x06E7F712, 0xFDFE06F9, 0xF4F00CF0, 0x0809F5F9, 0xF30CFA09,
+0x16F6EFF2, 0xFEF6EBFA, 0x0D0E090D, 0xF70DEF08, 0xF015F0F3, 0x15011206, 0xF305ECF2, 0x180301FC,
+0xFBF2F1F8, 0x05F9070F, 0xFC0C0813, 0xF3F9F2FD, 0x11F30EEF, 0x00FCEDFE, 0x0D05F810, 0x10F7FDF9,
+0xF9EA0AE9, 0x0BFA08F3, 0xF90505F8, 0x10FA0DF8, 0x14FB14FE, 0xF0F6EDF3, 0x0D03F8FC, 0x0AF00E0E,
+0x0C000203, 0x08F81612, 0xFAF1FFF9, 0x100CFDF3, 0xF609F1FA, 0xF5FB14FC, 0x0CFD0808, 0xF000FE0D,
+0x04F7070A, 0x12F50F00, 0xF90FEE08, 0x110CEFFA, 0x090C0B0A, 0x0D0B0DF4, 0x0EFBF80C, 0xFC030604,
+0x09F804FA, 0xF2F709F5, 0x08FF0F13, 0xF2FAFA02, 0xF101F512, 0x0E0B07F4, 0xF60FF9F7, 0xFBF4F107,
+0x05F6FD07, 0x0EEC080C, 0xFBFBFFEE, 0xF713FCF8, 0x0D08F6FB, 0x1612060D, 0x120DF4FE, 0xF50AECF5,
+0x02F00BF5, 0x0A05FF10, 0x0C020A06, 0xFAF4EB0E, 0x03F7F8F3, 0x13F4F9F5, 0xF70BF00D, 0xF302F614,
+0xF00A04F6, 0x0BFA100F, 0x0BF70B0A, 0x020713F4, 0x06F7F5E7, 0xF905F101, 0x04090812, 0xFFF9090C,
+0xF8F4F3F5, 0xF1FE07EF, 0x03FC0708, 0x03FFFCFF, 0xEEF90812, 0xFDF7FC0A, 0x150A0008, 0x09FFF3F9,
+0x06F2F2F1, 0xF0120BEF, 0xF90CF3F7, 0xF804ECFB, 0xF7E806F5, 0xFF0109FD, 0xEB08E70D, 0xF2FAF40C,
+0x06F70DED, 0xF1120216, 0xFF060DFB, 0x0EE70D01, 0xF5FFF6FF, 0x07F0ED0D, 0xF10A0C07, 0xF4F0EF0C,
+0x09F607F7, 0xF80BFF00, 0x030E07F4, 0xF80813F4, 0xEFF8F80F, 0x0AF2FC0B, 0xF303F4F0, 0xF1F9F5FD,
+0xFDF90402, 0x04FDF203, 0xF51B0EEF, 0x03F2F0FC, 0x07FC11F1, 0xF5F60F11, 0xF00D0907, 0xF317F20B,
+0x10031C00, 0x04F40009, 0xF011090D, 0x1006000B, 0x16FF0FF8, 0x0DF61110, 0x0CF70D04, 0x02F8F7FF,
+0x06FE0B09, 0x0D08F8F8, 0x080DFB06, 0xEF0F0E0C, 0xFF0CF908, 0x0305FDF4, 0xF4EE0E10, 0x08EA05EE,
+0x0B0A06FD, 0xF9FBFFFD, 0x0EF20605, 0x0EF2F6F7, 0x01FE0EF9, 0xF50107F7, 0x04F80616, 0xFEEEF4F3,
+0x140D08FB, 0x0F0C03F4, 0xFBF8FC01, 0x0D02EBF9, 0xED06F905, 0x1FF8F0F4, 0x0E0CF3FE, 0x0DF31402,
+0xFD0E07F2, 0x06F4F60C, 0x02150B06, 0xFCF2E901, 0x07F5F7F4, 0x02F017E6, 0x00F90305, 0x1008FD0D,
+0xF5F10B08, 0x09FB04F6, 0xFCF702F4, 0xF10F15F0, 0x071213FC, 0xF5EB0F08, 0xFDF6F005, 0x12EEFC18,
+0xF0FC0606, 0xFC0D0DF9, 0x0709ECFD, 0x0A0608F7, 0xFEEE14F0, 0xEDF60AFE, 0xED04090C, 0x12F50BF3,
+0x01F6010D, 0x0BEAF019, 0xF0080EF5, 0xFB08F2ED, 0x07120BFB, 0x040612F1, 0xFF0A10F0, 0xF6F4F30D,
+0x0D0700F9, 0xF6EC0BED, 0x030D010E, 0xF300F813, 0xEFF70FF7, 0xF2020D0B, 0xFC0B0AF0, 0xFA02F4F2,
+0x0E0BF005, 0xEE04F6F9, 0x1302F9F3, 0x08150603, 0xFB0D0407, 0xFFFFF7F8, 0x050FF8EF, 0xF4F6F3F9,
+0xEFF707FD, 0x04FBF5F0, 0x0DFCED00, 0xF10BEEF9, 0x07F80A12, 0xFBECFEF7, 0x06F3F704, 0x06EFF9FD,
+0x0016FF04, 0x03E41207, 0xEFF6EE14, 0x0802F413, 0xFE010A05, 0xF20403F8, 0x1AFBF816, 0x12EC100D,
+0x0EF70707, 0x04E6100E, 0xEF090D01, 0xF5EE1CF4, 0xF4F50609, 0xEFFFF50C, 0xF2F0FC05, 0x0102160B,
+0xF41015F9, 0x12F1F70C, 0x0FFFF10B, 0x0EF2F40B, 0xF8FD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF71108,
+0x05F30A06, 0xF7090DF0, 0x031AF9FB, 0xF8EC1A08, 0xF4EEF509, 0xF20202F6, 0x0E0B050F, 0xFBFBF30D,
+0x09ED0C0A, 0xF0F6FAF7, 0xF7FB04EB, 0x08ECF8FA, 0x0E10ECFC, 0xED040314, 0xE9EF0CF4, 0xF6F904FD,
+0xF7000001, 0xEFF01007, 0xFF0C1302, 0x05F4F2FC, 0xF908FB0B, 0xECF80AFE, 0xFDF7F302, 0xEA12EFF0,
+0x0F0F0D07, 0xF6FC0103, 0xF40607F5, 0xF2EF0FF9, 0xF6070005, 0xF40503FA, 0xEE0B06F8, 0x0100050A,
+0xF913F7FD, 0xF5EF0B01, 0xFDEEFBFF, 0xEEEDEA03, 0xF8F7F80F, 0x070D0F0C, 0xF50502F0, 0x0BFBF001,
+0x0A0CF008, 0xF6ED070B, 0x1A020DFE, 0xFDF2F818, 0x09010BF9, 0xF6ED0308, 0x040EFA02, 0xF9F2FB10,
+0xEF100B07, 0xF5FAF50C, 0x0F0CE9F9, 0xFB0E1304, 0xF103070D, 0x0CF3020D, 0xF80FF705, 0xFB1205ED,
+0xF5F1EB00, 0x0D070C1B, 0x0DF704F4, 0xF107FE09, 0xEF03F8F6, 0xFA020509, 0xFDF40A14, 0x16081215,
+0x09F5F7F6, 0x0EF8F6F0, 0x0AFB0EEE, 0xF3FC02F9, 0x0812EE0C, 0xFCF90710, 0xF6EA00F5, 0x0A04F0FB,
+0x09F7EE0B, 0x13F3F4F5, 0x11F718EF, 0x0CFC0BFC, 0xF70AEAFE, 0xFCF201FB, 0xF4000F01, 0xFBEE11EC,
+0xF70AF4FA, 0x0D020BED, 0x08FE090D, 0xF907F6FC, 0xFAF2F309, 0x0D10FD0C, 0x0E06FAEE, 0xFCFBFE06,
+0x15F8F4FC, 0x020D160B, 0xFFF4FB0C, 0x04FDE8FC, 0x090C120B, 0x0B1010F2, 0xF9EE0DF3, 0x0C03080D,
+0xF109FCFD, 0x0CF8EB11, 0x0604EE08, 0x07F8F4F6, 0xF807F8F8, 0xFCF51400, 0x050EFD0F, 0x0C0CF216,
+0xF9FFF20D, 0x0802F50D, 0xF50213F5, 0x0C0BF804, 0xF609F8EF, 0xF90AF509, 0xF914FEFA, 0xF10BEA0A,
+0xF8F3050A, 0x10F5F6FF, 0x0A120BFD, 0xF5F5ECF9, 0xF90DFC0C, 0xF20808F1, 0x01EEF00D, 0xF5EC0FF2,
+0xF4F30EEA, 0xEFFAF702, 0xFC17F6F7, 0x0C07F6FE, 0xF1ECF9FF, 0x09FEF4FF, 0xFA020B11, 0xFFEDFC0B,
+0x07F4ECFA, 0x02F6F6F4, 0x09F712F1, 0x0806EA0E, 0xF7F7F81A, 0x0B08EF07, 0x100CFCF7, 0xEFFB08F2,
+0xFAF0FD0C, 0xF3F31111, 0x16F5000F, 0x0DF10608, 0xFA07F3F3, 0x13F108FE, 0xEDEB120E, 0xFFF4F005,
+0x07F304F9, 0xF408FCFC, 0xFCFE0500, 0xF5F6ECF3, 0xF70609F3, 0x09020C01, 0x1001F80F, 0x0C0DFCF4,
+0xFB0F10F2, 0xF7F50B0B, 0x08F2F4F8, 0xF70BF6F8, 0x18F60808, 0xF107F9FC, 0x13F3F40C, 0x00EC0AFB,
+0x0BF30711, 0x06FFF70E, 0x17FC0AF4, 0x04E412F7, 0x0FF7FEF4, 0xFCF80209, 0x13FDED0D, 0x02F00801,
+0xF5070E05, 0xF111F6F1, 0x00F4E4FA, 0xF90E0E00, 0x07F4F50F, 0x0E0C0FF8, 0x14F70B0A, 0x09F6F4F7,
+0xECFD07F4, 0xF0070A04, 0x0112FAF3, 0xFF11EFF5, 0xF8F90905, 0x0409F507, 0xEAF7FBE9, 0xF1F5F0FF,
+0xF6F8F50F, 0x0BEA040A, 0xF701EFF1, 0x0D04F703, 0xEB07FE09, 0x1309F8E7, 0xF80BF3F8, 0x0EF6F50A,
+0x0912F6F1, 0x05FA0314, 0x0719F6EF, 0x1204FAE5, 0x0C0BF9FD, 0x0AF411EF, 0xF4F8EEF3, 0x02F0F10C,
+0x0F030107, 0x0AFEEF01, 0xFE0806F1, 0xF6F3FF15, 0x0B07E9F5, 0x05F9FB08, 0x03F8F3F5, 0x0FF7FD0E,
+0xF50DF7F8, 0xF6F7FEFF, 0x12F4F306, 0xFE05FB0B, 0xF2F2F2F6, 0xFAFB00EE, 0x0E110F06, 0xFA000CFD,
+0x0E02110A, 0xFA07E902, 0xF9FCF6F0, 0x0E08FCF5, 0x0514EFFB, 0xFDEEF4F8, 0xF9F70004, 0x0B07F9EC,
+0xE5140FF1, 0xF8090E06, 0x09EBEF0B, 0xFB0D0D09, 0xECFD0AF8, 0x0A02F512, 0xF504F90E, 0x0DF3030B,
+0x1002F20C, 0xFBEAFB02, 0x0AFD0805, 0xF1F1F6F4, 0xF807EFF7, 0x010107FA, 0xEE0DF6F9, 0xF90A0CFA,
+0x10F6F50C, 0x0B0B16FC, 0xF608F305, 0xFD15F308, 0xF9121515, 0xFA0BFF0A, 0x04F7FF0D, 0x0CFB03FB,
+0xFD160B0A, 0xFDEFF5FB, 0x0C17090A, 0x08090B09, 0xEAF5F5F8, 0xFFFB00FC, 0x0800FFF6, 0xF111E612,
+0x00F2F6F5, 0xFAEFEDF4, 0x0F0FFCFB, 0xF01009F8, 0xF6F4EFF7, 0xF3F0FB05, 0xFE02FAFD, 0x12EFF5F4,
+0xF3090907, 0x0B07FC11, 0x0CED110F, 0xF00709F5, 0x03FEF2F6, 0x04F702FA, 0xFB0C05F9, 0x09FAFC12,
+0x08F20E06, 0xFEE80BF5, 0x0AEA10EC, 0x08FAF1F8, 0x0A1012F8, 0x0306F6FD, 0xFB050811, 0xFFF80E05,
+0xF6F51212, 0x0705000B, 0x07F809F7, 0x07091503, 0x080B04F7, 0xF20DFDEF, 0x0809EEF2, 0x0F0D0C05,
+0x02FFF90E, 0x050A0EF4, 0xF4EEFF00, 0x08F5EDF5, 0xF1FFF500, 0x0DF4F80D, 0x03F614F6, 0x17F6FC12,
+0x08050A04, 0xF5E5F210, 0x0B0004FA, 0xFCEF101E, 0x0BFFFB05, 0xFEF202FD, 0x0A05F703, 0x090DF8FD,
+0xFF0904FE, 0xF90816F8, 0x0315FE06, 0x02F9E0F5, 0x1A07001D, 0x120EFE0A, 0x0F0D1305, 0x13FEFA14,
+0xF2EE0D03, 0x070D0202, 0xEFFA10ED, 0xF1040B11, 0x04FDF103, 0x01F2FAF2, 0x010CF60D, 0xF6E9EF04,
+0x050C10F8, 0x09F6F600, 0xEFF5F909, 0x05F40D0E, 0x08FA0A1B, 0xF9F40803, 0xF7F9040B, 0xFB10FBF9,
+0xF60810F5, 0xF0060BEE, 0xE60FEEFE, 0x07140DFA, 0x070F0D11, 0x020402F5, 0xEDF905F4, 0xF6F0F9EA,
+0xFC1404FF, 0xF10B13F9, 0xFF0FF80D, 0xF403EE0C, 0x0C0E0706, 0x05170E07, 0xF1F7F40F, 0xEFED0EF8,
+0xF8EF0D12, 0x0CFFF6F8, 0x0E090906, 0xF4F40612, 0x090C0301, 0xEF0A12F6, 0x0AF506F9, 0x0D0BFB11,
+0x0A0EF50C, 0x140BF6F9, 0x0DECFEE8, 0xF6F50004, 0x0C00080C, 0xF5EC11F2, 0x03F9EC0E, 0x0411FA09,
+0x11F70B03, 0xFDEA0301, 0x0BF805F6, 0x05EF090A, 0x11FC04FD, 0xF4F3FD09, 0x0AF50614, 0x0CF40B07,
+0x0D010BF5, 0x14071602, 0x070AF80A, 0x11F3F113, 0x0CFA0B0E, 0x0DF8EDEF, 0xEEF9F308, 0x10F6F1F7,
+0xF5F7F6F5, 0x10050304, 0x07F50AF4, 0xF4F9FEF6, 0x0B02FD0B, 0xF210FCED, 0x04ED0BE9, 0x18FAFA0E,
+0xF5F308F2, 0xE90808F9, 0xFA0CEAFF, 0x06F103FC, 0x0CF705F2, 0x08130D0F, 0x060A08F7, 0xF5FFEEF3,
+0x080C0FF6, 0x0CF6EE06, 0x0F1E06EB, 0x080D0CFA, 0x16F7F5F5, 0x100AF0EE, 0xF4EF020B, 0x04F1F313,
+0xFD07FDF5, 0x110FFBF9, 0x0C081A0C, 0xF7FAF4F8, 0x01F6EB07, 0x100BF7F8, 0xF302F50F, 0x0809EBF9,
+0xF0FDF708, 0x00090DF7, 0xF30100EF, 0xF8F7FDF5, 0xEE000AFB, 0x1C0BF8FA, 0x1004F409, 0xF3ECEF0E,
+0xF51209F1, 0xEAFEF402, 0x0EFC1310, 0x01F8F7FB, 0x0B06F314, 0x0710F90B, 0x03F1F9ED, 0xFA13F2F1,
+0x0907FA02, 0x02FA0601, 0xFD13F708, 0x06FDFA0F, 0x0F04060C, 0xFC03EBF7, 0xEB051312, 0x03FAFFFB,
+0x0BF70708, 0x0312F60C, 0xEC0203EF, 0x0B0AE308, 0xF9FAEEEF, 0xECF30901, 0x050F060B, 0x0003F102,
+0x10FE0AF2, 0x0205F6F5, 0x0112F609, 0xFA03E90B, 0x0B11FF01, 0x0213F107, 0x01070809, 0xEFED0209,
+0xFCEEF50D, 0xF2EDF3FF, 0x070F180D, 0x0E0A14F9, 0xFBF3F3FA, 0xF603F20A, 0xFEF2040A, 0xF7F50D08,
+0xECFE06F1, 0xF100FA0F, 0x0B02FCEB, 0xFF0A0DFC, 0xED00FAF2, 0x0AF307EF, 0x10F0F9F7, 0x060F0DEF,
+0xF4090C10, 0xF10A0A05, 0xF1FBF2F9, 0x0EF9F70A, 0xF502130C, 0x0CF20F0B, 0xFF0F0FFA, 0xFFFFEE0F,
+0x08F5090B, 0x0C090E07, 0x00FBF602, 0xF6F7F404, 0x0DF005F1, 0xF9F7F50C, 0x03F6F5F9, 0x0A1202F8,
+0x0AECEF05, 0x00F5F708, 0x0D0704F6, 0xF4041510, 0xFC050F05, 0xFFEB0BF1, 0xFD0CEDFD, 0xFB05070D,
+0xFD08EDF7, 0xECFCF505, 0xF9F7F8F3, 0x0DFE17F7, 0xF1040310, 0xF403FAFD, 0xF110F6FB, 0x12EF090B,
+0xFDEFF610, 0x0AE7F7F5, 0xF7FBF1FD, 0xFFF5F0F8, 0x06F1F0F0, 0xF8F7010C, 0x0B101AF7, 0x14F60109,
+0xFFFB0FEB, 0x09FE020C, 0xF70BEA10, 0xFFFB0DF4, 0x000608F5, 0xFFF70FFD, 0x040FFA01, 0xF1FA0DFE,
+0x09F3040C, 0x05EEEDF7, 0x0BFAF8F0, 0xEF070A14, 0xFE07F1F4, 0xF5060B15, 0x0EF8070D, 0xEB06F811,
+0xF9F2F60C, 0xEAEEFD0A, 0xF4F1F0E8, 0xF4F01009, 0x1306120C, 0xF9F3F8FD, 0xF9030C0C, 0x1514130C,
+0xF80D06F6, 0xF304F1F9, 0xF7F5F4F7, 0x0006F10B, 0x11F204F7, 0xFC0D0A0C, 0xFE02F6F7, 0x0B06F30F,
+0x13F6FCF5, 0x0C0BFC06, 0xF61011F4, 0x040EF005, 0x1609FC13, 0xF60E060F, 0xF50DED17, 0x12F11106,
+0x0D0C01F6, 0x01FC00F4, 0xF8FCFEE8, 0x03EF03FC, 0x08000C11, 0xFDF3F407, 0xF6091406, 0x0CFC0B09,
+0x040DFD0B, 0xF90FF10B, 0xFBE4FAF9, 0xF7FC0802, 0xF2080D06, 0x06060DF0, 0xF803F20B, 0xF5EEF3FA,
+0xF4FA0EF3, 0xEF04F1EC, 0xF6ED0DF1, 0xF6FB14F6, 0xF50FFAFF, 0x0AE6F409, 0x0DF8FBF7, 0xE7F2F210,
+0xF1F80B0F, 0x0204FD09, 0x0FF707F2, 0xF4F00AF7, 0x0B07F7FC, 0x01F7F9F1, 0x0F0207F5, 0xF80A0E04,
+0x1106010F, 0xF71304F9, 0xF20EF006, 0x0FFE0915, 0x0F02F607, 0x0608FA02, 0xFF0DF2F5, 0x0AEC050E,
+0x06FA1118, 0xFCEFF8F7, 0xF8080D14, 0x010FEF0A, 0xF9FAF6EE, 0x0BF1FE12, 0xF0F30206, 0xFEF40FF1,
+0x0D1105EE, 0x04F6F0FC, 0x0D161006, 0xFC0C12F2, 0xF610FC03, 0xEAFE110D, 0xEBF6FC13, 0x08F3F00C,
+0x0DF501F9, 0xEAF80808, 0x1605F60F, 0xF5F90AFF, 0xF2F4F709, 0xF104EDFA, 0xF5F2F80A, 0x0CF806FB,
+0xF8F2FAF8, 0xF8F3F70E, 0xFE04FB02, 0xF80DF70D, 0xEF0EF4EC, 0xF6F1EEF4, 0x04EBF2EC, 0xF6F50FEF,
+0xEFFA03FB, 0xFFFEF50B, 0x0B0FFCFA, 0x12F715FA, 0xF312ED09, 0xFA04EDF8, 0x0D0DF510, 0x080E07EE,
+0xF90BEE03, 0x0916E91A, 0xFDFC0800, 0x05F70F0F, 0xFE1108FA, 0xFDF6FAF0, 0xF10FF20B, 0x171017E9,
+0xFEEFEEFE, 0x070AFCF8, 0xEAF4FCF3, 0x060A08EB, 0xEEF2FF04, 0x09F6FBF6, 0x07020207, 0x15F5F20B,
+0x18EB010B, 0xFB11F9FD, 0xFF030B08, 0xF3F80C0D, 0xF5F4F7FC, 0xFAE3F604, 0x0AEB1312, 0xEEF70C0A,
+0xF5EE06F1, 0xF614F500, 0x160EF6F2, 0x1A03F010, 0xF4FF0FEB, 0xF0110A17, 0x12FCED08, 0xEC03F5FA,
+0xF8F8020E, 0x0D0DF9F9, 0xF0F503FD, 0x05FCF8F0, 0xF20200FC, 0xF20017EF, 0xFA051100, 0x0D00F8FC,
+0xEF060A12, 0xF0FCF6F6, 0xFC0EFAEF, 0x03090F05, 0xF5040DF4, 0xF608F4F3, 0xF309EF03, 0xF1F2FBFE,
+0x0501050C, 0xF909040C, 0x0EFFFA06, 0xFA04F7F4, 0xF4F9FCED, 0xE9F7EFF8, 0xF8F1F6FC, 0xFE04010A,
+0xF4100BF4, 0xF11005FB, 0xF1FA00F4, 0x05F3F9EF, 0xF6ECFC0C, 0xF90B100A, 0x01FAEBF8, 0xEA0C0D0C,
+0x010E0D13, 0xF3F7F70F, 0x000F0AFC, 0xF9FB0DF5, 0xF1ED08F8, 0x10F902F4, 0x07F8F80B, 0xE9EE10F4,
+0x0F06F2F2, 0x07F50B10, 0x0DFD13F1, 0xF002F508, 0xF818F505, 0x0C0608F7, 0xF0E609F3, 0xEF0CFEF6,
+0x00010CFF, 0x0CF40E01, 0x0EEBF2EC, 0x02FDEDFB, 0x09F3F9FB, 0x13080005, 0x070FF509, 0xF9EC05F3,
+0x020AF0EB, 0xF1FAF3F9, 0xFDF80FF2, 0xF80BEF02, 0x13F003F7, 0x050418F4, 0x020F0BF5, 0x10F41309
+
+harq_input0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF41A1B0E, 0x16F213D5, 0x0A1AF508, 0xEB14E7EB,
+0x18E0F2EA, 0x13E6EFE4, 0x15E9E719, 0xEA12E9E7, 0x1527F215, 0x150C1EEB, 0xFFDDE61B, 0x1D212005,
+0xEDEE23EB, 0x1FDC0513, 0xE4FBE1F6, 0xFBFA03EB, 0xEC24181A, 0xDF1F16DC, 0xE2ED11F1, 0xF1F023E2,
+0x2416E00A, 0x15ECDF18, 0xEA0C21EF, 0xF0E4DCE8, 0xEB0E1701, 0x11EA0F1E, 0xE21808E4, 0x10EAF417,
+0xF71C1B10, 0x0DF8E1E5, 0x15120FF3, 0xE91CE6EC, 0xE3EAF610, 0x0D12FFF8, 0x0A081CE6, 0x0FE6E5F9,
+0xEBE5E3EB, 0xE1F41406, 0xF50BEBEA, 0xE41A0B14, 0xDCF40AE3, 0x0F1213DD, 0x0B1F2414, 0x1E1DF60C,
+0xDE0FEF06, 0x1D00E80E, 0x07020CEE, 0xF72C191C, 0x151FE815, 0xEEEE18E3, 0x1DEA1816, 0x19160E1C,
+0x12E8EC13, 0x23F9061B, 0xE7000DEA, 0x0C19F3EC, 0xE2EEEC22, 0x14F1EEE3, 0x00EA1BDE, 0x15EADE1E,
+0xDEF9ED20, 0x0FE90A20, 0xEFECFADB, 0x0AECF70C, 0xE4DD160D, 0x0921E31C, 0x1409E20B, 0xF211E414,
+0xE1F11A1B, 0x0ADA1716, 0x100CE6EF, 0x161513FE, 0xEEE416E7, 0x1D0724EE, 0xF12E13F6, 0x1117DF12,
+0x06E9E3F5, 0x141BE504, 0x0B12DEEA, 0xF2E0EEDF, 0x0DE9F7E5, 0xE1F0EC05, 0xF4F0091E, 0x1D1E26EA,
+0xF30CEC16, 0xED21F423, 0x170D04E5, 0x10ED140E, 0xFAEBECE3, 0x1414F729, 0xFCD6E8FD, 0xEF141A19,
+0x16EF0E0B, 0xF414EB14, 0xF3111711, 0x1AEDF125, 0xE9252B18, 0x150306F7, 0x101814F5, 0x12ED1509,
+0xE80CE6FB, 0x0B0F1210, 0x20F0ECF0, 0xEDF207F0, 0x160AE1F0, 0xDF1E04F6, 0xE9E5F4F1, 0x110717F7,
+0xF2F0EEE3, 0x16081818, 0x080E22EF, 0x0CF7F2E2, 0xE81BE6F2, 0xF1F31C1D, 0xF1F2E4E8, 0xF6F5131B,
+0xE8E9DDD5, 0xEEE20EF6, 0xEDE2F20B, 0xDF1613F8, 0xEB23FA00, 0x19E5F2E5, 0xFAF017ED, 0x1311EA1A,
+0xE9FCEA0E, 0x15E61F0D, 0x14EC1813, 0x0F14F718, 0xEEECF3F6, 0xF1F8071B, 0x10ED041A, 0xE01122EB,
+0xDE17ED0E, 0x17F6FEE3, 0x220F17F9, 0x0CE920EB, 0x0A1AE5EF, 0xED1C02EA, 0xEEF0EAE8, 0x0B1C1F18,
+0xEA190BFD, 0x1AE3E418, 0x09F6EFDC, 0xEA100821, 0xF5DFEAEA, 0x0CF6F30C, 0xF616E424, 0xF9EE160F,
+0x17DEE7E7, 0x16F513ED, 0x0BFAE0EE, 0xE8111010, 0x1C1AF2DA, 0xDD1418ED, 0xE11CF6E8, 0xEB090D0E,
+0x15FEEBEE, 0x1AEF20E7, 0xEC1FEA15, 0xF3F511EB, 0xF700F3FE, 0xECF828E5, 0xF319EDE0, 0x22181A1B,
+0xEC17FC0F, 0x15181A10, 0xEC19EBEE, 0xF1EEECFD, 0x17F3FA0F, 0x1416170E, 0x06E7180B, 0xE3E6DC1A,
+0x06FF1A07, 0xEFEAE80C, 0x0FF60BFA, 0xE6E2E815, 0x1DE91EF2, 0x0AF0F00A, 0xE3F4040E, 0xE4FC14FD,
+0xEE0D22E8, 0xE20A2416, 0xE3E1EBE3, 0x1A16F713, 0xF2F2E411, 0x13E5EFF1, 0xDB0A15EE, 0xE328F10A,
+0x1FF00414, 0x0EE813F9, 0xE5F4E3EE, 0xF4ED1314, 0xF12DEC1F, 0xFBEE0FEA, 0x0CEE1AEB, 0xEE1912DE,
+0xF1E709F2, 0xF414150D, 0xFB18E8EC, 0x19EE0EF0, 0x0DEB130F, 0x25130DE3, 0x11FA1817, 0xEBF119E6,
+0xF4F2E2ED, 0x21D9FF12, 0xEAE1FE12, 0xEEF7ED17, 0xD6091CFD, 0x081EE524, 0x19F2F10A, 0xE210FC20,
+0xDB18E817, 0xDFED0CFA, 0xE414E913, 0x111AE709, 0xE1171AF5, 0xE518F90D, 0xFC10F0EF, 0xED15F0E3,
+0x0EEFEF0A, 0xE00A19F3, 0xF3EFE610, 0xEA1B1017, 0xEEEDE517, 0xE0ECF5E0, 0x072619EB, 0xF2F8E5E6,
+0xF011F6F6, 0xEAFC1914, 0xEDFB1413, 0x16EAE602, 0x0D062012, 0xE0EE11E6, 0x0DF71809, 0xF81515E9,
+0xEF1720F4, 0xEA08E1F7, 0x1A0DEF1A, 0x0B0607E3, 0xE90E15FE, 0xE62A09F4, 0xDF180CF6, 0xF61E12F9,
+0xE314190F, 0x14071AE3, 0xE71AFB12, 0x1BDB150D, 0x131EE5FB, 0x0F15F2E5, 0x120D19EB, 0x0C1CE816,
+0xF5EBF2F3, 0x07EDF3F4, 0xF51B280B, 0x0CE6DDEA, 0xDFEEE716, 0xF4E5EAEF, 0xFAF30CF3, 0xE1DB10F5,
+0x00E113EF, 0x1CF3F820, 0x1719E910, 0x090C1DE7, 0x0F11ECF6, 0xEFF6F117, 0x20DD1B11, 0x1A20D9F2,
+0xFB1B14F0, 0xEFD9040B, 0xE1F514E6, 0x201B1315, 0x1817FB17, 0x190103EB, 0x0C0E14DA, 0x0E2029EE,
+0xE7F2EF13, 0xEF0D1901, 0x12E31C13, 0xE3EBEC11, 0xEB10DFF0, 0x1A0B22F3, 0xF4F2D90E, 0xDF18121E,
+0xE7EAE806, 0x1419E8E3, 0x1416EC2D, 0xE6E01FF2, 0xEB1FE415, 0xE710E119, 0xEA0714E4, 0xEA07DA17,
+0x1CF3E9E8, 0xEAF4F7F0, 0x150C16EE, 0x1CE71210, 0xE11421DF, 0x18FBEBF0, 0xFBF6E70B, 0xEAEFE416,
+0xF519DC1B, 0xE3E7F3E5, 0xF00AE9E4, 0xF0160827, 0x1ADF1A14, 0x210DEBE4, 0x1FF3F417, 0xE7F0E718,
+0x0C05F2E4, 0x14EB1DEB, 0x1212F70A, 0xE0F7F1DC, 0xD41CF119, 0xF8FFF5E1, 0x16DF1A1B, 0xF71D18F0,
+0xED1A1EE3, 0x04D625E3, 0xDCE51CED, 0xE713F6E9, 0xF6111603, 0xE31912EE, 0xEF0E1DF1, 0xF51F01E2,
+0xE4131AE5, 0x080EEC18, 0xF8E2E6EE, 0x0CF31C1A, 0x14F31A1B, 0x13E9F7EA, 0xE0F11AF4, 0x10DFEF0A,
+0x0C0C1CEB, 0x171DCD18, 0x0C1AF2F2, 0xDA111109, 0xECFF0717, 0xE5EAF80C, 0x02F312EE, 0x16F41CEC,
+0x1600F30D, 0x24110E09, 0x1118211F, 0xF1ECF613, 0xEB071C1B, 0x0A0C2317, 0xF10EEEEE, 0x2321F0F8,
+0xDFE4EBE5, 0x20F61CF7, 0xDA01EADE, 0xE3E401F9, 0xF1191608, 0x10EBEF19, 0xE8E7F0ED, 0xF21815F1,
+0xE0ECEA15, 0xF2EFE8E7, 0x10EB13EC, 0xEE140917, 0x1814E415, 0x1B18EFF3, 0x1BDC12E4, 0x15F816E7,
+0x13DD0C10, 0xE6EFEBF4, 0xF11CFDF4, 0xF929E7E8, 0xD8211707, 0xE126FEF6, 0xE7F80118, 0x22EF0C05,
+0x17F121EB, 0xECED1411, 0x1D141128, 0xEC201718, 0x170CE309, 0x1E15FBE3, 0xE2E80512, 0xD50D1E0E,
+0xEFF918FA, 0xE51AE50C, 0xE61AEC1B, 0x1DF1F31C, 0x0AE40BEB, 0x17F51FF8, 0x0EE9181E, 0xE1E5ECE3,
+0x18E91904, 0xFD171D1B, 0x140A1617, 0xEBE5EF19, 0xF0E9E31D, 0xF91F0E1A, 0x17F21611, 0x0A1EF6E4,
+0x12F00F19, 0xEE11ECDE, 0xE8DFF114, 0x0E19EC1A, 0xDDF8F209, 0xDF13F0F5, 0xEB11F4F2, 0xE319E51D,
+0x131015ED, 0xF5141810, 0xF7EFEF1B, 0xEFE8EC11, 0x0A0BE5E5, 0xF1E5F2EF, 0x15F1150E, 0xF621DBDF,
+0x08F9F3F2, 0xF1FC0CFF, 0x130FF7F2, 0xFFF30AF7, 0xF6060CF6, 0x0DFA1EEB, 0x0AEEF7F5, 0xF113EF0B,
+0x0FF907F5, 0xFAF8080C, 0x0BF8F607, 0x09F9020F, 0x09F7FD08, 0xF7F501EF, 0x0BFA00FB, 0xEC0E0409,
+0xFE0212F1, 0xF8FBFC10, 0x100B0614, 0x13F1F1ED, 0xFA010702, 0xFD0F1308, 0x03F7040C, 0xFAFB0512,
+0x120CF708, 0x0A0802EF, 0xF301FAEF, 0x03020F0B, 0x05F5FEF2, 0x030B1209, 0x13071101, 0xED090709,
+0xEDFFEE0D, 0x0AF90F0D, 0x030AF3FA, 0xF508F20A, 0x000FFEF1, 0x0AFC02EB, 0xF3EF00F2, 0x0FEFF0F7,
+0x0A050910, 0xF90AFBF9, 0xF20B020C, 0xFF0F0FFA, 0x0907F50B, 0xF704FB02, 0xF70CF0F1, 0x12F8F6F9,
+0xF508EC05, 0x041007F6, 0xEBF10505, 0x050D0CFD, 0xFC0508F7, 0xFEF7F7F3, 0x03FD0410, 0xEF0B10FB,
+0xE7F5EF10, 0xF5F8FBFD, 0xF70CF1F0, 0xF60910F7, 0xFE0CFBEB, 0xFBF40B10, 0xF7FD06F5, 0xFAFE0F01,
+0xEEF7F30C, 0x0714FAF0, 0x061507F4, 0x0611F80D, 0xEE0AF20C, 0xF009F1E8, 0xF3FD060C, 0x140C030C,
+0x04F90DF6, 0x060BF5F7, 0x0D0CF2F7, 0x060F02F7, 0x0B06F6F5, 0x0E0510F4, 0x0E0F0913, 0xF1060D17,
+0xFCF40CF6, 0xEFFCFCE8, 0xF3070011, 0xFC090906, 0x0F0B0D0B, 0xFC02E4F9, 0x06F00806, 0xEEFA030B,
+0x04ECFAF3, 0xFBF6EDF1, 0xE6090FFF, 0xF210F8F7, 0x0409F80F, 0xF0F7F7F2, 0xF7F107FC, 0x0A0402F5,
+0x13F9060F, 0xFE150E06, 0x08020207, 0xEC0E0DF5, 0xEFF7FA18, 0x0F0A0814, 0xF112FAEE, 0xF4F1F306,
+0xF6FC11EE, 0x0CF21606, 0xFE0D1003, 0xF30CF613, 0xF808F5F9, 0xF9FF050F, 0x04FAF409, 0xF8FBF20A,
+0xF30EF2F8, 0x0D0D0402, 0xF1F40EEC, 0xF5EFEBEC, 0xFE0BFAFB, 0xF7FA0FFA, 0x04F81209, 0x0EEE0D10,
+0x161A0B03, 0xF70FFC00, 0xF6F011FA, 0x10E90F0B, 0x0AF8EFFE, 0x0AEBF4F3, 0xF6F6F204, 0xF50B0207,
+0x11FDEB0B, 0xF80D0308, 0xE304F4FC, 0xF70AEB12, 0x1400EEF1, 0x03100EF2, 0x1117FFEB, 0x03FAFC08,
+0x0DF9F80E, 0xFCF0F5FD, 0x00EF02FC, 0x00FC0500, 0xFCF60612, 0x09050EEF, 0x08F304F4, 0xF2FE0903,
+0x090C010C, 0x04F4FF06, 0xF7F8F9ED, 0x040AF1FC, 0x10FB10F4, 0xF3EFFAF4, 0x0B0AEC0C, 0x0C0CFAF8,
+0xF70F0E13, 0xFBF50FFC, 0xF9F4EDF8, 0xEEF4F80B, 0xF51006F2, 0x0208FDF1, 0x06F71805, 0x0CF6E6F3,
+0xF40101FF, 0xFDFBEBEC, 0x0805F3FB, 0xECF30F09, 0xFAF90AEB, 0x0B02F8F2, 0x04F4F0F7, 0xF4090FF5,
+0x09FA0710, 0xFC06FBF9, 0x04F70BFC, 0x10070C0F, 0x0F12FE0E, 0x0BF0F306, 0xF4150005, 0xF714F7F5,
+0xF60D050C, 0xEFF2F9F8, 0x06F5F8F8, 0x06F3FDF3, 0x0D0303EE, 0xFD020114, 0x0A09F10A, 0x0D0415FA,
+0x0CFEED0F, 0x14F010F1, 0x0B04EEF2, 0x0F1406F5, 0x0805000D, 0xF409050E, 0x0DFBE901, 0x03110710,
+0x0604EFFD, 0x0B060BF9, 0xECF00D09, 0xFBF5FF0A, 0x07060DF2, 0x0EEF06F9, 0x0CF407F1, 0xFD0B100C,
+0x080617F8, 0xFAF5090A, 0x0A1204F9, 0xF2071212, 0xFD0FFD02, 0xE9F0EE0D, 0xF90FFCF1, 0xEE14E90B,
+0xFB0C02F5, 0x0C13F1F4, 0xF607EFFD, 0x0BF410FA, 0x00F204FB, 0xFA0DEFF7, 0x0AEDF4EC, 0xF1090208,
+0x13F6F000, 0xF8F2F0FF, 0xFB0E0B04, 0xF5FA120B, 0x1305F4FA, 0x07E70B0B, 0xEFEAF4FD, 0xF90807F3,
+0x05100D0A, 0x040E0608, 0x02F9090A, 0xFFF5F7FD, 0x0113F10A, 0xF10B07ED, 0xF7FB010B, 0x05EF06FA,
+0xF5FB11EE, 0xF2FCF306, 0xF70C0F00, 0x0E0704EE, 0xF60CFE0A, 0xF7E8F50D, 0xEEF6F5FD, 0x09E802EE,
+0xEF09F7FC, 0xF00CF0F1, 0xF808FCF4, 0xFBECEEFA, 0xFCF20211, 0xF9F10603, 0xF7F0F409, 0xEE140C01,
+0x0A0AF5EF, 0xF108F505, 0xE902FDEC, 0xF3080AF6, 0xF90410F2, 0x0D0609F3, 0xF7FBF608, 0xF408F005,
+0xFAFDF6F1, 0x030C0A0A, 0xFF0C11F8, 0x05FDF70C, 0x0C14F502, 0x12FDFD08, 0xF90BF3FF, 0xF5F20E11,
+0xF2FE0D06, 0xFE07F9F5, 0xFC080DF9, 0xF2F10BF5, 0x0B061DFA, 0xFB000211, 0x0D0E02F4, 0x06EA1101,
+0x0A0AF40D, 0x06F7070D, 0xF40CFD06, 0xF3FA08F5, 0xFEEB16EF, 0xF7EF0D09, 0x1512F0F0, 0x1801F3EC,
+0x0507FBF1, 0xF3F2FC08, 0x00ED110E, 0x10FD0DF8, 0x0B08F90A, 0x100DF905, 0xF0ED1414, 0x0A0E0DF8,
+0x08160C02, 0x10FDFAFF, 0xF022F7E0, 0xEF0A170A, 0x19180E02, 0x1CEAECDF, 0x18161818, 0xED0A17EA,
+0xEA13170F, 0xDEF01618, 0x1417E3EE, 0xEFEAF1E8, 0x16F512F6, 0xF3F5F9FD, 0x25121FEE, 0xEEDF29E8,
+0x15F7041E, 0xF9E8231A, 0x1EF112F3, 0xE1ECE9DE, 0x0C16E50A, 0xF51C1D11, 0xF9E60AE5, 0x0A150420,
+0xEE09F2E2, 0x09E9060F, 0xF1F2F01D, 0x0BEB20FC, 0xE21107DF, 0xFEE3EEE6, 0x001AF102, 0xE4E0DDDF,
+0xEC07121A, 0x1121E917, 0x10E1F1EE, 0xE4E7F11F, 0xEEE81611, 0xEB1AF71C, 0x0500E3F0, 0xE1FBE6E5,
+0xFEEBF50C, 0x09E9E617, 0xE219111D, 0xE6E8EC0C, 0x09082226, 0x1C0DE109, 0x0F101F0E, 0x02EF190E,
+0x11DD0A1B, 0xE5241B07, 0x06FDF3E5, 0x1113E914, 0xF30D171A, 0x1CE70F17, 0xE70A1017, 0x01E70714,
+0x18ED1911, 0x0AE9F4F7, 0x25E4E4FB, 0x192119E6, 0x05F1F60D, 0xF3E4F71D, 0x052811EF, 0x1AF4F710,
+0x20FAF613, 0xE926F607, 0xE3130E13, 0x15FAECF1, 0xF313DC11, 0x101411E6, 0xD918F724, 0x1A0FDF10,
+0x14D903F8, 0xF2EFE61E, 0x10171316, 0xEEDAF519, 0xF1221713, 0xE3000705, 0xDA15E322, 0xEBE8E711,
+0xD9F20FE7, 0x130A1DE1, 0xFFE8FD12, 0xE4E50CE4, 0x12F4E118, 0xE4E622E1, 0xF4001215, 0x14F018F8,
+0x0A18FC0B, 0x0EF1E5E8, 0xEDFAF614, 0x1A1928F5, 0x180D1306, 0xE91FED17, 0xE4EDE309, 0xFC20EAF3,
+0x21F7E81E, 0x18E31AF4, 0x1EEBFA12, 0x1C18141B, 0xE8151015, 0xEA280BE1, 0xE20EE9E0, 0xEBE61A13,
+0xECEA1119, 0x11F8E50B, 0xE7040AEA, 0xDD16D017, 0xDF14F5F9, 0x11E70820, 0xE218EF01, 0xE2E3F7EB,
+0xE3072414, 0xE120F90D, 0xED12E80C, 0xFA16E619, 0xF11DECE6, 0xE5E3EEF7, 0x1516E2E1, 0x19E8E6FA,
+0xEC0E19DA, 0xEDF21D1D, 0xEE011D22, 0xF1EE0AF3, 0xF0F1E419, 0xE72020DC, 0x1502E811, 0xF313F3EA,
+0x1814EDE1, 0xE0EE1C10, 0xF10EE7F2, 0x2428E81D, 0x19EA1EF5, 0xE7F41919, 0xE81312E1, 0x1DE8F102,
+0x25ED11E9, 0x16141E2A, 0xED11E7DF, 0xEF1FF62A, 0x1514EEE7, 0xE7F61316, 0x1B0CEFE9, 0xEFF219F0,
+0x072B20DB, 0x11E008F9, 0x1D13111B, 0x0B1BF515, 0x17E1EA0E, 0x1AED10E2, 0xFA17EAE9, 0x10ED11F4,
+0x09F2E1E7, 0x1AF0E920, 0xF7F7EDE5, 0xD8D7EBF9, 0x14EFF718, 0xE5E41412, 0xE908EFF3, 0xE9170FE4,
+0xE1EEEC1D, 0x19F3EBE6, 0x1AE3EAFB, 0xF1F8010E, 0x0CF317DD, 0x1FE11619, 0x13E4E6E3, 0xE01321F5,
+0xE921F9F5, 0x19192118, 0x1B14F8E8, 0xFAE8E618, 0xE504130C, 0xDFDAEA15, 0x181DED06, 0x12F316E9,
+0xE416E51D, 0xE5E914F6, 0xE9ED2517, 0x021720E0, 0x12EB110C, 0x0B14231C, 0xF00E1DF0, 0x080928DF,
+0xE1DCEA16, 0xED1BF9D4, 0x1D190CE9, 0x18E41F13, 0xDB12EA03, 0xEDF20BEB, 0x11EEE00F, 0xE3E7DFF8,
+0x1516E4E5, 0x16EAE6E7, 0x11FDE1F6, 0x2AE2ECE8, 0x0B081BF1, 0x1AF311E6, 0x0A1213F2, 0x16F0EDE8,
+0x20E61A0C, 0xE4F1F50A, 0x09F416DA, 0x240005E6, 0xE1F6EDEA, 0xF4F421E2, 0xF5F0E9EF, 0xF1191E0F,
+0xE6E01A23, 0x11F9ECE6, 0xE1E71BF3, 0x0DF8EF00, 0xE81AE614, 0xE71A18F1, 0x04EFE311, 0x0F0BEAFA,
+0xFAF319E7, 0xDFED0E0D, 0x0613F4E8, 0xEB17D9ED, 0x052421EB, 0xF4E7F9E5, 0xEFEFEC1B, 0x0C0B1E0E,
+0xFFEBEB14, 0x17181718, 0x09F7D7EB, 0xDDE017EA, 0xEAEDFBF2, 0xE91A12F0, 0xE3EEF6F0, 0x1AF1F6E8,
+0x17FAE614, 0xEE0D1713, 0x000512E5, 0x0DF5ED0E, 0xEF190F13, 0x1CE7151C, 0x06E31D23, 0xEC11E91B,
+0x00F8ED21, 0x02160C0D, 0xDFF4140C, 0x15240AEC, 0xF21603F2, 0x0EE9EE15, 0x1BF0EDE8, 0x25EC0F22,
+0xE8EB1F17, 0xFA111A09, 0xF11D10FB, 0x10ED15EB, 0xE71F020E, 0xF6E1F7FE, 0x1E02230A, 0x0FF31E15,
+0x1412EF19, 0xE11AD919, 0xF4EF0FE8, 0xF2EBF8E5, 0x0FF10F22, 0x070DDBFA, 0xFB0A1218, 0xEEF7F511,
+0xEC17E819, 0x0213D8DC, 0xFB0D131D, 0xF3F5E111, 0xED19F40F, 0xE3E701EB, 0x111F1518, 0xE718E0E7,
+0x15F6EB19, 0xEC1C1C18, 0xDD1F1C10, 0x18EB0C0F, 0x1EEB13E4, 0xEDF621F8, 0xEA241312, 0x0DDF15E9,
+0xF0081E17, 0x050F0D12, 0xEEEA1802, 0x13092111, 0x26290D0A, 0x13E709F5, 0x17E11405, 0x16EBE5E4,
+0x180AEC10, 0xEFF01315, 0xE5F910F4, 0x1EEE0D1A, 0xDA06E80F, 0x0E08E5E4, 0x101D1312, 0xEBE1181C,
+0x0EDB0E16, 0x15141015, 0x19E625E7, 0x0FEBE60E, 0x2CF7F3F1, 0xE3EF1326, 0x23F1F4E8, 0x00E2EFE9,
+0x0C16E7EB, 0xE8FEDCF9, 0x2DE9E10F, 0xEDDB18EE, 0xE2ECE918, 0xF7EE191D, 0x0EE91DE7, 0xF7E701EC,
+0x0B0D17EB, 0x0FF9F4E0, 0xE6E11B15, 0x0702EC19, 0xF8DD1210, 0x15D9E30F, 0xE61DF7DF, 0xF0D61E09,
+0xF6E51B1B, 0xEAE10DE9, 0x14DE0E06, 0xE203F50D, 0xEBE7EFEA, 0x1922FF21, 0xEDDDF4EB, 0xE818F20A,
+0xECE8DEFC, 0xEB1E1CEE, 0x111DDBF0, 0x0E1620E9, 0xDF17F41C, 0x15E3E8E2, 0x1515F518, 0x0CE3EA1A,
+0x0E201915, 0xE9EB04F0, 0xE3F70F11, 0x0F0A14E6, 0x01F111E6, 0xEA231A11, 0xF61CF21B, 0xFC0FF1DE,
+0xE3EBFBEE, 0x1C26F0F1, 0xE3E1F20D, 0x1B12F3EC, 0x19DF06EE, 0xFCEEF7E7, 0xE7090CE5, 0x24F91A29,
+0x0D1BF31A, 0xEE15E5E7, 0x0620F50F, 0xE31605F5, 0x10E71C0E, 0xE91C17F1, 0xDD14F0E3, 0xE5F00C07,
+0xDCFAF5EE, 0xEC15E5ED, 0xEAEF1C24, 0x1E16F117, 0xECE0EF11, 0x0DF6ECE6, 0x06121012, 0x14E8ECF6,
+0x14F52610, 0x0EEEEC1B, 0xDB161BEC, 0x162FE1E7, 0x07FD0C06, 0x1014E9ED, 0xF1EC111E, 0x1914F71A,
+0xF3E7F705, 0xF51CF3EB, 0x130FE010, 0xE5F0F2DF, 0xE1E3DD11, 0xDF18021A, 0x14F4EDF2, 0xDBEC1604,
+0xF6ECEB26, 0xF0171C12, 0xF3E713EC, 0xF81C1E19, 0xE7F92012, 0x1307EBE4, 0x11F323E1, 0x2111FAEB,
+0xFFEB1417, 0x02E7EF1C, 0x1FF6E8F3, 0xF221E5F4, 0x0EE61906, 0xF323161D, 0xE01EEF08, 0x11E0D7E4,
+0xD60E210D, 0xF21323F0, 0xDBEEE9E6, 0x0F10EDEE, 0xEBECF4F7, 0xECEAF3FB, 0xE9DBDBE9, 0xE9220EE8,
+0xF7E4E911, 0x1C2018F0, 0xEBDDEAE2, 0x151116E9, 0x19D6E7E5, 0x131DEA06, 0xF1F3F10E, 0x1C13E9F1,
+0x1AF7F5E0, 0x050FE0F3, 0x13EDE6F5, 0x22EC2501, 0xF1E7230A, 0xE41F0216, 0xF4EFE8EC, 0xE818121F,
+0x01EDEB0D, 0x23E918F1, 0xE515F117, 0xE3EA27DC, 0x18F3F8FD, 0x06F2E00C, 0xDC19F005, 0x19F3F621,
+0xEBEDE11E, 0x1614EDE7, 0xF0F5E723, 0xEEF6F2E3, 0xE70F0911, 0xF4F213F7, 0xE7E7EBF0, 0xF409FAE5,
+0xE406DA0E, 0x08E7EBF7, 0xEA19E0EE, 0xD918FFE0, 0xF2EA1222, 0xE616F313, 0x1201DF15, 0xDF1D16F1,
+0x0A1516EC, 0xE5E9131D, 0x2017F6E6, 0xE5FADE08, 0x13110012, 0xFDDC12E9, 0x1DF012F5, 0xF20F16EE,
+0xE3EA04E8, 0xF7EAF81D, 0x0E1F1C0E, 0x1B2B110D, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+8
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..12c05d0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v14298.data b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
new file mode 100644
index 0000000..30df8e2
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
@@ -0,0 +1,377 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F817F,
+0x81817F81, 0x81817F81, 0x81818181, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F818181, 0x8181817F, 0x81818181, 0x817F817F, 0x817F817F, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181,
+0x7F7F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x81817F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181,
+0x81817F81, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F818181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x7F7F8181,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x8181817F, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81817F7F,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x817F817F, 0x7F818181,
+0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F817F7F, 0x81817F81,
+0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F,
+0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x817F7F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F817F,
+0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81817F7F, 0x817F817F,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x817F817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F81817F,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F81817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F81,
+0x817F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x817F8181, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x81817F81, 0x817F8181,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F818181, 0x81817F81, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x817F8181, 0x81818181, 0x817F8181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x7F817F7F,
+0x817F8181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x7F818181,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F817F,
+0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x81817F7F,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x817F817F,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F8181, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F818181, 0x81817F81,
+0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x8181817F, 0x817F7F7F,
+0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x817F8181, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F81817F,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F817F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x81818181,
+0x81818181, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F,
+0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x81818181, 0x8181817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F81817F, 0x81817F81,
+0x81818181, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x7F7F8181,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181,
+0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81817F81,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x7F7F8181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x81818181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x817F8181, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x81817F7F,
+0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F817F81,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F81,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x81818181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181,
+0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F817F
+
+output0 =
+0x2264202F, 0xEFA4FF42, 0xE9F58B8C, 0x1D39E1D8, 0xC820C061, 0x20DC98A4, 0x8DE60AFC, 0x6C33FA8A,
+0x1C53D6C5, 0x945F773F, 0xDBB04F8A, 0x3A27959E, 0x68BB477D, 0x2162D334, 0x380000DF, 0x69C28486,
+0xBA5358EF, 0xCF3C7E12, 0x498CFB25, 0x2C1D2FD8, 0x3BC26009, 0x3FBCD885, 0x170DB38F, 0xCC6D1865,
+0x5F253C8F, 0x2E763549, 0x5CF7C656, 0x5B035AAC, 0x97EFE2E2, 0x3E09E2D2, 0x616B4622, 0x090DF188,
+0x6D446324, 0x4879AFE5, 0x4170D40D, 0x961951CA, 0x127A6286, 0x97DF4F8E, 0x1E8B9203, 0xAF2CC98E,
+0x92070932, 0x39947F15, 0x1D3C8709, 0x78F28246, 0xBA0CEDEB, 0xD3AAED67, 0x3800BA16, 0x5591D86F,
+0x91406310, 0x25CD67E2, 0x2DD370E6, 0x92EC5FD3, 0x601F6480, 0x85832BF7, 0x21FBC769, 0x47A424D1,
+0x753A3FDC, 0x4406729D, 0xD73AE302, 0x5B0363EB, 0x6695488A, 0x10143CE6, 0x18544FA3, 0xA09CAD85,
+0xCA84C06F, 0x76069E77, 0x249EFC02, 0x0D2EF9A4, 0x306C49E6, 0x8744F821, 0xA3DBD0B3, 0x51C30167,
+0x24BAC604, 0xB7127120, 0xD8293BEA, 0x99D894B1, 0x82DA3AC5, 0x0A3DE8AC, 0x0A2BFF03, 0x8810CF64,
+0xF965FC9F, 0x38D9B780, 0x67A87163, 0x2125F55C, 0x520FD62F, 0x81C21F91, 0x36DBBAE9, 0x9FD06F93,
+0xC496630A, 0x9E68401F, 0xD8960A86, 0x040ED70A, 0x6B685588, 0x89FB354E, 0x6FA818BC, 0xE736533D,
+0x9991716D, 0x7D3E2C82, 0x1D56747A, 0x79ACA946, 0x223D14C6, 0x98D15ED1, 0x8E1DEFED, 0x90E0C34F,
+0x693154A7, 0x9802DE69, 0xE9EDFCE8, 0xA308DBD5, 0xF8D24D94, 0x5F7C1F87, 0xD1CCBAA7, 0x3597525A,
+0xA5A9F065, 0x28C234D5, 0xB3FF9848, 0x012A0B0D, 0x5BB7102F, 0x4CE69A80, 0xFEF92D54, 0x0932125D,
+0x8D58749A, 0x6F00E934, 0x713104DC, 0x74E16375, 0x6805E1C0, 0x8AC5EFB4, 0xFF381CA0, 0x642D3436,
+0xD38472
+
+basegraph=
+1
+
+z_c=
+192
+
+n_cb=
+12672
+
+q_m=
+2
+
+n_filler=
+104
+
+e=
+10048
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..3143fa0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..2ea2b8d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..63bc8da
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..aaa3c98
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..03422fb
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
new file mode 100644
index 0000000..bd7c017
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x20202020, 0x20202020, 0xe0e0e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0,
+0x20e0e0e0, 0xe020e020, 0xe0e0e0e0, 0x20202020, 0x20e0e020, 0x2020e0e0, 0x202020e0, 0xe0e02020,
+0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe020e020, 0xe0e0e020, 0x2020e0e0, 0xe0e0e020, 0xe0202020,
+0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e020, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0xe020e020, 0xe0202020, 0x20e0e0e0, 0x20e0e020, 0x20e02020, 0x20e02020, 0xe0202020,
+0xe0e020e0, 0xe020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x20e02020, 0xe020e020, 0x202020e0,
+0x2020e020, 0xe020e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x20202020, 0x20e0e0e0, 0x2020e0e0,
+0x20e0e0e0, 0x20e0e020, 0x20e0e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20e020e0, 0x20e0e0e0,
+0xe0e020e0, 0x2020e0e0, 0x202020e0, 0x2020e020, 0xe0e0e020, 0xe020e0e0, 0x20e02020, 0x202020e0,
+0x20202020, 0xe0202020, 0x20e020e0, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0,
+0x20e020e0, 0xe0e02020, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20e0e020,
+0xe020e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x2020e020, 0x20e020e0, 0xe0e02020, 0xe020e020,
+0xe0e0e0e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x202020e0, 0xe020e0e0, 0xe020e0e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0x2020e020, 0x20e0e020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e020e0,
+0x20e02020, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20202020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20202020, 0xe0e02020, 0x2020e0e0, 0x20e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe020e0e0, 0x20e02020, 0xe0e02020, 0x2020e0e0, 0xe02020e0, 0x20e020e0,
+0x20e02020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020,
+0xe02020e0, 0x20202020, 0x20e020e0, 0xe0e0e0e0, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0x20e02020,
+0xe020e0e0, 0x202020e0, 0x20e020e0, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20e0e0e0,
+0xe020e020, 0xe0e02020, 0xe0e020e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0x2020e020, 0x2020e020, 0x20202020, 0xe0202020, 0x20e0e020, 0xe02020e0, 0x20e0e0e0,
+0x20e020e0, 0x20e02020, 0xe0e0e0e0, 0x20202020, 0x20202020, 0x20e0e020, 0x2020e020, 0xe020e0e0,
+0xe020e020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0x2020e0e0, 0x20e0e020, 0x20e0e020, 0xe0e020e0,
+0x202020e0, 0xe0e0e020, 0x2020e020, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x202020e0,
+0xe0e0e0e0, 0x2020e0e0, 0xe0202020, 0xe020e0e0, 0x20e0e020, 0x2020e020, 0x20e0e020, 0xe02020e0,
+0x20e020e0, 0x20202020, 0x202020e0, 0xe02020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe0202020, 0x2020e0e0, 0xe0e0e020, 0x2020e020, 0x202020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0,
+0xe020e0e0, 0x20e020e0, 0x202020e0, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0xe0202020, 0x2020e0e0,
+0xe0202020, 0x2020e020, 0x20e0e0e0, 0xe02020e0, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0e0e0e0,
+0xe0e02020, 0x20202020, 0xe0e020e0, 0x20e020e0, 0xe020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0e020e0,
+0x20e0e0e0, 0x20e02020, 0xe0e0e020, 0xe0e0e020, 0x20e0e020, 0xe0e0e020, 0x2020e020, 0xe0e020e0,
+0x2020e020, 0x2020e0e0, 0xe020e0e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0xe0e0e0e0,
+0x20e0e020, 0xe0e0e020, 0xe020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20202020, 0x202020e0, 0xe020e020,
+0x20202020, 0xe0202020, 0xe020e0e0, 0x20e02020, 0xe020e0e0, 0xe0e020e0, 0xe020e020, 0xe020e020,
+0xe0202020, 0x20e020e0, 0x20e020e0, 0x20202020, 0x20e02020, 0xe02020e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0x20e02020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e020,
+0x20e020e0, 0xe0e0e0e0, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e02020, 0xe0202020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe02020e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0xe0202020, 0xe020e020, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e02020, 0x20e0e020, 0xe0e02020, 0x20e02020, 0xe02020e0, 0x2020e0e0,
+0xe0e0e020, 0x20e020e0, 0x20e0e0e0, 0x2020e020, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0, 0x202020e0,
+0x20202020, 0x20e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e0e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e020, 0xe0e020e0, 0xe0e0e020, 0xe0e020e0, 0x20202020, 0x2020e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e020, 0x2020e020, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe02020e0, 0x20e02020, 0xe020e0e0, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0,
+0xe0e0e020, 0xe0e02020, 0xe02020e0, 0xe0e02020, 0xe0202020, 0xe0202020, 0x20202020, 0xe020e0e0,
+0x202020e0, 0x2020e0e0, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0xe0e02020, 0xe02020e0, 0x20e0e020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e02020, 0x20e0e020, 0x202020e0,
+0x202020e0, 0x20e020e0, 0x20e0e0e0, 0xe0202020, 0x2020e020, 0xe0e0e020, 0x20e020e0, 0x20e020e0,
+0x20e020e0, 0xe0e0e0e0, 0xe020e0e0, 0x20e020e0, 0xe02020e0, 0x2020e0e0, 0x2020e020, 0xe0e0e020,
+0xe0e020e0, 0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e0e0, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0x2020e020, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020,
+0xe020e0e0, 0x2020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x202020e0, 0x20e02020, 0x20e0e0e0,
+0x20202020, 0x20e020e0, 0xe02020e0, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x2020e020, 0x2020e0e0,
+0xe0202020, 0xe020e0e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e0e0e0,
+0x20e02020, 0xe0202020, 0x202020e0, 0x20e0e020, 0x20e0e020, 0x20e0e020, 0x20e02020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe0202020, 0xe02020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e0e0, 0x202020e0, 0x20e0e020,
+0x20e0e0e0, 0xe020e020, 0xe0202020, 0x20e02020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0202020,
+0x2020e0e0, 0xe0202020, 0x20e0e0e0, 0x20e02020, 0xe020e020, 0x20e02020, 0xe0e020e0, 0x20e0e020,
+0xe02020e0, 0xe02020e0, 0x2020e0e0, 0xe0202020, 0x20202020, 0x20e020e0, 0x20e02020, 0x20e0e0e0,
+0x2020e0e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20202020, 0xe020e020,
+0xe0202020, 0x20e0e0e0, 0xe0e020e0, 0xe020e020, 0xe0e0e0e0, 0xe02020e0, 0xe0202020, 0x2020e020,
+0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20e020e0, 0xe0e02020, 0xe0e0e020, 0xe020e0e0,
+0xe020e020, 0xe0e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e020, 0x20e0e0e0, 0x20e02020, 0xe0202020,
+0xe020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x20e0e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe02020e0, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0,
+0x20e0e020, 0x20e02020, 0x20e02020, 0xe0e0e0e0, 0xe0e02020, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0x202020e0, 0xe020e020, 0x2020e0e0, 0x20e020e0, 0xe020e020, 0xe020e0e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20e0e0e0, 0x20e020e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0xe02020e0, 0x20202020, 0x2020e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0xe0e020e0, 0xe0e0e020,
+0xe020e0e0, 0x20e02020, 0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x20e0e020, 0x20e0e0e0, 0xe0e020e0,
+0xe0e0e020, 0x202020e0, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20e0e0e0, 0xe020e020, 0x202020e0,
+0x20e0e0e0, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe0e02020,
+0x20e0e0e0, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe020e020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x202020e0, 0x20202020, 0xe0e02020, 0x2020e020, 0xe0e0e020, 0x20e02020, 0x20e02020,
+0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0xe020e0e0, 0x20e0e0e0, 0x20e020e0, 0x20202020,
+0x20e0e0e0, 0x20202020, 0xe0e020e0, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0xe02020e0, 0x2020e0e0,
+0x202020e0, 0xe020e020, 0x20e020e0, 0x20e0e0e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0x20e020e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e020, 0x2020e0e0, 0xe0202020, 0xe0e020e0,
+0x20202020, 0xe02020e0, 0xe020e020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0xe0e0e020, 0x20e020e0, 0x20e0e020, 0x20e02020, 0x20e020e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0x202020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e0e0,
+0x2020e0e0, 0x20202020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe020e0e0, 0xe0e02020,
+0x2020e020, 0xe0e02020, 0x20e0e0e0, 0x20e020e0, 0xe0e02020, 0xe0e020e0, 0xe020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020, 0x2020e020,
+0xe020e0e0, 0xe0e0e020, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0x20e02020, 0xe02020e0, 0xe0e02020,
+0xe0e0e020, 0x20202020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x20202020, 0x2020e020, 0xe02020e0,
+0xe0e0e0e0, 0x2020e0e0, 0x202020e0, 0xe0e02020, 0x20e020e0, 0xe02020e0, 0xe0e020e0, 0xe0e02020,
+0x20e0e020, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0x20e0e020, 0xe020e0e0, 0xe0e0e0e0, 0x20e020e0,
+0xe020e020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x20e0e0e0,
+0x2020e0e0, 0x20e02020, 0xe020e020, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e0e0, 0xe020e0e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0xe020e0e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0xe0e0e020,
+0x20e020e0, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0xe020e020, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0xe0e02020, 0x20e02020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0xe0e02020,
+0xe020e020, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0,
+0xe020e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0xe0e02020, 0x2020e020, 0xe0202020, 0xe0e0e020,
+0x2020e0e0, 0x20202020, 0x2020e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0, 0x20e0e020, 0xe0e020e0,
+0x20e02020, 0xe0e020e0, 0xe0e0e020, 0xe0e0e020, 0xe0e02020, 0xe020e020, 0x20e0e0e0, 0xe0e02020,
+0xe0202020, 0xe0e0e020, 0x20e02020, 0x20e0e020, 0x20e0e020, 0xe0202020, 0xe0e02020, 0x20e02020,
+0x20e0e0e0, 0xe0e020e0, 0x20e0e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0x2020e0e0, 0xe0202020,
+0xe0202020, 0x20e020e0, 0x202020e0, 0xe02020e0, 0x2020e020, 0x20202020, 0x202020e0, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e0e020, 0xe0202020, 0xe020e020, 0x20e0e020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e02020, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0xe0e0e0e0, 0xe020e020,
+0x20202020, 0x20202020, 0xe0e020e0, 0x202020e0, 0xe02020e0, 0x20e020e0, 0x20e020e0, 0xe020e0e0,
+0x2020e020, 0xe0202020, 0x20e02020, 0xe0e020e0, 0xe0e0e0e0, 0xe02020e0, 0x2020e020, 0x2020e0e0,
+0xe0e0e020, 0xe0e02020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e0e020, 0xe02020e0, 0xe0e0e020, 0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20202020,
+0x20202020, 0x20e0e0e0, 0xe0e020e0, 0xe0e020e0, 0xe0e0e0e0, 0x202020e0, 0xe0202020, 0xe02020e0,
+0x202020e0, 0xe0e02020, 0xe0e0e020, 0x2020e020, 0x20e0e020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0x20e02020, 0x20e02020, 0xe0202020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0x202020e0, 0xe02020e0, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0202020, 0xe02020e0, 0x20e02020, 0xe0e0e020, 0xe0e020e0,
+0x20202020, 0xe0202020, 0xe02020e0, 0xe0202020, 0xe02020e0, 0x20202020, 0xe0202020, 0xe0202020,
+0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e020, 0x20e020e0,
+0x20202020, 0xe0e0e020, 0x20e0e0e0, 0x2020e020, 0x20e020e0, 0x20202020, 0x2020e0e0, 0x2020e020,
+0x20e02020, 0x20202020, 0xe0e02020, 0x202020e0, 0x20202020, 0xe0202020, 0xe020e020, 0xe0e020e0,
+0xe0e02020, 0xe0202020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0x20202020, 0xe020e0e0, 0x20e02020,
+0x202020e0, 0x20e020e0, 0xe020e020, 0x2020e020, 0x20e0e020, 0xe0e0e0e0, 0xe020e0e0, 0x2020e0e0,
+0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x2020e020,
+0xe02020e0, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0202020, 0xe0e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0x20e0e0e0, 0x20e02020, 0xe0202020, 0x20e0e020, 0x20e020e0,
+0x20e020e0, 0xe020e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e020, 0x2020e0e0, 0x20e02020, 0x20e0e0e0,
+0x2020e020, 0xe0e020e0, 0xe0e02020, 0x202020e0, 0xe0e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0,
+0x2020e020, 0xe02020e0, 0xe020e020, 0x20e0e020, 0xe020e020, 0xe0e020e0, 0xe0e020e0, 0x20202020,
+0xe0e0e0e0, 0xe0202020, 0x2020e0e0, 0x2020e0e0, 0x20e0e020, 0xe0202020, 0xe0202020, 0xe020e0e0,
+0xe0e0e0e0, 0xe0e02020, 0x20e02020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0xe02020e0, 0xe020e0e0,
+0x202020e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x20202020, 0x20202020,
+0xe0e0e0e0, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0xe0e020e0, 0xe0e0e020,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x20e02020, 0xe020e020, 0x20e02020, 0x20e0e020, 0x20202020,
+0xe02020e0, 0x202020e0, 0xe0e020e0, 0x2020e020, 0x20202020, 0x20202020, 0x20202020, 0xe020e020,
+0xe0202020, 0x202020e0, 0xe0202020, 0x20e0e020, 0x20e020e0, 0x20e020e0, 0x20e0e020, 0xe0202020,
+0x20e0e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e0e020,
+0xe02020e0, 0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020,
+0x2020e020, 0x20e020e0, 0x2020e020, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e02020, 0x20e0e0e0,
+0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e02020, 0x202020e0, 0xe0202020, 0xe0e0e020,
+0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x20e020e0, 0x2020e0e0, 0xe0e020e0, 0xe020e0e0,
+0x20202020, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe020e0e0, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0x2020e0e0, 0x20e02020, 0xe0202020, 0x20e020e0, 0xe0e0e0e0, 0xe020e020, 0x202020e0,
+0xe0e0e0e0, 0x202020e0, 0x20e0e020, 0x2020e020, 0xe0e020e0, 0x20202020, 0x20202020, 0x2020e0e0,
+0xe020e0e0, 0xe0e020e0, 0xe0e02020, 0xe02020e0, 0x20e0e020, 0x20e02020, 0x20e0e020, 0x2020e020,
+0x2020e020, 0xe02020e0, 0xe02020e0, 0xe020e020, 0x2020e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0,
+0xe020e020, 0x20e02020, 0x2020e0e0, 0x20e0e020, 0x2020e0e0, 0xe0e0e020, 0xe020e0e0, 0xe0e02020,
+0xe020e0e0, 0xe0e020e0, 0x20202020, 0xe02020e0, 0x20e02020, 0xe0202020, 0xe0e020e0, 0x202020e0,
+0x2020e020, 0x2020e020, 0xe020e020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020,
+0x202020e0, 0x2020e020, 0x202020e0, 0xe0e02020, 0xe020e020, 0xe0e0e0e0, 0xe0e02020, 0x20202020,
+0xe020e0e0, 0xe020e020, 0x20e0e020, 0x20e0e020, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe0e020e0,
+0x2020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e0e020, 0x20202020,
+0x20e020e0, 0xe020e020, 0x20202020, 0x2020e0e0, 0x20e0e020, 0x20e020e0, 0xe02020e0, 0xe020e020,
+0x20202020, 0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0x202020e0, 0xe02020e0,
+0x20e020e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e020, 0xe020e020, 0x20e0e0e0,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe0202020, 0x2020e020, 0xe0e020e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e020e0, 0x2020e020,
+0xe020e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x202020e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0xe02020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x202020e0,
+0x202020e0, 0x20e0e0e0, 0x20e0e020, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e0e0,
+0x20e020e0, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0x20e0e0e0, 0xe0e02020,
+0x20e0e0e0, 0xe020e020, 0x20202020, 0x20e0e0e0, 0xe0e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0x20202020, 0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0202020, 0xe0e02020,
+0x20e0e0e0, 0x20e020e0, 0x2020e020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020, 0xe0e02020, 0x20202020,
+0x2020e020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0x20202020, 0x202020e0, 0x2020e0e0, 0xe0e0e0e0,
+0x20e02020, 0x202020e0, 0xe0e0e020, 0x20202020, 0x202020e0, 0xe020e020, 0xe0e020e0, 0x20202020,
+0xe020e0e0, 0x202020e0, 0x202020e0, 0x2020e0e0, 0xe0202020, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0x20e02020, 0xe0e02020, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0x2020e020,
+0xe0e0e0e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0, 0x20e020e0, 0xe0e0e0e0,
+0x20e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e02020, 0xe020e0e0, 0xe020e020, 0xe02020e0,
+0x20202020, 0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x2020e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0, 0x20e0e0e0, 0x20e0e0e0, 0xe02020e0,
+0x20e02020, 0x202020e0, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe0e0e020, 0xe0e0e020, 0x2020e020,
+0x2020e020, 0xe0e0e020, 0xe02020e0, 0x20e020e0, 0x20e0e0e0, 0x20e0e0e0, 0x202020e0, 0xe020e020,
+0xe0e0e020, 0xe0202020, 0xe0e0e0e0, 0x20e0e020, 0xe0e020e0, 0x20e0e020, 0xe0e0e0e0, 0xe02020e0,
+0xe0e0e0e0, 0x20202020, 0x20202020, 0xe020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e020,
+0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0202020,
+0xe020e020, 0xe0e0e0e0, 0x20e02020, 0xe020e0e0, 0xe0e0e020, 0xe0e02020, 0xe0e020e0, 0x202020e0,
+0x20e02020, 0x20e0e0e0, 0xe0e0e020, 0x2020e020, 0x20e020e0, 0x2020e0e0, 0x2020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e020, 0xe0e02020, 0x202020e0, 0x20e0e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0,
+0x20e0e020, 0x20e0e020, 0x2020e020, 0x20e0e0e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0e020e0, 0xe0e0e0e0, 0x20e02020, 0xe0202020, 0x202020e0,
+0xe020e020, 0x20202020, 0xe0e02020, 0xe0e02020, 0xe0e0e020, 0x20e0e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe02020e0, 0x2020e0e0, 0xe0e02020, 0xe02020e0, 0xe0202020, 0x2020e020, 0x20202020, 0x20e0e0e0,
+0x20e020e0, 0xe0202020, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0x20e020e0, 0xe0202020, 0xe0202020,
+0x20e020e0, 0x20e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe02020e0, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0xe02020e0, 0xe0e020e0, 0x20202020,
+0x20e02020, 0xe0e02020, 0x20e0e020, 0xe020e0e0, 0xe020e0e0, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0xe0202020, 0x202020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0e0e020, 0x2020e0e0,
+0xe0e0e0e0, 0x20e02020, 0x20202020, 0x2020e0e0, 0xe0e0e0e0, 0x20202020, 0xe02020e0, 0xe0202020,
+0xe020e020, 0x20e02020, 0xe0e020e0, 0x2020e0e0, 0x2020e020, 0xe020e020, 0x20e0e020, 0x20e020e0,
+0x20e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe0e02020, 0xe020e0e0, 0xe0e020e0, 0x20e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x2020e020, 0xe0202020,
+0xe02020e0, 0xe02020e0, 0xe0e020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe020e020, 0x2020e0e0,
+0xe02020e0, 0xe0202020, 0x20202020, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0xe020e020, 0xe0202020,
+0xe020e0e0, 0x20e0e0e0, 0x2020e0e0, 0xe020e0e0, 0xe020e0e0, 0xe02020e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20202020, 0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe020e020, 0x20202020,
+0x20e0e0e0, 0x20e0e0e0, 0xe0e020e0, 0x2020e020, 0x202020e0, 0x202020e0, 0x20e02020, 0xe0e0e020,
+0xe020e0e0, 0x202020e0, 0x2020e020, 0xe020e020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x20e02020,
+0xe020e020, 0xe020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0x20e0e0e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e020, 0x20e020e0,
+0xe0202020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x2020e0e0,
+0x202020e0, 0x2020e0e0, 0xe020e0e0, 0xe020e020, 0xe0e02020, 0x20e02020, 0xe0e02020, 0x2020e0e0,
+0xe0e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe0e0e020, 0x202020e0, 0x2020e020, 0x202020e0,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x2020e020, 0x20e020e0, 0x20202020, 0xe02020e0, 0xe0e0e020,
+0xe0e020e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0x2020e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e0e0,
+0xe02020e0, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0xe020e020, 0xe020e0e0, 0x202020e0, 0x20202020,
+0x2020e0e0, 0x20e0e020, 0xe020e0e0, 0x20e02020, 0x20202020, 0xe0e0e020, 0x20e020e0, 0x20e0e020,
+0x2020e0e0, 0x20e02020, 0x202020e0, 0x20e02020, 0xe020e0e0, 0x20e020e0, 0x20202020, 0x20e02020,
+0x2020e0e0, 0xe020e020, 0x20e0e020, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x202020e0
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..f6de8db
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
new file mode 100644
index 0000000..610a65a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x51720B3D, 0x1F794878, 0x5D4667E6, 0x34A2B105, 0x2FD62AA9, 0x33D1BD82, 0x11FA5252, 0xBC88743B,
+0x5997007B, 0xA975AC44, 0x887D382A, 0x28E0237D, 0x5DF5E8E5, 0x552D44D3, 0x53C9055C, 0x550B345F,
+0x3AAD2C12, 0x078213D3, 0x2B8EBA05, 0x119E2789, 0x89506275, 0x8E561FBB, 0x8AF1DBD4, 0xC13F343D,
+0xDBE99F6E, 0x68DE687D, 0xF9A1B4D3, 0x2D5756FE, 0x325830E8, 0x50A2D6C1, 0x5ED45CBE, 0xF83E0FF1,
+0x3DCD8BA4, 0xE46C05D0, 0xCD82ECBA, 0x0854C206, 0xE726C488, 0xF048846D, 0x00AB1A91, 0xD68FFE3D,
+0x7F4D05FE, 0x1202B71D, 0x0CB72578, 0x399162C9, 0x013E3EC2, 0x9EB5AD1F, 0xD8E554A3, 0xB8FE5430,
+0xAB148FFE, 0x48C16E32, 0x1807F4BB, 0xF8417646, 0x4777FD5F, 0xB77852F1, 0xB70352C6, 0x57F02C5D,
+0xCFA02D64, 0x08E26E56, 0xCFAF88D4, 0x36737403, 0x560BF71D, 0xAEDF2457, 0xC2055860, 0x40EDF15B,
+0x47B63C47, 0x8C7BD3F8, 0x09C87289, 0x0F91C176, 0x74D726D0, 0x0FF016BB, 0x9AB4E25E, 0x17DA3217,
+0x981FAC78, 0x079D55BC, 0x54B27933, 0x03410A2E, 0x00D7DAD3, 0xCA306C5D, 0x6BF2A223, 0x33DD37C6,
+0x6CD8834C, 0xB2F72F2B, 0x2697DE6D, 0xB0E17513, 0x64FF1B6D, 0x15389650, 0xAA1ABBCA, 0x5B41ABD5,
+0xAE5B149E, 0xEE07D0D9, 0x4E94190E, 0x9E9D0F73, 0x41EC7CD6, 0x17FA3EE3, 0x87AC9E55, 0xD8FB9E0A,
+0x1792BC34, 0x537FDCE3, 0x7B883768, 0xE8B311BF, 0x0B24824D, 0x8161769F, 0xE3A06DA5, 0x4D4EB31C,
+0xAB43F5A4, 0xEBD482D1, 0x7074E180, 0xC0F5558F, 0x7ADE2FF4, 0x04A890EB, 0xAF51D221, 0x65899099,
+0xC70FCEC0, 0x89621B73, 0x73E3742E, 0x36721F2F, 0x4CC865A3, 0xC68981D8, 0x8C8678A2, 0xA90557AE,
+0x4AE76EF4, 0xE4C576D6, 0xCD6D2A05, 0xF940C957, 0x31F0E7A4, 0xD6FB6301, 0x1255F423, 0x0E24DFAE,
+0xD420D059, 0xA4BBF099, 0xFEC00685, 0x126216AB, 0x6EE78BCE, 0x0ED826E1, 0xEA3F64C4, 0x07E451F4,
+0xC8A1A696, 0x5440C56A, 0xED2F82A4, 0x5A2D1434, 0x5C60A97B, 0x22542ED8, 0x35619E0E, 0x8B1F6A44,
+0x29B55494, 0x0B6AAF9C, 0x7FC459AD, 0x63E03703, 0x9477B477, 0x49CCAD5E, 0x94732F00, 0x6D19F35C,
+0xD7B4C5A5, 0x3A3FC863, 0x989F4259, 0x78241B4A, 0x36859C33, 0xBD34C4FE, 0x47729C70, 0x9160927D,
+0x5C634916, 0xFF93A815, 0x793DFC07, 0x132DA316, 0x061F271E, 0xA8BA6812, 0x34DDD632, 0xF74EE348,
+0x428703E6, 0x3803C484, 0xA8841F0A, 0xF2C11566, 0xA3A974A3, 0x1ECF7B77, 0x876966BB, 0x0AE8261E,
+0x4F9FC567, 0x87145B64, 0xF872040D, 0xCC001154, 0xDDCAD818, 0xA16975D3, 0x874B6927, 0x9006AE4E,
+0x139F8335, 0x52D892F4, 0x02DB9814, 0x8AEE0CE9, 0x228A384F, 0xB1B608EB, 0x849C96B5, 0xA624B02F,
+0x63F30AF2, 0xF22C47DD, 0x8DC6F495, 0x520763B3, 0x99E6FF46, 0xEE33CF1F, 0x79F3E452, 0x18738520,
+0xEE2E19B0, 0xCB267129, 0x8F32E4CE, 0xA98D3B2C, 0x402B5E33, 0x673F469F, 0xC57BF021, 0x6B65970D,
+0xD02101EA, 0x5806EC81, 0x03FDE9E7, 0x8488D8E1, 0xF75CA4E6, 0x24859DE8, 0x07E7C226, 0x5B04AFF7,
+0xA55FAAC7, 0x9BFF9612, 0x5FDF3D45, 0x38CFB232, 0xDA1F50EE, 0x8BCB1A18, 0x5BDAC9E3, 0xCB07A2CD,
+0x6B277AD1, 0x5166C368, 0xE38F4AB0, 0xC8B60145, 0xCA8659FD, 0x48186C3A, 0xB9B938D9, 0x31C25631,
+0xF9524B14, 0xF96AABCC, 0x30DE5E1E, 0xADDE525B, 0x91364A03, 0x7BFE4B12, 0x518DB237, 0xE6E06AE9,
+0x08C03875, 0x63861F76, 0x8CA1D2C5, 0x8766CE46, 0x0C91E129, 0x6E1A90F2, 0x956E0BDB, 0x09E94D22,
+0x836A87C0, 0x614B1950, 0x39A2C911, 0xC9E4AAAE, 0x13A82D21, 0x5722A44D, 0x72585F11, 0xED5A0549,
+0xE9065DE1, 0x523EF8A3, 0xD0A6A33D, 0xFA0897F0, 0xE7A9304C, 0xA396A9BE, 0xF0E09485, 0x6C632662,
+0x07E9ACDF, 0xD9C21AF6, 0x7F26397E, 0xD3EBF6A8, 0xC04D15F8, 0x17134F92, 0x95C7AB49, 0x622B1080,
+0xE066BB13, 0xD849FF19, 0x2D20AEB6, 0xDAA89F18, 0xF03406B9, 0x4E7F0D6F, 0x41627FCF, 0xF74B94C7,
+0x842C88D5, 0x0B3BD215, 0x87C550B4, 0x7BB39B24, 0xBAD7890B, 0x7074E1F0, 0x7EC31BEB, 0xA8DEB258,
+0xE7F95D43, 0x4AEA8A72, 0x6A1DFB9A, 0xFFCC64BC, 0xC5DA05F7, 0xC50F59F4, 0x47718364, 0x3CB70917,
+0xD070635A, 0xA9F94561, 0xF9A9E43F, 0xE3145D32, 0xED862CFB, 0x90B95177, 0x63FDD2D1, 0x2B4BED50,
+0x9CB19075, 0x7C689E22, 0x5D514DE3, 0xA654D7F4, 0x4D80443D, 0x0049F184, 0xC5BC952A, 0x21027E89,
+0x36EBDC1B, 0x4E7B570D, 0x172D470D, 0xFE0578E0, 0x418557E6, 0x0FBD99B0, 0x44AE1CB6, 0x891E4C35,
+0x1E20B86F, 0xF0BA67DD, 0x491A37DA, 0x6DB08136, 0x145279F1, 0x619AD857, 0x216914D3, 0x4F70F3B1,
+0x1CFD20FF, 0xC19C381A, 0x205215BB, 0x9F09C616, 0x478C1F7B, 0x501D7EFA, 0x2422B2A3, 0x992BBAC2,
+0x19096B7F, 0x209D76F3, 0x5F7B22CC, 0xA7144CF6, 0x59D88E8D, 0xD60F3D9C, 0x37B3C398, 0xB930D494,
+0x1133E58B, 0xEE477D53, 0x06D72053, 0xF5044CF7, 0x78A7E8C1, 0x09F17983, 0xF2A8A0B1, 0x77F180FB,
+0x60E30775, 0xBAC1F2C1, 0xFFF1351A, 0xF30951B7, 0x291F6D06, 0xAD25387E, 0x265F049B, 0x785FD7D2,
+0x65491824, 0x11769597, 0xBFB649F5, 0xA026D7CE, 0xE91ABEB2, 0xF811133A, 0xAA83358E, 0x7C62D43B,
+0x425831D7, 0x1DBCCE9D, 0x8235C15F, 0x43AA0ABE, 0xC7B29493, 0xDFC016FB, 0xEDCAC598, 0x9A11AAA6,
+0xBBEC1337, 0x02834758, 0xC206205B, 0x082456D3, 0xDCC2B044, 0x03AC56C8, 0xE27BCB56, 0x018D8AFF,
+0x9B1F4CA9, 0x67CECE57, 0xB0313823, 0x05033890, 0xF9CBD85D, 0xB395AA6D, 0x1DD71CEE, 0x01903F60,
+0xDFDDA2B2, 0xDDB3047F, 0x37B6CA26, 0x3246AF0E, 0x34D4A195, 0xAC73D9A8, 0x42ADA3B7, 0xDD5C3C54,
+0x3A72DD01, 0x7151C6F1, 0xC89C9B9C, 0xB9DB48F0, 0x46BB567F, 0xA9B6C1A9, 0xAF7E85C4, 0x68042154,
+0x8EC768E3, 0x39548F0B, 0x3CE01720, 0xFC65D725, 0xC8BE167D, 0x18BC7B2D, 0x80674517, 0x70EF0D28,
+0xA1690EC4, 0x7A799319, 0xD3AA9E04, 0xB9E030AC, 0xE27419A2, 0x176F78BC, 0x3EEE2D51, 0xB2AFC5B2,
+0x077698D9, 0x822CFB42, 0xD25FEA37, 0xA8B5C937, 0x9F370837, 0xCB65BF77, 0xDB50947D, 0x61385C2A,
+0xD541BBD8, 0xAFB82860, 0xE371CCBC, 0x1012BCE6, 0x514A2569, 0x54E24293, 0x55C5B14D, 0xBFF8A596,
+0x55123AE2, 0xBCD878AE, 0xA5FF8791, 0xCC3679B6, 0x6E259F3F, 0x31D753E7, 0xB1478405, 0xDC2E5B10,
+0x6B392239, 0xBD77A5E0, 0xFA36261B, 0x80F27129, 0xFEB94108, 0x278C047F, 0xA26A9CC1, 0x4E74CF6F,
+0x25491E28, 0xD9A6CE85, 0x35006F8D, 0x589423E3, 0x1C05EEF5, 0x008ED038, 0x8ACE06D5, 0x0B55281B,
+0xB55154DD, 0x3B195345, 0x3C28F9C9, 0xE165EC9D, 0x464CBADF, 0xF8F03418, 0x52FCBC67, 0xCB5C6973,
+0xA14FA25D, 0x973C43FF, 0xF6100F0B, 0xD4155060, 0x6CBD9CBF, 0x9B94BED1, 0xBBAA2867, 0x84B17971,
+0x3D14474C, 0xBECDCFB8, 0x9CB8E718, 0x9BD16545, 0x5C4B7A27, 0xEB1C6F14, 0x06E67AE5, 0xB68D17C6,
+0xCF2BA7ED, 0xC61BB1F8, 0xDE1CD101, 0x547FB898, 0x9AB8536C, 0x6B76F050, 0x9D59DC7B, 0xB2ECB46F,
+0x1877197E, 0xEA4B79D3, 0xCBE45D0E, 0xB99469E2, 0x9C56EABE, 0x8AA0F403, 0xAB65CDF8, 0x1F484CC1,
+0x8355CBE1, 0x6338F2A8, 0x1EEE1322, 0xBD847B99, 0xB1A569B5, 0x93E5A15A, 0xEE93C79B, 0x8FE25028,
+0xCF67B061, 0xBD2A614B, 0x9D445C5B, 0x7196C073, 0x1C8A6DE4, 0x41C09CBA, 0x65CF737A, 0x6DA36B61,
+0xAD9325C2, 0xFAAD734D, 0x715ECA40, 0x117BE977, 0xEF7DF069, 0x34DF16E8, 0x41FCA499, 0x58A5DB4F,
+0xE0F0CB7E, 0x7660DB44, 0xF3DFD005, 0x95D89968, 0x381A4768, 0xC4BF229C, 0xB1286C4B, 0xB2E2CB2D,
+0xD5095702, 0x559473EF, 0x4930B978, 0x21C2453B, 0x28F0097C, 0x1BE9FDD5, 0x1DF7C3D3, 0xCB8C83DA,
+0xE9EEAAC5, 0xEB54B497, 0x8F27C608, 0xCAB6F4BC, 0x3083244C, 0xD91367E5, 0x6D0DD8AA, 0x376A49D6,
+0x945D17A5, 0x34383F0A, 0x226C7D81, 0x539A5462, 0xE5D65B82, 0x2BACD2F9, 0xE51ACF32, 0xD4533AA4,
+0xEE47A8B1, 0xD541AB7C, 0x62998347, 0x3352FE1B, 0xF6701330, 0x45ED05C7, 0xE24E04F0, 0x07D152E0,
+0xCC17012E, 0x7B0AE79D, 0xEA8E9A4E, 0x6B9CB1D4, 0x0A14FB89, 0x1428463A, 0xCD20FE48, 0xA2F06258,
+0xC4C9935E, 0x609CA8C3, 0x9505DC5A, 0x5D6A8960, 0x25C845B7, 0xF4472F91, 0xF4BA06DA, 0xC387D335,
+0x60CAFE37, 0x54521AB6, 0xE954A5DB, 0x807AEDDF, 0xBEA54C4E, 0xAB63189D, 0xC533E9E4, 0xD122036F,
+0xB660C152, 0x16C622DC, 0xA62E4EBC, 0xC1AFA1F0, 0x3F93D72C, 0x516D9036, 0x69F429F1, 0xFF61A62C,
+0x0E0DBA6C, 0x5F8E6270, 0x37EB8C94, 0x02686070, 0x4DEFF6F1, 0xB46F4CD8, 0x9C5F4989, 0x7AF3E147,
+0xB9ABAAE9, 0x530FE486, 0xDA64455B, 0xE1AC28EE, 0xF869E55F, 0x8CDF0629, 0x28CFAE5D, 0xE42511EB,
+0x82A22ACE, 0xD81EDF39, 0xDF29CE78, 0xBD9C0B32, 0x7D55CF04, 0xD24B07E3, 0xDD8C58D6, 0x683D73F7,
+0x67ED7F4E, 0xC44DF267, 0x3348567C, 0xDC58224C, 0x0FD21085, 0xA1AAD313, 0x05D0653A, 0x4668BA1E,
+0xE8E54661, 0x67528EC6, 0x8A96C5C0, 0xAE18B780, 0x12C4F729, 0xED6897B4, 0xEB9BE180, 0x4213D183,
+0x5C2F41F9, 0xF6CF9903, 0xE137CE1C, 0x22472A15, 0x2C49EDE5, 0x4FE2B949, 0x622A5C7C, 0xC60B261A,
+0x23FFB032, 0x7557BB31, 0x73B43B29, 0xBF8F592E, 0xF77D8A06, 0xFDFAD099, 0x682F02DC, 0xE4B88537,
+0x909C487E, 0x6ACF8698, 0xF25317F0, 0x9DDD150A, 0xB6A6B219, 0x2F88A7C2, 0x4F1EFAD7, 0x6844FCEC,
+0x7CB0E34A, 0xE73F1855, 0x3BA461E4, 0x8CD5C541, 0x8FBEDD90, 0x5F7428E3, 0xCAC85442, 0x3F35E219,
+0x70DB1A13, 0x77956148, 0x73DFCA5B, 0x8AD5DFC4, 0x68D5634D, 0xB102D653, 0x5F02FA10, 0x149B86A7,
+0x8BD11AF0, 0x4E5B51AE, 0x93BC007A, 0xD2044B19, 0xCDBCCD58, 0xF72F9D4E, 0x2C6523CC, 0x64EA5F68,
+0x6B4756A7, 0xDE2200AE, 0x75604B42, 0xC272519C, 0x78351E10, 0x45A909E0, 0x7D60FC9B, 0x4AD3D619,
+0xF6CB1E85, 0xC922F020, 0x6B8ED326, 0x016123DB, 0xA4B01ECA, 0xCAEA94DF, 0x758F1531, 0x7853E744,
+0x75E076F4, 0x89E63239, 0x18076EFD, 0x73F6B66B, 0xEC1E50E9, 0x6665B92D, 0x7FE3A0A0, 0x765D6E3D,
+0x269CC3E6, 0x151BF69E, 0x5D888F2C, 0x8606D58B, 0x34556C2D, 0x772BFD84, 0xD2CEC1F1, 0x19657FC7,
+0xFE618CB3, 0xB1D72F2D, 0xE564F765, 0x75C308E3, 0xF08F38FA, 0x30353774, 0xF513517C, 0x6C49903F,
+0x7E7BBB0D, 0x40C36AD6, 0x492B7B4C, 0x39757376, 0xBB9C60F2, 0xED812418, 0xB2291400, 0x4FB57E8C,
+0x1820B510, 0x4764C4DA, 0xEE7040A6, 0x6041E905, 0xF4330270, 0x868AE751, 0xE38DEAB9, 0xD3B20918,
+0x79C258E0, 0xAC874D8E, 0x9550A947, 0x539FF577, 0x5018EB82, 0x58BC22F0, 0x100BFE26, 0x52491E2B,
+0x513761BB, 0xEB21862F, 0x0195F1F5, 0xA0A522F2, 0x1BD21E11, 0x3A15B38B, 0x1530FE09, 0x3841E8CB,
+0x74B56759, 0xAC907E5E, 0xCC8695B2, 0x513FCAD4, 0x2E284F99, 0x09802A83, 0xFC67F995, 0x6A2BA176,
+0xCE37BAE8, 0x270D8DB8, 0x424D3D63, 0xD0E0F8B8, 0xF01ECFF3, 0x0A4F0B47, 0x6837A59D, 0x76D32DA6,
+0xB24A85D7, 0xAF950042, 0xFFCD9AB0, 0x6BD79F9A, 0x52DF8B2A, 0x62D81BFC, 0x2FF92AAE, 0x578EBB2E,
+0x669772BC, 0x2F755594, 0x71C48903, 0x5AEB6CE7, 0xD0D4695C, 0xD0082CF2, 0x499BC2D2, 0xF4177760,
+0xDE7EE37D, 0x9CC47CE2, 0x55270C58, 0x51DA31C6, 0x6FF550C4, 0x91970735, 0x8604C4F2, 0x21D8812F,
+0x116D329D, 0xCC43378E, 0xCD5C5414, 0xFA23B2CF, 0xC4EA168B, 0x0B95D110, 0x027C1BD9, 0x902522CB,
+0x9D35781A, 0x0FD9620A, 0x0D235356, 0xB0155399, 0xAD93D8DC, 0x863D90A5, 0x07F31447, 0x52C32D67,
+0x42BF7F12, 0x3EA615E2, 0x2EF7C68A, 0xB266CAF2, 0xBF10E1DD, 0x0289B129, 0xC765DE2B, 0x0425F56A,
+0xEF6725AF, 0x15482D61, 0x299BC121, 0x37E3F009, 0x4E1B40CD, 0x21CFD81A, 0x89F59D43, 0xEAE869A5,
+0xC5DA5D72, 0x3D2E05B5, 0x40B1E42F, 0x243CECAC, 0x3E8011E3, 0x05706D92, 0xADB36FB7, 0x368A76C1,
+0x861D14E1, 0x6A75CDF1, 0x9C170293, 0x5D3E7920, 0x2846D4EA, 0xF0A839E9, 0x456E8313, 0x9AFA5F5A,
+0x88E7C02A, 0xE6D7B0C0, 0x888A3119, 0xB7E0C142, 0x33A2672C, 0xF629CD26, 0x1AD95E2D, 0x847C2ACE,
+0x9A6178E6, 0xD1965890, 0xA0AB9C4E, 0xC6F84E66, 0x2EF71F5A, 0x466416A2, 0x64DA94FD, 0xDA420C3F,
+0x628D9DD2, 0xB0660BC9, 0x73D738F7, 0x23474708, 0xB1C01B97, 0x24C409BB, 0xCDA973F1, 0x921F315B,
+0x34E41AD2, 0x98E3D86E, 0x8E9EB06C, 0xFD01C0C5, 0xB53BF406, 0xFC55AA14, 0x465F25EA, 0xC9015011,
+0x2A7981DE, 0xEBA54881, 0xE1DD1AA1, 0xEB0D557A, 0x24E00D48, 0x1B062CEC, 0xBCBEFD4D, 0x4224EE50,
+0xAE018A67, 0x86F89F72, 0x16DF37F0, 0x14280530, 0x8A4FCBA2, 0x34B82D2F, 0x5C75AFD3, 0x9A883077,
+0xBDAD5896, 0xF2D49057, 0x93443C2C, 0x26FC7728, 0xBE68CD8A, 0xF2E58177, 0xFC662BFB, 0x12A8B923,
+0x97E2D7FB, 0x94B46697, 0x3E40F2A6, 0x2B1C779D, 0x429261C8, 0xDC35EACB, 0xB3599132, 0x82411F96,
+0xCF95101B, 0x0ED29D5A, 0x983CBB10, 0x53B856F8, 0x0BD21F78, 0x2D0F70AC, 0x8D9F7BE9, 0x6C289AF6,
+0x0951B4E8, 0x18420FDE, 0x3A0C1647, 0xD7581C3C, 0xB6A581AA, 0x86C36E86, 0xED0DADE7, 0x3DC0A3F8,
+0x9D2486C5, 0x43280493, 0x51A78F3B, 0xA6F3C39D, 0xE4AB1CC9, 0xC1C8E1B3, 0xF4A5CD45, 0x43762C67,
+0x67CA6AC0, 0xBB693E74, 0x95B7DC41, 0xE5C32875, 0xAD1DF5A3, 0x9AEEDB72, 0x4DC689C1, 0x8D1A43CB,
+0xFF3C24C7, 0x6E13B0FD, 0xB80796BC, 0xAA29E2C2, 0x8D41CBFA, 0x08F193A2, 0x166D91BB, 0x5DE3BA7B,
+0xF026AAFB, 0x2D4FF0EB, 0x00763051, 0xA5D87EC5, 0xF2D0952F, 0x264B84D3, 0x7D52BA15, 0xA4DBC32A,
+0x6D37D449, 0x867C429B, 0x24F649DE, 0xA1C05AF9, 0x036864D0, 0xE0C427AE, 0xB66B56F7, 0x4A92DF71,
+0x2BF6EFD0, 0x1527185B, 0x1DB501A0, 0x48E33DFB, 0x799FD1C2, 0x9BE71138, 0x186F8C4B, 0x40637F9C,
+0xCBD2B6D6, 0xB7D2866B, 0xB99F91B1, 0x656DC541, 0x3115BEBA, 0x7F7E186F, 0x33237B58, 0x8F27330E,
+0x629DF2BA, 0x0D65CABA, 0x6EB639E6, 0x75B4838D, 0xB71F0CC9, 0x0A73282E, 0xC5D6E9CC, 0x00E23512,
+0x643B61B8, 0x184DA6CD, 0x507562EC, 0x401A7564, 0x6502C287, 0x1498D3DC, 0xCDB69377, 0x6785C09E,
+0x99A5B15C, 0xEA52FBB5, 0x9CC1FE10, 0x213B92FE, 0x92869B62, 0x0002B391, 0xF6196A22, 0x14E8CCEE,
+0x06952624, 0x8755C50A, 0xCF9FB6D1, 0x8024245F, 0xB330224B, 0xB69B4E23, 0xE900C840, 0x17378F6B,
+0xB1C5C9AA, 0x365D98D7, 0x84372922, 0xA8859E29, 0x8CC062D0, 0x5D14948F, 0x79631FDF, 0x4603A8F6,
+0x3A944E65, 0xFB11FBB7, 0x977B4797, 0xD327ECA0, 0x2C66F4A6, 0xC1ED6C71, 0xCC54322A, 0x666A1D2F,
+0xF9957A72, 0x708FD038, 0xF4939492, 0x16C308AC, 0xBDFE8C4F, 0x03A56B55, 0x599EB4DC, 0x03B7F563,
+0x6CEF20E2, 0x1E830B0A, 0xBE9CC6E7, 0x2F73F67C, 0xFF26AA29, 0x38E01FFE, 0xFCDDB7C0, 0xAD82FD69,
+0xDE2B29BE, 0xEEE44C1A, 0x02E81890, 0x97A26194, 0xB6660513, 0x37953153, 0x8C99F39A, 0xB5257B11,
+0xB5FB5C93, 0x06B16E49, 0xC0C4311C, 0x21517366, 0x534A32F0, 0xF72873CF, 0x9C447EA4, 0x821A428B,
+0x92080B41, 0xF9207690, 0xEC3121A2, 0x88923ADF, 0xB22DD5EF, 0xACCDF948, 0x5FB73CF7, 0x68AD33AD,
+0x1C3F8C54, 0xC7360226, 0xE538F3C7, 0xF0C1418E, 0xC590BD5A, 0x14160C26, 0x2E266276, 0x7CE58F02,
+0xE5A255BD, 0xBEA2A6CA, 0xE85527FF, 0xAB62F48A, 0xF3D56430, 0x36B38A77, 0x4A8E2E37, 0x6B5E55EA,
+0x6F814FED, 0xC17C4E67, 0xC296DF1E, 0x59E9D04D, 0xBC78F5B3, 0xAB37D967, 0xF8428744, 0x6303DDF9,
+0xE1807D98, 0xA0BAE3E3, 0x26E84D01, 0x618E08FA, 0x0CF0FC7A, 0x911A771C, 0xDB458E3E, 0x5D920C83,
+0xFFC40809, 0x235DCFFE, 0x68E1C98A, 0x9020BC6B, 0xD1A00FEE, 0xAE76B089, 0xC8E6F169, 0xDFC541F8,
+0x65876337, 0xDD1D7ACF, 0x5441C29E, 0xA7B5CDC5, 0xDF068CC9, 0xD9AEF898, 0x8748E9F9, 0x8D46B66B,
+0x41CEADE7, 0xD228472C, 0xBAAC5EA3, 0x1459D639, 0x46D7005A, 0x3646D722, 0x5098793C, 0xC3BADAE9,
+0x23831605, 0x88D56902, 0x7D22FBF7, 0x6963BC9B, 0xFFAA0CC0, 0x20ACAEF8, 0x3EB1E8BA, 0x4367A693,
+0x2B15F4A8, 0xEBF05245, 0x1B19BC91, 0x63A52E8F, 0x64E44548, 0x31ADCA08, 0xB8CDD353, 0x55357C6B,
+0xB7549F77, 0xFDA90353, 0x19A52D09, 0x2E630C5A, 0xE251717A, 0xD496D0CD, 0x302392B5, 0xB720E90E,
+0xDECE39D2, 0x167EB923, 0x4AEC7C87, 0x166F0D11, 0x0A7716C0, 0x5EA8A35E, 0x61818795, 0x25619A2F,
+0x0C36E1EB, 0x5301166A, 0x7E6C0972, 0x4C2ACC5C, 0x19379672, 0xB6C89205, 0xB44525A9, 0x4334A835,
+0x522CCADD, 0x8100BFCF, 0xE7FBB2AA, 0xBD2078D4, 0x82BC039C, 0x0028F607, 0x596A819D, 0xC55F98D3,
+0x9741C7C5, 0x2CADFA60, 0x8C0C37DF, 0x14F486EE, 0x43831895, 0x348BED8C, 0x6D96F7DE, 0x561D71EB,
+0x99251352, 0xDBFF7F02, 0x0D2B5D71, 0x61A3F1F6, 0xF6BDDD54, 0x3C1EE6CF, 0x100F993F, 0x522C993E,
+0x81C8B272, 0xBC024046, 0xD3C7F659, 0x0AFC9809, 0x3951666D, 0xA76382D4, 0x213254FA, 0xA0F79581,
+0xA05BDEBE, 0xC424733F, 0x568AF0E2, 0xA79EEB13, 0x38A54B1F, 0x426C64D8, 0xEB63779A, 0xAD0C8182,
+0xFE3C9D54, 0xAD867829, 0x2E1558F7, 0x3B2F60CA, 0x854BDA1D, 0x81E879EB, 0xDB6B191F, 0xA4D81A7D,
+0xB08D004C, 0x257CB37B, 0xD2AE9EE1, 0xADE547CA, 0x1513E54B, 0xE515E8A8, 0xB63382EE, 0xBB5952B7,
+0x3888D3F4, 0x11B9F6A1, 0x736007FC, 0xCAC4DB49, 0xC65BCED3, 0x1534E63C, 0x72B34D87, 0xB46BDA5A,
+0x0B09131B, 0x3248E1A5, 0x982C52D5, 0x312F5B0A, 0x8B5221B7, 0x560EAE75, 0x86E74A54, 0xC45B6ED0,
+0x430FCA58, 0xB54CA555, 0x83E701B6, 0x5E3F1A11, 0xE42595FC, 0xC5D30EBD, 0xCDC3D6A9, 0x281D97DB,
+0x3D48E424, 0xC8F5E788, 0x0A38BD4E, 0x67619920, 0xBA91BD8A, 0x4C2685A8, 0xE12F2D99, 0x68860336,
+0x1EFAD0DE, 0x82E773D9, 0xA9B81507, 0x4F793718, 0x03C89FDE, 0xAAFA74B3, 0xA9923B7F, 0xC60D6383,
+0x25523B53, 0x94B8F271, 0x05F62AAB, 0xD22036AF, 0xFB84E8E3, 0xD26B7725, 0x52CAF750, 0xA6B90733,
+0x1679D26B, 0x46C51D02, 0x872DBA4A, 0x8A6BBACA, 0x44B2C653, 0x4BE93B46, 0x4E50CD1D, 0x360E7674,
+0xDE46E0A9, 0x29165A8F, 0x36769217, 0x25692D35, 0x09C78FBF, 0xAF2CD00A, 0x4E6104A9, 0x30A7CD1D,
+0x2E4CF64B, 0x3E343974, 0x376D1C2C, 0x7CEA27D5, 0xB49AD3F4, 0x8CA5464C, 0x929DB7DD, 0xED365DDC,
+0xCE4C30BB, 0xB309DB4A, 0xB8CF523D, 0xBC1A5DB5, 0x46941CCA, 0x0BB801F3, 0xE5E7BCA4, 0xD2775721,
+0xD12216E1, 0xD1C30356, 0x487CA764, 0xDAA6F07A, 0xB55D9865, 0x1FD2A768, 0x75FB14C6, 0xB95EFD60,
+0xF04B3712, 0x43C690B7, 0xB36E72FD, 0xF19B180A, 0x10885E98, 0x574DFE46, 0xE6E0857C, 0x7D957916,
+0xBA2C5422, 0x901BE8CD, 0x710ED3A6, 0x6B654715, 0x18D47B35, 0xED3DBEEA, 0xDA2EFEFC, 0x1435655C,
+0x48518EA4, 0x925868CF, 0xF7DF8142, 0xABBD187D, 0x664071FC, 0x8B0D1DAE, 0x93B0E1B0, 0x493CBA04,
+0x1DFE1D84, 0x6076959D, 0x0BBD1D1F, 0x174B8F15, 0x05EADB39, 0x85882865, 0xCA2E67B9, 0xDA6B7F16,
+0x6BDECD74, 0x30451F7D, 0xF2CDB314, 0x1B059577, 0xEBA0AAD3, 0xF34F55EC, 0x5642B9F2, 0x35B79FAA,
+0x1BF4C0F5, 0x07553B70, 0xA7D6E2CE, 0x46BFC421, 0xC79D957F, 0x4A1F4664, 0xA553888F, 0x96C1E3F4,
+0xE26DDFDC, 0x9701D42B, 0x7885B76C, 0x2AF0334E, 0xF1C99A18, 0xD4DF3CC6, 0x862368B7, 0x209E33E0,
+0xDE37A458, 0x85189E5A, 0x480B41FA, 0x65596FF4, 0x7F3ED63F, 0x24FF7C1A, 0xD4FA1AE3, 0x0476407B,
+0xF31B57D9, 0x48C12741, 0xCC81C4FA, 0x842E6F92, 0x96AD0091, 0x6DA5E294, 0xBBF7990A, 0xDCC365CC,
+0x588EC677, 0x01541D90, 0x9C1F0C9F, 0xAF545419, 0x15F252FB, 0xFC17416F, 0x2D0AEBA8, 0x20C9F171,
+0x72D7FD24, 0x5ABB1FBC, 0x8C78541F, 0x7DDCA0C5, 0xD6052EDC, 0x1A9B17D5, 0xAF1A0520, 0x41B75608,
+0xCDFD6875, 0x8B090E1E, 0xE051BD80, 0x3880A8CA, 0x7CE8C7F9, 0xBD174BF9, 0x330C93E7, 0x153E3663,
+0xD40FE5AC, 0x18D3524D, 0x2DE90E40, 0xD00FD5FD, 0x3E341A48, 0x4B692F17, 0xBA1846B9, 0x6F6BBF38,
+0xF65D9FC6, 0x79DD8BE8, 0x96697CB7, 0x57A46B02, 0xDA36F017, 0x5C61CA7F, 0x438EEE7C, 0x288BE1F6,
+0xD461CA09, 0xE21A8707, 0x23D613AC, 0xE202078F, 0x435C7ABE, 0x543F7C2E, 0x9C86F08A, 0x9FE5D7EF,
+0xDE3B6F2F, 0xAF314EC0, 0x480F41DB, 0xDB9CCF69, 0xAA84D589, 0xBB86095C, 0x4EB3989C, 0x43AFA06F,
+0x43CBC88D, 0xCFF61FFF, 0x3B19F6AF, 0x7F4DB62A, 0x6877C1BD, 0x00049088, 0x985E6893, 0x25AF7B17,
+0x3B8CC125, 0x110D8178, 0x4225B1D1, 0x6AB332EF, 0x03DAAF48, 0xA727EBD1, 0xC290B4FA, 0x25DEB8F5,
+0xD191E391, 0x16C68527, 0xCDA26352, 0xD015DE2D, 0x1741279C, 0x6FF0F803, 0xCAFA80EF, 0xD642D9F6,
+0xED1DC232, 0x3C59A8C8, 0x9D2225BA, 0x7C0BFC04, 0xDB644EFC, 0xE4B3F2A4, 0x69443508, 0x3D80A30D,
+0xD3B6B1D0, 0x31ACCF5F, 0x80CD2E1A, 0x57825477, 0xF1264F44, 0xEAE834D2, 0x1D92A406, 0xA83D1578,
+0x080992B7, 0x288382FB, 0x12A81D35, 0x4B1075BB, 0xD901809E, 0xAEF2FF44, 0xB5AB83E2, 0x3D2CFB1D,
+0xBC3B924F, 0xDBABC7D2, 0x3D21FE5E, 0xED96310C, 0xD7A58284, 0xAD97D931, 0xB3F22626, 0xE17B26C9,
+0x753C5590, 0x658D2059, 0x10542CC5, 0x1111B130, 0x4511BDC6, 0x4B0130D2, 0xB9A49E56, 0x7B3C0040,
+0x14A7F5B1, 0x284CD74B, 0x5986AA3A, 0x288A6778, 0xCF8C345B, 0x7EC2DB9C, 0x4143723F, 0x8EFFF053,
+0x37F636FB, 0xB3B2C326, 0xB0C691FB, 0xF8B17E9B, 0xC18E4AC3, 0x87E5AEAB, 0xE10C6BCE, 0xC2E5D43C,
+0x16483523, 0x5811BB6E, 0x2491077F, 0xAADD640A, 0xEB482771, 0xE2CF2352, 0x118F3B30, 0x65CAD3D3,
+0x321FE964, 0xE323B837, 0x4661C10A, 0x3E0B9B59, 0xC910DC9A, 0xF469111F, 0xB84BC256, 0x7D4F988A,
+0xBE471C62, 0xAE0B49E3, 0x5CF09417, 0xDA56D516, 0xD058BC34, 0x4ECF94FD, 0x262E56EE, 0x40A6F15D,
+0xF4B3011A, 0xB9A90E28, 0xD16F10D0, 0x78D27564, 0xD2999E23, 0xFE2FC577, 0x51D1CB6C, 0x9305B848,
+0x9C18BB0E, 0xFC325BD2, 0x22CC897F, 0x7BECBF34, 0x71FA7C5C, 0x896A83B9, 0x7B77EE42, 0x9DECA2FE,
+0x99A4DA7F, 0x0577D802, 0xF623F0E5, 0xC13A882A, 0x8A0EACF4, 0x771E5959, 0xBC717207, 0x4DA27722,
+0x3B57A0CB, 0x3CE0C56E, 0xDD13EECB, 0x0E8FB826, 0x49D6FCF5, 0x9C059DB5, 0x75D235AE, 0x5E8EF898,
+0x3D4D21EE, 0x9293C72F, 0x3AE81056, 0x7E881C2A, 0x734578F3, 0xBCA210E5, 0x9F69FEFB, 0x79E858EA,
+0x59338994, 0x77F5BF5A, 0x62CC7CF7, 0x324B66AE, 0xB61F0F28, 0x5960913D, 0x8408FD29, 0x32EA8286,
+0x5540E8CF, 0xCF9ED028, 0xEE5E4CD5, 0xE1F6DE47, 0x66492D8B, 0x33731885, 0x06D58B2F, 0xA22C4480,
+0x720A693C, 0x71DE4D01, 0x40D9C3B0, 0x79034CC1, 0x3C696507, 0xB68925CD, 0xD04ECFF9, 0xF39B20E7,
+0x0878361E, 0x148D1A6C, 0xBEB29DB3, 0xC8A7CAA5, 0x5DD28BF5, 0x3ED0FDB1, 0x9F2F17F0, 0xAEB77A1F,
+0x85A3376C, 0xE45C2545, 0xC3AD7E05, 0xC778D187, 0x28CB977B, 0x935896BC, 0x3062366E, 0xE19F8C28,
+0x613CC306, 0xDE682224, 0xD8681BE6, 0xD07EC9A8, 0x361D7118, 0xC1980698, 0xB9F1A444, 0x19AEF7CD,
+0xEDB3B800, 0xDDF00DF9, 0x434AD5EC, 0x1B9A9F94, 0x473F8951, 0x42A873D2, 0x8FFA7322, 0x2385EEC1,
+0x0B5E64AF, 0x93E6A894, 0x5FE84189, 0x50B49DD1, 0x0F4DA031, 0x195755BE, 0x32D75892, 0x0ACC8DC3,
+0x8004D52D, 0x71468A4C, 0x52212406, 0x4287C465, 0xDF11D168, 0xCC65162A, 0xF5ABF6D7, 0x1FCF4564,
+0x336B65B5, 0x6D8D79F3, 0xEE173A9D, 0xF8B7FEC7, 0x3499122B, 0x3A66F559, 0x638B0106, 0x9AC6A2A2,
+0x506AEFA7, 0x5BFA19AC, 0x0041D429, 0xCC84FBCD, 0x92AB1098, 0x35B14F91, 0x4CA47441, 0x8BEFB0FD,
+0xA676A214, 0xE0BCFF1B, 0xB66BBCFA, 0xF7F51AE3, 0x8923E853, 0x7C8E2648, 0x63DF4DFA, 0x5B126708,
+0x4CF77405, 0x62FC871B, 0xE72B0321, 0x0AAD3B56, 0x85F9D3B6, 0xCBC955E6, 0xAAB642A6, 0x84889402,
+0xCC4F93D8, 0xCCD64C70, 0x6A057B76, 0x3E2772FC, 0x2EA5818A, 0x12529546, 0x52475902, 0x5E880125,
+0x5DA0456C, 0xE7E0B221, 0x67B28F28, 0xFF2BE95D, 0x77E57E3D, 0x0D17692C, 0xD7C794E1, 0x3E84593A,
+0x25336650, 0xBC797326, 0xC15F09B6, 0xF478DE56, 0x4B8FB9DD, 0x7CBBDD49, 0xA6BB7109, 0xC6A8E4AD,
+0xDAF13B13, 0xA27DA108, 0x03F2BCE7, 0x4DC09AEC, 0x28CF76CA, 0xDBF1C1DE, 0x8BD483AE, 0x920C9F94,
+0xC8F8DAFD, 0x1AD6F0E1, 0x1A98DFFA, 0x958A88B6, 0xA4DFDF05, 0x2DCDC1C1, 0xAF1DB965, 0xC49BC2F8,
+0xFBE0068E, 0xDBF0EDB3, 0xE802C7A5, 0x13231111, 0xFE0DEB02, 0x07520A34, 0x48EAF3C2, 0x14BC90FF,
+0xE90FA247, 0x387A087A, 0x33C9B353, 0xF10C31EA, 0xCE1D9AFC, 0xB1CA2313, 0xA64D0F07, 0xB819C617,
+0xDDC74CE9, 0x1E71FD85, 0xF53E59A3, 0x03AD9E1C, 0xD7732E22, 0x7FC3C3B6, 0x01E8B625, 0xC66BC83E,
+0xD79B59C4, 0xE0C2A9BF, 0x6A867FB3, 0x6FAEE85A, 0x0272F51B, 0xFF5C02C8, 0xE5898EA5, 0xE6F1A24F,
+0x7A635176, 0x0CAE04B6, 0x62B2CB88, 0xACC872A2, 0x4CC37EC5, 0x541BD489, 0xA79318E6, 0x10E757F7,
+0x27B15205, 0xB1A7F8E6, 0xD97C6A7E, 0xDC1531F4, 0x32AD9F27, 0x503FECE3, 0x2FE7ADDA, 0xA87FCED5,
+0x3B2491F2, 0xDE3CBDA6, 0xD9B0DAE2, 0xF9E8C840, 0x59889C6E, 0x5C36F39C, 0x5A34AB42, 0xA9F0D73D,
+0x1DDA3D46, 0xEAD8A643, 0x4BB1EEB4, 0x26F9DDC3, 0x4080BDFB, 0x06CCB813, 0x7FEA0F7A, 0x733EB400,
+0xA0924D92, 0x81A2F4AC, 0x2186A2FB, 0x65E3FE75, 0x1C3CEF14, 0x2AD276BF, 0x755A9FBB, 0xA0C06172,
+0xE865A631, 0x51342ADE, 0x4BB57166, 0x9541788E, 0x43560A1E, 0xA6C99C47, 0x3DABB2DF, 0xEE0CDFCA,
+0x73FD7A8F, 0x9BB98F6E, 0x396300BF, 0x2B8F632E, 0x3B7C2C58, 0x6E0B3422, 0x7989D727, 0x0284E1CD,
+0x672E2062, 0xC29D80E7, 0xF4431487, 0x63C036A4, 0x92AED164, 0xD8B2D5A5, 0x5EDB7F85, 0x200F678F,
+0xE666306F, 0x19EB1C1F, 0x568C784B, 0x7EAB553C, 0xD3A81CA7, 0xADFB1A35, 0x81F6C982, 0x5D404242,
+0x1F37F1D8, 0xA0248CA5, 0xCB9429C7, 0x81D2FB09, 0xBF2CCE61, 0x34F94870, 0xCEA29187, 0x8CD6B738,
+0xC852A643, 0xE6FF9838, 0xF672E339, 0xBC9CF529, 0xBC1A7270, 0xF332DE45, 0x2274324F, 0x19D3ADFC,
+0x3A9D6F9F, 0xB6623720, 0x1C0D53C6, 0x9C9B005D, 0xC807DB70, 0xDBEB4D1A, 0x23DF5E6A, 0x31653D24,
+0xE9EE9A3A, 0x883C2682, 0x4FDFDBB8, 0x01931B79, 0xB96B2953, 0xD1BBB9EA, 0xF804DC6F, 0x9FF07047,
+0x0676AEE3, 0x34346AC5, 0x15061183, 0xBD07BC81, 0xB644448D, 0x4C27AE5D, 0xB72888F1, 0x25B28D85,
+0x1528B52C, 0xFEAEE891, 0xAE86255E, 0xA275F0FA, 0x9AA569C4, 0xD8D3C17A, 0x44EAA95F, 0xC8B949BB,
+0x1ECAB3B7, 0xC9BABFC2, 0x2241A16C, 0xAF37C8C0, 0xFC8B9DE0, 0x67AE2B30, 0x1EE955B5, 0x11540BA4,
+0xCEF49C81, 0x955D12F4, 0x5DA56ED9, 0x6D163091, 0x6DBB9A12, 0xA5F18DCF, 0x81C5969D, 0x4BFEFF8B,
+0x2409B4A4, 0xF9802712, 0x95688E12, 0x543A9B08, 0xE7D077F3, 0x543C6AF5, 0xFCF0F959, 0x21B73D30,
+0x117B771D, 0x84678E41, 0x6E8D7916, 0xAAFDA927, 0x404BEBAA, 0x4390DCBE, 0xFD8C4A5C, 0x77027A4B,
+0xCDF46AC2, 0x664ABC99, 0x60A2DE93, 0x75CB8849, 0x6EB635D5, 0x528DA55F, 0xE329AA8A, 0x52B6381B,
+0x5E83B9A3, 0x67808F27, 0xB005F8CD, 0x24234196, 0x802EAA19, 0x9156536E, 0x607876B6, 0x8C6FE71A,
+0x1E83B387, 0x3992472D, 0xAB035E7C, 0x94620352, 0x8E9F5ACB, 0x17D19729, 0x84D30444, 0xDAC9C8A0,
+0xADA6B067, 0xAFB41C42, 0x26AEC18F, 0xF01DE12D, 0x2B6BABE7, 0x72E63284, 0xC7F47DCA, 0x6BD64571,
+0x76BB68C7, 0xCBCDBC20, 0x90A8C3B0, 0x89E963FC, 0xECB61C6F, 0xB58DC18E, 0xBA68A67E, 0xC21640FB,
+0x8BC1D0E5, 0xCB47716B, 0x3C33F7CD, 0xAADD9DB6, 0x8C6A8A66, 0xCD30BF4D, 0x7FF76111, 0xAE29F53E,
+0xFC32445F, 0x450FDE2B, 0xD5F634F6, 0x2F5F6741, 0x32477719, 0x70A0F8B5, 0xE264D3C2, 0x025DBBFA,
+0x3FE0FEEE, 0xB4DD24C7, 0xB230275A, 0x911FE262, 0xD78ABA2A, 0x79C6A18F, 0x005735F6, 0x24DB115C,
+0x6F128739, 0xFBBC7CAE, 0x7C3E4B46, 0xB0D8EE87, 0x33F7C8FB, 0xF01EB196, 0x405B5B38, 0x906E56B4,
+0x2EAC774E, 0x9986FA3E, 0x5E6A832C, 0xDC4B4CB8, 0x10195B71, 0x06D70C7F, 0xA0562BB0, 0xBAF04C11,
+0xF63A8D4D, 0x13F5779B, 0xC5415095, 0x90D790C1, 0xC0F5DB55, 0x49F4237A, 0x44402AAB, 0x6F35EFA7,
+0xA96804E4, 0x617AA899, 0x0A01ABBD, 0x8F217DB6, 0xAF742EBF, 0x879DC6C6, 0xFE3F21E7, 0x170E9968,
+0x41C689BB, 0xBBECB2CC, 0xAC39446B, 0x6D890AF1, 0xEA31805C, 0x33C1DCAF, 0xFF67FDA7, 0x95E170F2,
+0xE37E5224, 0xFD6A0993, 0x4FBAE35A, 0xE928A7E1, 0xE3440663, 0x0A7F1911, 0x09B931B5, 0x7BFD8B80,
+0xFEBD421D, 0xFFA48EB6, 0x64096703, 0x24FD686D, 0x155131F6, 0x2770D1AE, 0xE473653C, 0x3678E19B,
+0x04F21250, 0x08B87FC1, 0xB1917773, 0x64080643, 0xDCF69FB8, 0xF088C3B9, 0x6F64A653, 0x9F348DEA,
+0xABF0F1C1, 0x1FD39B64, 0x3E47445B, 0x6E3B4769, 0x722B1E1B, 0x98EEAE63, 0xFF308A6B, 0x192DD487,
+0xDE74AF9F, 0x44803C3C, 0x9CA2B4BE, 0x73C33EB1, 0x120437D2, 0x7C51E8D3, 0x8AE47C86, 0x4421AE8E,
+0x1B843E51, 0xA2D4BD5A, 0xD4C2312C, 0x96643276, 0x19389387, 0x9196D220, 0xB8515745, 0x6C76A378,
+0xAAD74332, 0x4EC9F23D, 0x3B7B4CE3, 0xC57C623A, 0x76683805, 0x9E98002C, 0x757C422E, 0xBFBD2CB3,
+0xDBF1C71A, 0x306DDB37, 0xD0395249, 0x88A5A466, 0x8D256D8A, 0x192E05F0, 0x2E79E646, 0xE7FCE9DB,
+0xFE24A0C6, 0xB73CEB3B, 0xB9D73638, 0x182DC4BB, 0x5D90723C, 0x6DC608A4, 0x37EFD61D, 0xA34FF13F,
+0x8E2F6AA5, 0x72E20FBE, 0x3DED3B24, 0x17F3202E, 0xDE6FAF05, 0x1F62CF17, 0xE70EEDF1, 0x5127AF8D,
+0xCFC38BFA, 0x3F9CED78, 0x1252D1EC, 0x35E38087, 0xC1F8C137, 0xF7BEFA55, 0x2F6F4CA1, 0x55F78636,
+0xA1A8CEBB, 0x55756604, 0xAFB47899, 0x49E98916, 0x064B04BF, 0xB05FBB4E, 0xB090E573, 0x71D2DF7F,
+0xCDC5C859, 0xE06917F0, 0xA3BDD7A5, 0x408E0DB5, 0xF827C3A4, 0xDCE8765A, 0xE3503B8D, 0x7231CD7C,
+0x84A5D1AE, 0x57013680, 0xDFE4B620, 0x22CB1ED9, 0xA6D08DB3, 0xF73DE329, 0x9DC07300, 0xC05619CC,
+0x35CE8F19, 0x6BEFF184, 0x8D727E4D, 0xF049E4FD, 0x0B0065A4, 0x13D7F103, 0x33A57BB7, 0xC4B32C81,
+0x6CA81879, 0x5CA3BB0B, 0x616996A9, 0x5162FC8A, 0x78CFBD91, 0x35B5D061, 0x31A15388, 0x4979A49F,
+0x6961B983, 0x8E81C934, 0xFC91C8D6, 0xEACCA784, 0xBC6147A1, 0xD24C85AC, 0xBCE4997E, 0xC2DD865B,
+0x985BC21D, 0x9E214DB5, 0xCC7AD88C, 0xB29366BD, 0x12C0DFE6, 0xB711F2C0, 0x7F190EFD, 0x11FF5762,
+0x68171769, 0x1C317A09, 0x6ECAF23D, 0x39130782, 0xD35F2B8A, 0x66E23F0D, 0x37B19F2B, 0x80DAB769,
+0x3825D05F, 0x27479598, 0xB27009BD, 0xDDF527D1, 0x4DBA9737, 0xF9830DA6, 0x71C74142, 0x417A1B0B,
+0x04F012DF, 0x9BD2DEB7, 0x5C313EA3, 0xC3CEC933, 0x3C91B67C, 0xB195244C, 0xC20C3141, 0x4EA31975,
+0xBAEF2E5A, 0xC97272D3, 0xF63D2D33, 0x30D36620, 0x2E49DD8F, 0x785342A0, 0xDE91568E, 0x498E563F,
+0x709D4C2A, 0xDE2A7505, 0x3DC8E2E7, 0xFEE88D97, 0x572E4E5C, 0x5DB919DF, 0xE599F2CB, 0x64F82990,
+0xFA75943E, 0x8B45E86B, 0x77B86A4B, 0x737B9EB5, 0xAED21BCA, 0x47AE7139, 0x3E8D1BE2, 0x390429BB,
+0x70DF6616, 0x968EB93C, 0x581493AC, 0x2B49EF71, 0xCD86A439, 0xEC5546D8, 0x60F3A256, 0x431B36D2,
+0xA6CB5F34, 0xC8647E9D, 0x596360A5, 0x311DF2EE, 0x437A8EDC, 0x68147C13, 0x9AAB35E9, 0x1B9B5DB9,
+0x0F07812C, 0x1EBD9599, 0x2D309AFD, 0xD73C19EE, 0x26ECE3F6, 0x165920B6, 0x7AEE9A42, 0x996EC0C2,
+0xF5CA22E3, 0x790F8588, 0x4C43A978, 0xC0F7B318, 0x8F7A0D22, 0xFD29886B, 0xC4646C39, 0xD8B71318,
+0xB84D73F0, 0x2DE1AE68, 0x15D89CF8, 0x14F5C92E, 0x4AF8C647, 0x59FC2ED5, 0xE675A4B6, 0x9B6A3BC8,
+0x2DD3A622, 0xEE84A970, 0xC1ECE2A3, 0x9BD35712, 0x0BF92118, 0x9D95D05F, 0x70F22FBE, 0xF957EF0C,
+0xB9061C55, 0x683D5261, 0x4E6407A3, 0xA255592E, 0xA09B0F75, 0xB7EE6A65, 0x6B2F3276, 0xFA72F28A,
+0x4814FD8C, 0x66FD3FE0, 0xFA2018CC, 0x2EA5E8BE, 0x9EC25609, 0x291C5B0B, 0x0356E5F7, 0x17E3F404,
+0x32B59D15, 0x5E2D077E, 0x33368EF6, 0x205E7D68, 0x13A185C2, 0xD18A4A4F, 0xEEA519A8, 0x75336424,
+0xB45D6C2C, 0xF87FADF8, 0xBE7E97EF, 0x6648D675, 0xB75E4805, 0x8CD9EAFD, 0x4D4129DC, 0xDF0288BC,
+0x31505210, 0xF6A55759, 0x8E1841CD, 0xFFA76200, 0xE9EE7413, 0xAB556F7D, 0x9E546AFC, 0x53B879DE,
+0xCAAEB70C, 0x933ADD65, 0x193F9ED0, 0x6918952D, 0x6CF5738C, 0xAA355007, 0x7155BEB1, 0xA8B666AD,
+0x98619E48, 0xA2568CE1, 0xFEA05B64, 0x4D8607D4, 0xF7272A11, 0x1A591C15, 0x4A442780, 0xEEA07ADE,
+0x5AF3FA18, 0xF71A88E2, 0x0B1437F2, 0x2E785A77, 0x1C0817DE, 0x98E7815C, 0xEAD7A46D, 0x340138CE,
+0x21931342, 0xED73CE2A, 0xF762BE52, 0x79EAAB2A, 0xFC91D6F2, 0x7C810D6F, 0xBB43DDB5, 0x032CA7EC,
+0xC8B1B040, 0x349C45FE, 0xD67C1B41, 0xB424B8FF, 0xEA9DBDAA, 0x050086B1, 0xFE331D2F, 0x597AA146,
+0x04B98580, 0xEDBA7472, 0x2C42B80F, 0x945A6C23, 0xBCA5CD27, 0x6095D51B, 0x9CA34A73, 0x742F571A,
+0x37A76CB5, 0x819D8A93, 0x47D1EC23, 0x03796A44, 0x22A0208A, 0xE66592DB, 0x95E7F7B8, 0x254E1766,
+0x909F1C3E, 0x151827C0, 0x6ADB63B5, 0x3914AE4D, 0x1FDA8A3E, 0x26458722, 0x26E167F6, 0x6FE66025,
+0xFA9365F5, 0xCDBE40F1, 0x2B4FF777, 0x8E5912D1, 0xE7ABA49A, 0x36DCE397, 0xFE1A585A, 0xC7277F30,
+0x730DE97A, 0x0F306C9D, 0x0EFA5687, 0x64BD276D, 0xFC9E8146, 0x5EC220B8, 0xA222FECE, 0xC4758667,
+0xD63109E1, 0x4640CE29, 0xE6568AD9, 0xFC1FD135, 0x83B0DFF9, 0x8BB57E5F, 0xB70A47DB, 0xF1385706,
+0xA73D2B57, 0xE666AEA7, 0xF2462188, 0x93CB3685, 0xB42C64C4, 0x13AD2671, 0x827C1446, 0x140735C2,
+0xE7D2B7A4, 0xBDFCE9A5, 0xEDAE7A89, 0x8AB32A3C, 0x3320FB36, 0x627FA8BD, 0x5A9102BC, 0x73C6B88F,
+0x2624F821, 0x83773723, 0x5301BF7C, 0xA4AF42B6, 0xABCB98AF, 0xC9B1FECD, 0xC6A3F14F, 0x67F20D0E,
+0xE6A28B1D, 0x9810596F, 0x8E2B9A0D, 0xB3CF829D, 0x795CBB60, 0x7B5EE38F, 0x1E572EDE, 0xE0A8297B,
+0x433B04CA, 0x7D70FC8E, 0xB7441918, 0x3B5DFB81, 0x0023DC7D, 0x22598D97, 0xE016D12C, 0x4032E870,
+0xF4491931, 0xEBEC05C5, 0x88BB87F0, 0x13750B6D, 0xF60096C9, 0xE8CE7C25, 0xD3B3B11D, 0xFD38BDF0,
+0xA0883261, 0x04F1B29F, 0x4027E40A, 0x00E43173, 0x23E596E4, 0x41380852, 0x49A2DB0F, 0x1BB51F91,
+0xD21C63B5, 0x53911683, 0xCD51EFE6, 0x7E23617B, 0x7F5E71B3, 0x4823FBA8, 0xB7DDEFE4, 0xB4BA19A6,
+0x04C1F4B4, 0x79FBBA25, 0x645B8207, 0xFC0C22D1, 0x0C3FF0E4, 0x5BEB599D, 0x8EEF265F, 0x8500B6C7,
+0xCD2567DD, 0x70E8EA70, 0xE1844A00, 0xD771DADC, 0xECF45BA7, 0x8BB4B428, 0xA43182C7, 0xAE6E7F66,
+0x1FF3AC41, 0x43BDC300, 0x193D7DC6, 0x3AFB9EE1, 0x938A935D, 0x73C754FC, 0xD54450CF, 0x558241F9,
+0x9C72AC1B, 0x1F5A9F7A, 0x558F193C, 0x01F55BE8, 0xC63F081E, 0xE8E98E72, 0x067CEBFF, 0xA70BAC31,
+0x0889884F, 0xCA4DA415, 0x457DD785, 0xC02BFAEA, 0xC76A8EDD, 0x2F68A64F, 0x9FF3BD4B, 0x3410BB09,
+0x42CF4833, 0xCFB8BDF7, 0x42A5FD9F, 0x79202E86, 0xA4868093, 0x319A9EF5, 0xA3386778, 0x35305DB3,
+0xCAD0F323, 0x6CA4E196, 0x4213F6AC, 0x6733623A, 0x4ADAA04C, 0x156F4839, 0xB5A5CC4D, 0x97A78471,
+0xC747DA83, 0x84E7E309, 0xD48912D8, 0xC7F0CAE7, 0xFD9A9543, 0x91AA52F3, 0x55DED6D1, 0x61EBDB0D,
+0x7E3167A9, 0x3C1B0275, 0x517E66E9, 0x60C6F8C9, 0x02073079, 0x46D41B0D, 0xBE7B636B, 0x261CEC8E,
+0x4CA5E685, 0xD6BA3B9A, 0xBC2F96AB, 0x563DAFF5, 0x462E959E, 0x9A9F92C4, 0x8049C941, 0x71A521F8,
+0x6B783E8E, 0x190E33E5, 0x5EA9186F, 0x7A0469D8, 0xB830ECCA, 0x4CE828D4, 0xEB087E47, 0xB4D8730F,
+0x655C64E3, 0xCB42BB00, 0x4494F98D, 0x894BB24A, 0x549F7FD4, 0xECEA1E4F, 0x2ABC8EC8, 0x2B225085,
+0x5CEB9E65, 0xCAF983A0, 0x99D3A970, 0x534587D1, 0xCC3B7F60, 0x2A0727BB, 0x76CDF175, 0x044F8818,
+0x3886A523, 0x8DDF9E20, 0xF5B93A09, 0xAB7B1E75, 0xE4565AC5, 0xC993D13E, 0xFA787AEE, 0x6F4DF3B4,
+0x200138F5, 0x53BCCFE2, 0x8C09F780, 0xFF04F48A, 0xEDEE4250, 0xB3A6ECFA, 0x1C3131EE, 0x9EB97F1D,
+0x494E9CAA, 0xAA9DCE18, 0xE7E83CBD, 0xE8370251, 0x7C2BAEDE, 0x26E97727, 0x9B219EF5, 0xF82BCEF5,
+0x4F0CA1D2, 0x7A46AB06, 0xD8AF5285, 0xA00281D8, 0xBF56CC86, 0x22E67FD9, 0x8CAC8EEC, 0xB4FB720D,
+0xE9603573, 0x4E7BFA8D, 0x5E6DA0DB, 0x41B34A79, 0x82A4F034, 0x5F72F6ED, 0xF19C6BB2, 0x571AB961,
+0xC8234D5E, 0xA0859CD4, 0x618EBAAD, 0x7C8D7217, 0xFEF31407, 0x9AA25276, 0x651AE115, 0x679BD467,
+0x39C6027D, 0x8A18A29A, 0xBEB52FE6, 0xE36F3249, 0xDC53FFB7, 0x3E1D1B45, 0x9E1F7387, 0x97506A52,
+0xF8F661BA, 0xA6EB4481, 0x9A5C8F36, 0xD8C58918, 0x5BB9614E, 0x94FA893B, 0x71394B4B, 0x8198DA00,
+0xF73C7B24, 0x08A6ACC1, 0x6DEFDC13, 0xB333A1AB, 0x0CAFA4BA, 0x9F5B5B04, 0x1CB6FDF6, 0xF91705C6,
+0x2AFE58AC, 0x6230B2B3, 0xB1C9C92B, 0xB0D2EF43, 0x7AC8E4CB, 0x5F5F7D4F, 0x56B9A230, 0xD32231F8,
+0xACC6BA5C, 0xB599223B, 0x1F4D2A31, 0xDF6FE4C3, 0x1246E7E5, 0x5849BD36, 0x0B4DD9DE, 0xF2D36FC2,
+0x279343DA, 0xD1AAC6D8, 0xE306D4E3, 0xCC57F3BB, 0x9587B8B5, 0x61F6A33C, 0xE9B7FCBB, 0x20B893B8,
+0x302C9B42, 0x556BA4F2, 0xC29AF430, 0xDFC71EAF, 0x5A5B5440, 0x72153770, 0x0AF63DAA, 0xB5409A65,
+0x760E3326, 0xD3412571, 0xF6AF0AEC, 0x2EF37E92, 0x87796543, 0x6E066B3E, 0xF1A80FCD, 0x61E1ACA8,
+0xCA2D40BD, 0xD5A1EBDD, 0x469BD73A, 0x9233236F, 0xA7321C4F, 0x077AC2A9, 0x5327E3C0, 0xB6FD074D,
+0xD57B66A5, 0x5C9581A8, 0xE7A4DBF8, 0x8C26D721, 0xED4351D5, 0x5DE096D2, 0x086394D0, 0x99FB9F6D,
+0xD75B593A, 0xB312B61D, 0xC319EF43, 0xA105A2E7, 0xCFC7508C, 0xD7F8A4F2, 0xB7ADEB79, 0x1B2BE24B,
+0x279A8C95, 0x0291FD8D, 0x128D91C9, 0x30231099, 0xB417281C, 0x529DEE0C, 0x82E92AA9, 0xCCCD3DE1,
+0x92E36FFC, 0x59877146, 0x15D6EFC2, 0xA1C6E5B1, 0x568C49C4, 0xA29A7722, 0x2F8A7E1A, 0x91F2BF23,
+0xFB21FABC, 0x1011E9A2, 0x2A864710, 0x15905297, 0x70529EB1, 0x3F43900A, 0x04D4769C, 0xCA834F3E,
+0x31DB67BE, 0x381BC50D, 0x33AD9B47, 0xA1A0C447, 0x172734A0, 0x3A9C5E87, 0x31E051EF, 0xFC53F9BE,
+0x6E1EE227, 0x6631DB35, 0xD065B39C, 0x5E840FF6, 0xD5D22D32, 0xF2AF86F2, 0x7472EC73, 0x998C086A,
+0x93C2D00C, 0xC2DF5450, 0x73AC86D7, 0xFE58701D, 0x03C52E8E, 0x7660653E, 0xC5B99255, 0x0737F5AE,
+0x4E94E0A0, 0xE4AF3C1E, 0xA7D2EA67, 0xAC41A9C8, 0x5F1F6589, 0x1BCE73A1, 0x4D64E222, 0x3E49139B,
+0x67B45BE8, 0x21BF1C3F, 0xC475E746, 0x978AFD2D, 0x0533110A, 0x59D09B17, 0xEDF0DCE9, 0xEE333451,
+0x59899F64, 0x9FF69D84, 0x0E3FE08B, 0x04A7E859, 0xAF3666D7, 0x6F854FCA, 0x4E69068E, 0xEA427E47,
+0x07475EB9, 0x6F4996A1, 0xD1080F5B, 0x21160CD6, 0xF9F41BC7, 0x820DFE2C, 0x3545B1BA, 0xB21A9FC0,
+0xF0BAE0D3, 0x9F80597B, 0x85F850A6, 0x7A3CC84F, 0xE179A88B, 0x320C489C, 0xA5677258, 0x9C3E2389,
+0x107FAFAF, 0xB3A3B5BB, 0xD15BED11, 0x6FFEC597, 0x9B967375, 0xD94F3EE2, 0x67ACA769, 0xA031FE43,
+0x9CE5660A, 0xB159AE34, 0x1A3CA566, 0xE9066DED, 0xDB5693A7, 0x08F536C7, 0x7778082E, 0xCFBAB37C,
+0x9A271626, 0x2DE9D31E, 0xF57F9690, 0x2A44A5BF, 0xBDFE949A, 0x3988D72A, 0xB93CE6E0, 0x6A89A1F2,
+0xF83E9DE1, 0x7D113899, 0xC4E24446, 0xF681851C, 0x63F075C2, 0x025B753C, 0xB854F51B, 0x84B81BF6,
+0x1393B07A, 0x4922FC5E, 0xA3FE4F9B, 0x8E9BA90B, 0xBC73E346, 0x9791A958, 0x9DC73FF7, 0xC2D86BC7,
+0x006DC8CF, 0x9C99FAC4, 0x4E32CF60, 0x8D6B3674, 0x49475B7D, 0xDD740D00, 0x3E3AF88C, 0x08154560,
+0x923094E9, 0x48EDB683, 0x6D0F1A0B, 0x28A25A2E, 0x45510885, 0xCFDB3407, 0x05261294, 0x5D51D4E4,
+0x0F7ECEDB, 0x0307A967, 0x14E23B2E, 0x91CAC073, 0x8121028D, 0x4C4CD0F7, 0xA3EFEB55, 0x75578D45,
+0xA0356765, 0x716FBE8C, 0xE25B794D, 0xC5E78C32, 0xD7048076, 0xF1B40A7F, 0xCDAF6CEE, 0xCE074856,
+0x4D87C73E, 0x2D32CCD7, 0x1787959B, 0x177BD6E2, 0x1EBF54C5, 0x5D841B43, 0x16AA7EE4, 0x97CD8E25,
+0xF2A6842E, 0xB0844112, 0x5C5F922F, 0x7131AD8B, 0xCD7069D9, 0xA2EE43B8, 0x20925E66, 0x927525F8,
+0x82530D50, 0xE04D4EB1, 0xA5E33C82, 0xC3882999, 0x96667A94, 0x17CC81FF, 0x06986AEE, 0xE6495124,
+0x08A6F286, 0xC182341F, 0xC1626DC3, 0x266CCF37, 0x96BD8D08, 0xFD87F547, 0x83898EC7, 0x75E689C3,
+0x5BF37766, 0x3D83E73E, 0x7C9EC2A9, 0x26D2DB06, 0x5E9B502B, 0x829F8C9C, 0x63306DE7, 0xE018D672,
+0x893ACCB1, 0x731FF2FC, 0xAF1D175C, 0xEC3644E7, 0xC042E3EB, 0x88A8B12A, 0x9A47954D, 0x83BBE643,
+0x562E4A22, 0xBD41F4B5, 0x0299F8B8, 0xE3C786D4, 0x2161F5F9, 0xF740F6E2, 0x50039811, 0xDB1F4A11,
+0x5011A2A8, 0x9E43E3D4, 0x0F4D704A, 0x48D3A611, 0x8754752B, 0xC1267559, 0x3FEBEC20, 0xB85462B2,
+0xC6D240A2, 0x3477716E, 0x691CFA32, 0x4F7F8C8A, 0xED0B5201, 0xCA78011C, 0x6DD1D5BF, 0xC56FE8B4,
+0x9905578E, 0x1F6A4E43, 0xC9505322, 0x5B418CCA, 0x9797D788, 0x517AB900, 0xB2C84245, 0xC905790F,
+0x63A893B0, 0x8619AFC1, 0xDEFBADD0, 0x5D335214, 0x6EB34E21, 0x229BA606, 0xA960DC57, 0x397E1845,
+0x7AD825D5, 0x04529A10, 0xB7413ECD, 0x7E8FE4EF, 0x408D321F, 0x41D334D2, 0x3E3DE539, 0x68C77F96,
+0x589D1984, 0xDAFCF2F0, 0xC883C6E7, 0xA3F21A26, 0x77174113, 0x43A1D27B, 0xCCBF8ADB, 0xCE888AF4,
+0xA9D459B1, 0xFD351B78, 0xA7EA59BA, 0x746290CA, 0x7FF04E69, 0xD5E4C718, 0x4E793E84, 0x2288ED81,
+0x69FC6BB4, 0x5AEF958C, 0x0995692C, 0x31194621, 0xB95928F0, 0xDAF39FA4, 0x115B277D, 0x054C1B3D,
+0xCED0D71E, 0x30F27DA1, 0xE905B54E, 0x07487935, 0xD9345DBC, 0xAF4E7C97, 0xD6C78D0C, 0x73C0CBF8,
+0x2FBA8327, 0x703E05EC, 0xD9590703, 0xC05B5F22, 0xC80B2709, 0x47A1ADD7, 0x47056D3B, 0xA02C2510,
+0x7CFA448A, 0x5AA3FFBD, 0x9BC4CC74, 0xF39B8FBC, 0x8697DFFB, 0x04AF7AA3, 0xE3806D5D, 0x9232A7E8,
+0x854B72E4, 0x050519BB, 0x466C9527, 0x748AD44B, 0x0D0A2FDC, 0x6A74A97E, 0xA1B3C5EA, 0x6AB66EFA,
+0xF1302467, 0xED4CB9B6, 0x333D667A, 0x903549AC, 0x7155F28F, 0x93AB3F52, 0x639E222A, 0xF05E21BD,
+0x3283FEC2, 0xD9C8B392, 0x748CE5F3, 0xDD6F3351, 0x83F2B2DE, 0x47FE7BF7, 0xBB5426AE, 0x34BB89C1,
+0x8B68E975, 0xA1731A32, 0xBCC76D43, 0xE4185FF5, 0x89D4F0D7, 0xF4749E02, 0x58C8238B, 0x6A2EF7B1,
+0x702684BE, 0x37E11FBB, 0xBD34509A, 0x5B0ABDBA, 0x23DAA0A1, 0x1FE10A01, 0x31D2E2BF, 0x28E4DC70,
+0xCBCE4AD0, 0x5733651D, 0x7E78A53E, 0x10E4F21D, 0x47EB360C, 0x627D18AD, 0x1D900A59, 0x0FB10F2B,
+0xFD66644A, 0x8CAA8C4B, 0xA4D98B10, 0xCEC86571, 0x64863B56, 0x5D88E0E0, 0x4745922A, 0x0D5BB28B,
+0xE9DD4DF6, 0x4AE3BAEE, 0x6B529542, 0xAB928E15, 0xCC6081C9, 0x66E4F650, 0x10C16D40, 0x229D1E86,
+0x69EA8978, 0x93E0C4BE, 0xD2D3CC55, 0x47548A27, 0x7215C3C8, 0x841D59E0, 0xB1060191, 0x276A75D1,
+0x79D4913F, 0x239A08E6, 0xAAD440AC, 0x111BBAFC, 0x259FFF0B, 0x3E10F276, 0x111EAD9C, 0xE3B555BB,
+0x98CF5E31, 0x59233796, 0x2A8CB703, 0xF2F509E6, 0x05EC46C5, 0x13C7059E, 0xF19BEC8F, 0xF9158C6A,
+0x93E349FB, 0x0B14E34D, 0x3AE32475, 0x746FCA5C, 0xAC42C0A9, 0xA3D94D0D, 0x1EE8AF64, 0x9DF85329,
+0xD8DBB861, 0x79DD3A3D, 0x69211585, 0xA0A4061C, 0x5E679458, 0x2B38CF29, 0xEBAC1B74, 0x839F9A39,
+0x0DBD2627, 0x332B3C75, 0xBECB84C1, 0xEFD21DC2, 0xD0E9AED2, 0xA87EF36B, 0x5545E02D, 0x257C7734,
+0x7E6F4AF4, 0x55822C6B, 0x68658888, 0xC07C74C1, 0x5DE4BA38, 0x17A4C851, 0x14955CEB, 0x99A43AEB,
+0x88140C5A, 0xDC47AB84, 0xF0679961, 0x7310D518, 0xAD75FB5A, 0x418EB118, 0x5128BDB6, 0x83BC1AA4,
+0xBC2769C9, 0x55A44C27, 0xD8B3DEEF, 0xC7CE05C3, 0x3E1FBA4F, 0x884698D7, 0xA85DFACF, 0x385CF73F,
+0x17A23FAF, 0x10FBAFF0, 0xD302F5A2, 0xC8EB341F, 0x80C01C4A, 0xFD26EACA, 0xCA7C3444, 0x7153B159,
+0xC1D13ACC, 0xE95AAD8F, 0x9329A117, 0xF5F39779, 0xC9699E7D, 0x2542F0FE, 0x0D683BB8, 0x95813141,
+0xA58136F4, 0xDEE6BA3F, 0x1F45C91B, 0x6611DCC8, 0xF7CBBEA9, 0x9017E89A, 0x5D8C0198, 0x0CF5AC7C,
+0x045C7F6D, 0xB5434EEE, 0xDF045438, 0x4A2D5A94, 0x821BBDC1, 0x69FD8355, 0x2534CAC3, 0x3BF984FE,
+0x96CE6C3E, 0x93D7A73C, 0xB19FF5DB, 0x1AD2C251, 0xCA6EFD05, 0xA9B2213F, 0x5D9954F1, 0x24486750,
+0xF0AAE090, 0x3E96CAEF, 0x0B24FEF5, 0x35CA9D37, 0x88A5DD39, 0x00C93D23, 0xAB049482, 0xE060F5F8,
+0x567415A4, 0xD9B87E49, 0x171A9051, 0x19263657, 0x7D48E90C, 0xE2C345AC, 0x17CB9331, 0x139CE4E2,
+0x5E091B62, 0xC7D5B547, 0xCB49A10A, 0x15B41728, 0x88F12F85, 0x25EF85FD, 0x23298154, 0x597B6145,
+0x1D1E0D3F, 0x975F69AA, 0x20BD38B3, 0x00F02CC2, 0xE15152A9, 0x6FD3FB98, 0xB0A5549D, 0xD4DD074A,
+0x61C91B16, 0x02D0E146, 0x15C8A910, 0xE1308D61, 0x5EA7BD85, 0x96A8E4B9, 0x1627FE3E, 0xDAE5D530,
+0x3C39D95D, 0x0D08CE17, 0x36E9938F, 0x02B068A7, 0xE36FBE22, 0x6867A6A5, 0x0C5A1BA3, 0xA3179777,
+0xE5E63FA0, 0xEAD1A9A5, 0xE472BF3D, 0x805EF3FA, 0xF4859204, 0x7B5E0895, 0xC1BE3CA2, 0xCAD12291,
+0xDB553D20, 0x72D81A5F, 0x79E4CB85, 0xBB679C11, 0x43AECF95, 0xD87F8474, 0xCC8922B4, 0x6FDE8058,
+0xA89687C7, 0xE794D6EC, 0x269FC35D, 0xCCE5FDF8, 0xEBAABEE5, 0x211B0387, 0xF9B819E0, 0x491E5904,
+0x95688133, 0x0F77F6B1, 0xBB00470D, 0xDEE27F37, 0x09240837, 0x2863C039, 0x8EC3D4E2, 0x5B078668,
+0xE3422DA5, 0x130C5923, 0x5E0A0B0F, 0x3F6090FC, 0x70E2EA9E, 0x19EEB03C, 0xA090948C, 0x7AE6EF09,
+0x941B3ACB, 0x34487D39, 0x53602DF5, 0x69428B46, 0x775687FB, 0xB90B3411, 0x584545CD, 0x0249489F,
+0x00EF5935, 0xD4B99BE9, 0x94247471, 0x742F4F59, 0x3E7BE151, 0x19E5B3AA, 0x04A487B4, 0xF7185E86,
+0x48A40C7B, 0x89737A0B, 0xDE5924E5, 0x8CB6D8A5, 0xD8A69590, 0xED82C74F, 0x8BAAE6FD, 0x8EE809D3,
+0xF573025A, 0xC1CAF74A, 0xE9DA52CA, 0x60CA5E9E, 0x923F9B38, 0x1D462BD6, 0x138E1186, 0xCFEE3037,
+0x0590B5D6, 0xA0CF76E5, 0xCDC8804E, 0xC80F2D6E, 0x2248A8BB, 0x1CEDBC0A, 0xFB9634A4, 0x06B63D5B,
+0x8BB4E3B7, 0x8A127E24, 0xE335BBD9, 0x499CE86B, 0x2E63603F, 0x454AB93D, 0xCF647ECA, 0x26D000E5,
+0x814632F7, 0xCDC5A206, 0x0C67D133, 0x6C556502, 0x68DDF823, 0x71C178DB, 0x49AE555B, 0x1E5CA4FA,
+0x4EF57D9E, 0x0D0B46A5, 0x11F45C8F, 0x90A5583B, 0x3D4178E6, 0xB34FC0E7, 0xA1166173, 0x5FE4D2DA,
+0xF2203CF3, 0xBADC8704, 0xAC36CABF, 0xADB338A6, 0x6707B6FB, 0x04E27FE7, 0xDB35F63C, 0x41EC40D3,
+0x35EF9B6F, 0x27E49162, 0xAD2B7731, 0x5F5BFBD1, 0xF0323017, 0x9E7BC89A, 0xDCF8EC44, 0x0D1CCF9D,
+0x3DCD5B4C, 0x3EA9E6EB, 0xD14FD73F, 0x7AC757AA, 0x1DAEFEBC, 0x7B8824C9, 0x32F7642D, 0x441C7028,
+0xD80EA3FA, 0x993F7DDF, 0x67C98608, 0x5FEAAA06, 0xDEED07AE, 0x2FE7BABA, 0x0054EB0C, 0x4C9C9C59,
+0xFE7A0591, 0xE16E4899, 0x0E96F98C, 0xBFFD7905, 0x4B7EEB6F, 0xACAB7AF1, 0xED94E50D, 0x1D54509C,
+0x1F674DD8, 0x5F15E126, 0x0A325F80, 0x3E69D533, 0x011257BA, 0x293C0372, 0x9EFD9AF2, 0x6AECB865,
+0xA80F8E3F, 0x010B88FB, 0xAFEFDFEC, 0xF2ED6028, 0xB272D292, 0x37872932, 0x8A1EC20D, 0x354401AC,
+0x0C041EA4, 0x8F6AE1C2, 0x129A78CB, 0x2D45420D, 0xDAFDEE06, 0xD823B429, 0xF9731383, 0xF8D59385,
+0x562B3969, 0x85A6EF40, 0xC3F52DC0, 0x18985989, 0x2C1591E0, 0x2DAE78F7, 0xA487D549, 0xC895669F,
+0x753230D1, 0x3C9EDFAA, 0x86689D41, 0xC1B29858, 0xE19352A7, 0x1912FACF, 0xB25F6A64, 0x2C91C5E0,
+0x1D403578, 0xC8C852EE, 0x71D44CC6, 0x39CE6C55, 0xF5C47544, 0x41C024C6, 0x241A2D46, 0xE28BE889,
+0xB63CF7DC, 0xC62E31E0, 0x10FBD915, 0x82FD51A4, 0x8E48B861, 0xDC1C19AB, 0x213131B5, 0x10E30B36,
+0xFB105584, 0xFA9BCAE0, 0x70B357DB, 0x3B83F577, 0xA70A44B0, 0xC011AA80, 0x24CD07A5, 0xC6323958,
+0x1EF050A8, 0xBB2AE6BC, 0x3702C0FB, 0xF6582433, 0xBBC27452, 0xD141B0C2, 0xAB552A21, 0x4CD4F6AE,
+0xB59D3839, 0x0BFE38C8, 0x75AE44B9, 0x6AA6E59C, 0xFF4A8412, 0xB0826A92, 0xEAB0795E, 0xF26F7055,
+0xA255FA73, 0xDB844ECD, 0x29BB7F22, 0x7E935EC4, 0xC8B9D0EA, 0x66DCDF9C, 0x44BBF3D0, 0x7A1939AD,
+0x2A1FD957, 0x66CB9359, 0x6B61C7BA, 0xEEFCF3B1, 0xC8ECBB17, 0x4CA033E2, 0x51B63A32, 0x88BB1033,
+0x76FC08D9, 0xDB69BA1A, 0xDAE83A7A, 0x5F82F964, 0xBF04AC4C, 0x152764AE, 0xB53201A7, 0xF16ECF46,
+0xE7F939A0, 0x47E6426E, 0xE876FEDD, 0xCA64FDCB, 0x8765EFA7, 0x729B2D40, 0x01A01B34, 0x8E4499B5,
+0xC88A3EF3, 0xC65A8AEB, 0xE8E88969, 0xB402F3C5, 0x3B9C0AE8, 0x45CEAFBC, 0x4514B544, 0x5FA3A78C,
+0x01048AA9, 0x4FB4DA8E, 0xCF931DD7, 0x5500BD51, 0x2899118B, 0x5EC88DDB, 0x2E82D1D6, 0x9F7E3616,
+0x894F3C3C, 0xA645432A, 0x10524BCC, 0x44428F4E, 0x135CE8AF, 0xB4CAFB34, 0xFA36DF76, 0x7E9F8B0D,
+0x43E44E05, 0xD4154CE2, 0xF928A5DE, 0x950FB59B, 0xA62DE487, 0x7C0D5C3E, 0x00D414E4, 0x1061282C,
+0x2C78A81B, 0x8FF2F77C, 0x961FE3B8, 0x37A4E1AC, 0x1A4D425C, 0x9A401B76, 0xA9334873, 0x7D0EB328,
+0xBC0DD9E5, 0x5D0C1D9F, 0x86DF4418, 0xF2DDE687, 0x9B485811, 0x89DCF1C3, 0xD2AD9097, 0x56996E31,
+0xE095CAC5, 0xCE830548, 0x0A53E857, 0x2A302BA6, 0xAF290B69, 0x19F7C7D9, 0xEB50ECCF, 0x044F8232,
+0x85BC41DE, 0x6E230145, 0x54172E75, 0xCE84C8DE, 0xFB7E1A5C, 0x0CE7F9E9, 0xF2E2D53C, 0xDA3F7564,
+0xACA72FC8, 0x58AFC64A, 0x38EE67C9, 0xE692ED59, 0xFFBB2C0B, 0xEBA3480E, 0x741006EF, 0x11017AA3,
+0x46B9100B, 0xE6F6A5BC, 0x6645DA2E, 0x031333D8, 0x61FBBCBA, 0xABA620D9, 0x035A7E97, 0xDA0EA62E,
+0x82ABF1A5, 0x1978663C, 0xAD692373, 0x836F9313, 0x2AF3CF42, 0x5C1529C0, 0x7F1BC452, 0x4F695A09,
+0x08F47933, 0xD5AC9A15, 0xBA2FF443, 0x095929DF, 0xDCFE2C8A, 0xF278EFF7, 0xEFC02BEA, 0x3F4F5334,
+0x3A09C318, 0x5EC4290B, 0x5E985869, 0x0955310C, 0x2851C9C3, 0x8D30A976, 0xD5096321, 0x0245BD89,
+0x534DECAF, 0x9C228C46, 0xEB6008D1, 0x6B1C291B, 0xAA861186, 0xDA101355, 0xE41FF0F6, 0x0D5FC0AC,
+0xE2763A0C, 0x2E07D166, 0xA8281837, 0xA9C4B514, 0x7D12A45E, 0x68B8BE4A, 0x4281AC06, 0x122D517F,
+0xC8AFDE69, 0x117F7A9A, 0xB53AC279, 0x174FFC91, 0xF6605790, 0x5DF93460, 0x5B1ACC82, 0xA5742490,
+0x1D18A655, 0x513A8579, 0x57AF0B0D, 0x5600310B, 0x998B036A, 0xA50E7CC0, 0x1FEE9AB4, 0x700FCF89,
+0xC8C9C582, 0xE0878A1E, 0x5CBD10F0, 0xCCB9831A, 0x8DF913CA, 0x6942647B, 0xBD195F1E, 0x5F2885D8,
+0xDD109C38, 0xF0E56DDE, 0x79FCFC00, 0x1E309A9C, 0xF814DBD4, 0xCA739BAF, 0xB79B9B05, 0xF61C096A,
+0x17F24B18, 0xA1499C26, 0xD9781DC9, 0x395F0DFD, 0x0C243886, 0xD6B741A9, 0x71E1394B, 0xACFCD89A,
+0xBFF3E6FB, 0x18F68B20, 0x766410DE, 0xCD521A95, 0x904A7476, 0x9488B196, 0x685ED84C, 0x862C775B,
+0x1B87AF76, 0xFD0B3571, 0x853D3CFD, 0x34D6833B, 0xF9356C36, 0x5FFF7723, 0x4E8016EB, 0x2AAD70DA,
+0x2B21DAE9, 0x973CBC84, 0x3AE3CDA8, 0x31F5B26C, 0xE1CD0599, 0x3CE18D7B, 0x6EB6163B, 0x5537D1FF,
+0x0C245ACB, 0xC880CCC9, 0x6E563E2C, 0x9538B272, 0x3437D833, 0x3006E873, 0xEBEE828C, 0x17845DEF,
+0x523D5B89, 0x8CD73BAE, 0x61467CE7, 0x9E397E4C, 0x0FCE02F9, 0xD5C857AB, 0xC48599BC, 0xE97BD64A,
+0x4D199EE8, 0x26E29DBD, 0xC11F6B62, 0xA330785F, 0xD07A6334, 0x724D2A98, 0xC15FDC86, 0x31BD2408,
+0xED01A43A, 0xBD6347E0, 0xA4D6B448, 0x628E5182, 0x7DC87893, 0x7A842E7D, 0x97B7CB13, 0x3083E5E3,
+0xB7E9E372, 0x4910570D, 0x2CDF89E7, 0x72260947, 0x1D0154E1, 0x4EA8B6B2, 0x815D0A56, 0x5A221C5C,
+0x69E191DB, 0x8CD76EA1, 0x02487EA4, 0xA55A4BC2, 0x2EC9F1D3, 0x1E36AA11, 0xB3026AE8, 0x98295736,
+0x0D95214C, 0x73F70BB0, 0xA6AA496F, 0xD23C6A91, 0xB3CEC7C5, 0x73C1A95F, 0xA477E6BA, 0xB616A4D7,
+0x83964707, 0xB019EE36, 0x99F2D581, 0xA0CFDE8B, 0x137CAEA9, 0xCC3EFE92, 0xE981D800, 0x3281117A,
+0xE3E6F3C0, 0x11B5E835, 0xD71DC20A, 0x4933E151, 0x910A9BEB, 0xB08A226D, 0x0C6D868C, 0x931BC662,
+0xDA18BBD7, 0x217520EC, 0xA60C6783, 0x26323307, 0x5AC41D45, 0xF4AC2363, 0x06E2E9F8, 0xD89CB954,
+0x30A8D996, 0xA5EE71B0, 0xCBA57F6F, 0x46F78F9B, 0x0ECAC3A4, 0x5F85AB25, 0xF7CF0E45, 0xE4568188,
+0xA587E22F, 0xD773CC18, 0x4A86093B, 0xF09D8FF7, 0xBA3E8111, 0x62377922, 0x19F37002, 0xDDA8C290,
+0x16D58F19, 0xE1C44548, 0x5898DC30, 0x053CE11D, 0x75E06372, 0x3C4BE82B, 0xEF7B4A63, 0x82738620,
+0x9E3F3EA3, 0x94CCF09E, 0x3A6F05C2, 0x747D1994, 0x265DDDCC, 0x03D1B1F9, 0xC1576B01, 0xCC96CCF8,
+0x65519F5E, 0xCFD2502D, 0xA89F8DA8, 0x53C4CDE6, 0x532130A8, 0xDA06A07B, 0xBC82C4A6, 0xAF2AB639,
+0xD1897514, 0xF8137F6F, 0xED5E0D4B, 0xC357DD0F, 0x808AA750, 0xA1B86BAE, 0x23381E04, 0x5EFCD1D2,
+0xBFCF33E7, 0x8DA44647, 0x5651016F, 0xD28A0D60, 0xA90E42B8, 0x4DCC5CEA, 0x98A02CE8, 0x68898C10,
+0xCAB17E5C, 0xBE666135, 0x124B1792, 0x9920D148, 0x6BC53877, 0xCA794669, 0xF6EE654D, 0x1877B8E9,
+0xDF07387D, 0x6AB56065, 0x81C6E78C, 0xA839BC35, 0xA7085323, 0xA757B551, 0x60FDEF39, 0xE4842267,
+0x02A49D4A, 0x821D99A3, 0xDC45FDC8, 0xA9BDE163, 0xE3487850, 0x29B5B834, 0x07A36831, 0xAC9EAB52,
+0xCF2FE5AA, 0x5472DFC7, 0x9A3FC130, 0x3E1A22BF, 0xE1A5873A, 0x35E1318D, 0xBD41CA97, 0x720D3D3F,
+0xD1182587, 0xBC8423A0, 0xAA661EA7, 0xA2B88012, 0x5595F087, 0x8971282A, 0x417B442B, 0x6F4EC46C,
+0x19C6CAC8, 0xF59C43FC, 0xF1F73AE3, 0x96236722, 0x3EE66099, 0x564F3FFD, 0x4E870161, 0x2AC8E536,
+0xC27AA60F, 0x3A2FF128, 0xEDC3CD17, 0xAF5C7A60, 0xD40127C9, 0x8480370E, 0x8B214948, 0xF5315DF4,
+0x89944298, 0x934AA41A, 0x23FE0276, 0x414D9252, 0x8F78F46E, 0x2569918B, 0xF656C00D, 0xA01E4E13,
+0xAD24E6E8, 0xFB86447C, 0xC4999F56, 0x387B0710, 0x57358A95, 0x290A9174, 0x042440D8, 0x21B5D1CC,
+0xA6BDEC2C, 0x3083BEB6, 0x655B825F, 0xE54D836B, 0x8BE1A40F, 0xBA269216, 0x67304804, 0x601F4F76,
+0xF576C237, 0xAA79599E, 0x838D9142, 0xEDA99E85, 0xC43E1F80, 0x108914D0, 0xCEEAD6C4, 0x1F3A658C,
+0xA7D7FE5E, 0x6AD837B5, 0x2E9E8286, 0xBF66814B, 0x09D0AF85, 0xAB7823EF, 0xDE5B38C7, 0x6810A608,
+0x1161B488, 0xB5053E5A, 0x782EFDE0, 0x3453A68B, 0x963D64DC, 0x6203A078, 0xEEFCA4C7, 0x631B9F0C,
+0x921FDD91, 0x81019397, 0x42B0CB73, 0xE4AE7EC1, 0xBEAF1FDF, 0xC12657FB, 0x27A5D62D, 0xC1F57367,
+0x1023A06E, 0x27174E26, 0xED186314, 0x5EAB3D00, 0xB59BEBB2, 0x1EDB7014, 0x094B2515, 0x38F9ADD3,
+0x7109D1A4, 0x41C858F9, 0x516E2CB6, 0x60ECDF1F, 0xDB5B9150, 0x5585AC80, 0xD3896615, 0xF86B1821,
+0xD5579DCE, 0x862388DF, 0xABAA5BFD, 0x0AC810AB, 0xD7BB2BD2, 0x5EBCEC52, 0xB0736E68, 0x5B063E76,
+0x1782AE94, 0xCCDECF2F, 0x29DD639D, 0x3FCDCD30, 0x84C8A4EE, 0x1B0BB9F4, 0x4F0AC271, 0xB1C6BDDA,
+0xF1607CDC, 0x4DBABDD4, 0x80D6BBE6, 0xF41E9366, 0xA135C385, 0x1958481C, 0x45968092, 0xD4891D1B,
+0xE766F732, 0x63449C34, 0x6C629169, 0x7986545D, 0x193F0D78, 0x8F8B42C4, 0x218A1A87, 0x99BB7E36,
+0xE1D527D5, 0x1457E103, 0xE2D24F9B, 0xC3C07A5C, 0x95C496E7, 0xD7A6BA66, 0x6303343B, 0x5F160517,
+0x2CF1E43E, 0x4840107C, 0xA0BA7439, 0x6DDF3C50, 0xFAFF3355, 0x1CAF86F0, 0x74C006B6, 0xDD916C2C,
+0x2162FA2E, 0x6515DD70, 0x0FA16C32, 0x322878E5, 0xA738F272, 0xF7F5BC34, 0x829B6C52, 0x4CEB4822,
+0xB4D6700A, 0x22B0C2A3, 0x56D1D0B6, 0x0B37BE4F, 0xDEB7ED1C, 0x3E609011, 0x7906D9AC, 0x24D34C0C,
+0x4E7BF365, 0x33ECF689, 0xFE4CFD84, 0x153EBFEA, 0xEE511CF7, 0xE0E9326F, 0x6C458B28, 0xDC7F00D6,
+0xC25BD14B, 0x2143DD06, 0xAC86993C, 0x04735D21, 0x574CC875, 0x4D5B942B, 0x03AA6ED6, 0xFBCE71C2,
+0x5AEF0AA9, 0x7DDBB4F5, 0xC879F2F3, 0x887560EC, 0x1E55A155, 0x9A4F5E5C, 0x356EBCE6, 0x60562F8F,
+0xF41B4C27, 0x3268EBF5, 0x31D8CBB5, 0x26C024F5, 0x25784BBD, 0x7AEDBCDD, 0x6F7970FD, 0x99A63285,
+0x9718C4D7, 0x83239AEA, 0xED020D8D, 0x8801CE87, 0xDD84450C, 0xC4E5ED28, 0xCB0A0158, 0x7922981F,
+0xFBE2913D, 0x2877D654, 0x17EEA162, 0xBC3CC88F, 0x18306EBE, 0xA67C48A7, 0x1DEAB146, 0x1BFE6AD8,
+0x25813161, 0x91AD701A, 0x15240820, 0x3F3B0FD3, 0xD2DCD8AE, 0x301BB1C2, 0xBB1135BB, 0xF609F89B,
+0x2EB7A9C5, 0xABA6DF46, 0x2998A822, 0x5D1CA697, 0xC34EBBD9, 0x94533AC7, 0x2B246F3B, 0x4E9404A7,
+0x56256EB4, 0x75B4C02F, 0x91AAF988, 0xD1E291CF, 0xAA56D6C6, 0x90E869A3, 0x1F1AC03A, 0x619A60F0,
+0x062DC365, 0x83971A75, 0xAAB72DC2, 0x901E6C97, 0x4448516C, 0x23A6BD50, 0x70949BE6, 0x2ACF2586,
+0x0B775F96, 0x21D7C5CC, 0x73364F15, 0x43D25EE7, 0x90E847D3, 0x52F7CF77, 0xC7929A97, 0xAFDC9E74,
+0xA1F0FE1F, 0x51798994, 0x4BF3977B, 0x993BA0BF, 0x98E1CB5F, 0x336362C1, 0xA109F1A8, 0xEABD45FA,
+0x1BD32EEE, 0x05D06FDA, 0x163B9FD7, 0x109626DC, 0x8BDBEE6C, 0xC8AE2549, 0xD55E728E, 0x81F10C50,
+0x131D24DE, 0x05B0C8DE, 0x4230E740, 0xF01F70D4, 0x9264DF25, 0xC30E719F, 0xAD24A900, 0x4096F674,
+0xD04958DF, 0xE9D5ECEF, 0x848E9A56, 0x69A03749, 0x075EC432, 0x947DFFF7, 0x54ED7ABF, 0x9DFBFDB7,
+0x736D8B8D, 0x412DC4E8, 0xD77F815A, 0x627F8046, 0x82AB4F7E, 0xD6702589, 0x51822286, 0x50E5FE91,
+0x44F27292, 0xD0E21C3A, 0xBCC64A75, 0x04888208, 0x6F820A18, 0x009C21E4, 0x2BE0DDE8, 0xC9056874,
+0xA9181962, 0xF51FBF8A, 0x84501216, 0x3474B79F, 0x03DE44DE, 0x66F26BF4, 0xD56E6210, 0xB29980C4,
+0x79DD29AA, 0xF714E554, 0x2CA00BA2, 0xB8D6FB3D, 0x7A1F6160, 0x59283C98, 0xC7A17C1F, 0xD9A42E65,
+0x94C56D5D, 0xE470CDED, 0xE749638A, 0x91E77953, 0x489EAF1F, 0xF276AE33, 0x8853963E, 0xAD7D9714,
+0xA1AA4E8A, 0x3AFAEAD4, 0xD1D828B1, 0x271B6270, 0xD1FD2822, 0xD04CD1E3, 0x7B959D1F, 0xB525C4CF,
+0x6875BCFF, 0x7A6B9DFB, 0x0AA9673E, 0xC3975B92, 0x13A53856, 0xE7749240, 0x34B76603, 0x55AC66F6,
+0x91925F92, 0xEDF20E6C, 0xEC400A82, 0x862B4C20, 0xB14BF98A, 0xC6A238CD, 0x595488D0, 0xB1AE413F,
+0xE1E1208A, 0x4BF37430, 0x61770680, 0xF440A4B0, 0x85357717, 0x3FF22E41, 0x22112ABF, 0x074462C4,
+0x3E2EBCF3, 0xDBF854FC, 0x21ED59A5, 0x61014AD9, 0x5AD07B5D, 0x9E9103C2, 0x3FFC0FAA, 0x65C64D82,
+0x04DE2D8D, 0x9219D8F8, 0xC25E558A, 0x9F2BDD57, 0x99EC033A, 0x5F32FC01, 0x09D8EF24, 0x8EAF9458,
+0xC8EB59C7, 0x594A25F8, 0xBFA83A0F, 0xBC2E5D74, 0xA0D49C31, 0x098D74A8, 0x3F6AB1FC, 0x13AA4950,
+0xBEBAB5C6, 0xD4028F26, 0x4B404B2D, 0xBCEB7284, 0x94213B28, 0xEB2EA724, 0x230B9649, 0xD25D453C,
+0x278E2DBC, 0xB698A0FB, 0xD5D4C6C9, 0xB83B718E, 0x8244A8FD, 0xD6FB05AE, 0xACE61C0D, 0x4C85D2B4,
+0x37B11347, 0xBDA93B23, 0x73210899, 0x049025D8, 0xB07652A5, 0xD4BB03B9, 0x125E8D3F, 0x86E4BE2C,
+0x430A2D09, 0xB7A6B746, 0x942C88B4, 0xC84E2283, 0x5E88AD99, 0x19CC7E58, 0x82A72734, 0x0444D31C,
+0xABE1D1C0, 0xAE874874, 0xC21CF708, 0x9088E53C, 0xF9F3BA7C, 0x5984ABAE, 0xED1C50A8, 0x83D167B8,
+0x17FBF4CB, 0xFD8B8E5B, 0xA601A450, 0x09210028, 0xDBB09AC0, 0x3CFB0DDA, 0x9DBC9700, 0x9B2EF0C8,
+0x2D16FB1D, 0xD9F2373B, 0x3656C2F7, 0x9512784B, 0x224887A9, 0xA222E9E5, 0x6A713969, 0xDCA4F593,
+0xB525E299, 0xD9A3C25E, 0x3F315486, 0x514EE52D, 0x995E2C44, 0xDDF7D879, 0xBBA05866, 0x09373432,
+0xA352296B, 0x4073B7D5, 0x2DA3380A, 0x92B1D2F1, 0x401B533C, 0x8DA476AB, 0x02EBB72E, 0x83F2D49B,
+0xA979F7F1, 0x634D9F1A, 0x8779DB3B, 0xA8C2728F, 0xAFC7FAEA, 0xD916072F, 0xC50A0516, 0xBD762B1B,
+0xA1D832A8, 0x513D88E9, 0x54E5122A, 0x5CFE1BD7, 0x6A5F678F, 0xAD409889, 0xCB6409FF, 0x4E47478D,
+0x6F1F5D97, 0x6F9181F6, 0x167FD760, 0x69F3D961, 0x5CC62F0C, 0xE6EBDA48, 0xA73EDD6F, 0xD771EAE9,
+0x98993616, 0x54531D15, 0xE6BAFE23, 0xCE0C4FE0, 0x7665EDD3, 0xCA0E2864, 0x0E00C7AA, 0xFB9589CA,
+0x3E45BC73, 0x9DD3D3B2, 0xF4858555, 0x6864D444, 0x26B320E5, 0xFAA0D75B, 0x6AF18A0B, 0x6F753473,
+0xD81FE314, 0x2C251AE0, 0x8A48160C, 0x0669D485, 0x533706F4, 0x46A9B0D2, 0x07E960A3, 0x18B91BDF,
+0xAA7C3784, 0x6067875B, 0xC2F7AD4F, 0x77281412, 0xAE6E1984, 0x2F46F53E, 0x74833DBE, 0xD7C4F57F,
+0xAC0224F3, 0x402CB673, 0xF2F33187, 0x43C63CD5, 0x63370C5A, 0x28EAA0B3, 0x15DC0827, 0xF8C13195,
+0xCA7A2301, 0xDA580E64, 0xBC992A21, 0x71FFF777, 0xC55C854E, 0x8D67C095, 0x0C79DCCC, 0x01F820AC,
+0x730966FA, 0x7CB7E3A1, 0x05716CA1, 0x05EA7146, 0x4B21BB4C, 0x57A3A46C, 0xA380C973, 0x0DFFF6E9,
+0x18EE3F11, 0xD8ABDCDF, 0x46E2E144, 0x8F88A329, 0x27C4D6F0, 0xDD4DB1AD, 0x560C9C46, 0xBF1EA842,
+0x68CD1864, 0x29AEE044, 0xCFFE9445, 0x3184F012, 0xB63EF1EF, 0x783E1258, 0xB6E3CE5E, 0x036759B8,
+0x28843EB9, 0x5B169A32, 0xB5FAAC49, 0x72161C31, 0x28EF56DB, 0x913BEC87, 0xDC38B2AA, 0x251D2C95,
+0x9AB65980, 0x5C567F15, 0x7B64B3B0, 0xFDE314E3, 0x3367A8E2, 0xE8087853, 0x05EEF21A, 0xA052A1C3,
+0x654C635A, 0x1868E5E2, 0x997FFC2D, 0xB09B7E98, 0xB3062859, 0xBC1E9BDD, 0xC2A1F4AF, 0x811BBDC2,
+0x174B86DB, 0x9979B634, 0x0F80A1EF, 0xA32CA185, 0x3E7149BE, 0x6AC8A06F, 0x3FB5DDAF, 0x3B7837F2,
+0xD1737C8B, 0xF8A72FA2, 0x2C2635FF, 0x0D5BD18E, 0x4780FD30, 0x8D29F1DE, 0x917DF894, 0xE52C9199,
+0xBFDB3EEC, 0x50E8FFB4, 0xFEF9A1BE, 0x82EFAFD1, 0xEA6694C9, 0x933E880D, 0x46CB6648, 0x6644D5A3,
+0xC8900988, 0xAACC23AB, 0xC8A93A92, 0x18FCB781, 0xD1F0018B, 0xF7E864E6, 0x7F5A7EB3, 0x79214E31,
+0x9682B826, 0xABFA04D4, 0x1DF77F92, 0x907FED6B, 0xD6840AA9, 0x67BAE9BA, 0x4D779B6C, 0xA3CA179C,
+0x9C5B2D8E, 0x1A2CAF1A, 0x0CB80652, 0x981100F0, 0x5C05DAEC, 0xC9E0ABD1, 0x640E910A, 0x3963AB5C,
+0xF10B1CC1, 0xA4959874, 0x48373922, 0x6435B742, 0xF3D4862D, 0xABF551F0, 0x03690B59, 0xE54BEBC5,
+0x9FC92B57, 0x8748BE97, 0x3F29F60D, 0xB0005606, 0x807B1CE8, 0x5307F987, 0x62D2DF3C, 0xC358BE3F,
+0xEB5C5520, 0x3F436B62, 0x71A6E46D, 0x0F335ABF, 0x444AFCA8, 0x89E2AADA, 0x87633F7B, 0xEC095AB1,
+0x25637515, 0xA75EE080, 0xD1011787, 0x07559196, 0x23705BD0, 0xFAF47373, 0x306EA9FB, 0x378D28C7,
+0x4B94695E, 0x44B153B2, 0xF5BD9D87, 0x00530E86, 0x2A1EB708, 0xA8D6B4E1, 0x5DDCA1B6, 0x62390240,
+0x455F2DFC, 0xE4A0E4DA, 0xBDAB0312, 0xB60DE28D, 0x101CEFC2, 0xBCA1132C, 0x0EC8B7CE, 0x90C50439,
+0x9031D7AA, 0x3124E69A, 0x726D201E, 0xA2E941F4, 0x0EC45CD1, 0x14EC8C41, 0xAFF54C66, 0x8D78C343,
+0xA31FB828, 0x4D3E55C0, 0x58C3E3E1, 0xB77CB4C3, 0x0CCA5EB6, 0xE8E9A34E, 0x7FCB63D9, 0x3147C71A,
+0x8DB3205C, 0xDBCACBBF, 0x16530793, 0xA6239263, 0xD7EC7506, 0x8BB600A8, 0xE9C6E150, 0x0B2D5E1F,
+0xBBF82859, 0x7DEF70FF, 0x09D7FAAA, 0x953F2DD7, 0xF0FC710E, 0x630C6807, 0xDC24EDC1, 0x606AE8B7,
+0x073544A7, 0xD9E6FECD, 0x139DA3D8, 0x4182A763, 0x88EDA595, 0x666EBEC4, 0x1E36D7F2, 0x4A5BADDC,
+0x31FCB68B, 0x2015E9B8, 0x7ADF8DF7, 0xE8ABB96F, 0xCCC1F920, 0xE3636221, 0x09987F74, 0x52A542D7,
+0x388732CE, 0x3D554B67, 0x7414DF5B, 0xDC5D7BF8, 0xB7EDB499, 0xEAAD6511, 0x1AF6F596, 0x9EA079E3,
+0x6220072E, 0x9E5BCB2D, 0xBE976247, 0x2304F0B1, 0x9476CDBA, 0xDC708109, 0x97DCDD7C, 0x83FCDE68,
+0x00E24B6B, 0x539B70BC, 0xFD9F786A, 0xADF4931A, 0x5B1705E6, 0xEB4FEAB2, 0x5BB9576F, 0x9E1F5591,
+0x41F4961F, 0xAA2ED7EC, 0x84A7282E, 0x37FD9AF2, 0xFCEDBDC3, 0x1ED640FE, 0x82B16A9A, 0x3D3B6835,
+0x43A3A708, 0x84E423AA, 0x14FC7706, 0xA6DCF024, 0xA852AAB5, 0x65E059CD, 0x2051A5B0, 0x4F9C0914,
+0xB272345D, 0x39FE0BBF, 0x6C85C71C, 0x6C73CC08, 0xD371EB98, 0x22F050E0, 0x01205ACB, 0x02C2B8FB,
+0x4AC82D13, 0x23E076CE, 0x628E6EEA, 0x00C6FF81, 0xF77E9951, 0x5C874674, 0xF130FC4A, 0x84C65D86,
+0x8A3C2896, 0x78236D9F, 0xB104B35A, 0x248FE9B7, 0x7ED9B82F, 0xD95F06D7, 0xC1D5D383, 0x1C8E422D,
+0xD5E73F2E, 0x5003F0D4, 0xB5317382, 0xD8261070, 0x704F4999, 0x3509A734, 0x70A48705, 0x3861CA10,
+0x934D4F1A, 0x2ABE75FC, 0xC3EB62CF, 0xBC0DBE0A, 0xAD50449F, 0x4B73E0E2, 0x296AF528, 0xA40C5251,
+0xBFD6439F, 0x0329B191, 0xC20B364D, 0x2A05B5B1, 0x9191BD32, 0x94B3B25E, 0x8E00BF0B, 0x1526856C,
+0x090033E3, 0x07B6AD6D, 0x0087EFB2, 0x3E9F1C1C, 0x2C0FA3B3, 0xF945E13B, 0x6A120B24, 0x15CD3AB0,
+0x3A71A968, 0x6E3816C5, 0x96A73EC7, 0x927DA68D, 0xDD5527ED, 0x0F262BE4, 0x44C6EBA6, 0x75060DB7,
+0x959F8F6F, 0x03D576A7, 0x7E5245B6, 0x2ED4CC6C, 0xCC6FBDD7, 0xCB5C841D, 0x0A05E417, 0xDC6E714A,
+0xC1E4ED32, 0xE36753DB, 0x8FA41499, 0xBFD5AFD0, 0x6D570030, 0xFF4FCC92, 0x3E4E9100, 0x2FFEE55A,
+0xE715EDA7, 0xB3968AEE, 0x32333CC9, 0x041C7725, 0x54D53497, 0xD14BEB71, 0x13DB6AC9, 0xE1517AE7,
+0x74337094, 0xEFAB3BEC, 0x0ACA155D, 0x4F11631D, 0xC60ECE8F, 0xE797CD53, 0x8244C0E4, 0x74545E18,
+0x7B81FC67, 0x06590B01, 0x4066C7BA, 0x5FFC36B6, 0xB2117E30, 0x2EC8BC45, 0x613866E0, 0x0BCD4E3C,
+0x7EF32966, 0x78154302, 0x78F55AAE, 0xCC58F20B, 0xFB5422C9, 0xDE8C2F19, 0x80FEED38, 0xC5DCCEAE,
+0x4B1ED055, 0xA2572821, 0x759CFD0C, 0x7F997C01, 0xCA262D01, 0x59B0EFF1, 0x80503178, 0x223B023B,
+0xFF102F39, 0xAE87349B, 0x71EFF1D1, 0xB3A6621B, 0xD0072E7A, 0xCA0BD8AD, 0x03859968, 0x681CD574,
+0xD7B989D0, 0xF27815A5, 0x79CD664C, 0xCDD20E74, 0x1DB706FA, 0xE303D88C, 0xA1549CE0, 0xC3AE20C6,
+0x73BA3AEA, 0x2CD4F246, 0x22AA6341, 0xE902B307, 0x819BA7D3, 0x39D1B0DD, 0xC8FDBCD9, 0x6BF46CC6,
+0x26548ACE, 0x73B4AEAD, 0x550B71EC, 0xCBBA3330, 0xD597E961, 0xFCC7A453, 0x34FA66FB, 0xFA45CCBE,
+0x7F4E2435, 0xAFE613F1, 0x04A250EF, 0xC12D30EE, 0x4630450D, 0xD8B0BC01, 0x22D8C004, 0xDFEBAE77,
+0xC947016A, 0xA702A96F, 0x1727D2A7, 0x0E8503BA, 0xFFE82E4E, 0x6265B45F, 0x3C84B972, 0xB00563E4,
+0x3E2DD33C, 0xE022F7EB, 0xE85E2A9B, 0xA3531EFD, 0xA6F451F1, 0x5598706F, 0x741B96A8, 0x8EC9CD4E,
+0xE807428D, 0xCEEAF262, 0xE9146491, 0x8DE1F40B, 0x35EC308A, 0x488B8AB4, 0x369CC00A, 0xED217AB9,
+0x4F09F415, 0xEA74654E, 0x1B0EEB0C, 0x1CEBB3E7, 0xDDD9EAB7, 0x983AED61, 0xDDD6860E, 0x49AEB559,
+0x02AB54F7, 0x3F297BC3, 0xF91F4F28, 0xE3654014, 0x1F559DDD, 0xA22429EE, 0x8ACB7891, 0x5ABCA0A1,
+0x35B3A54A, 0x9A665772, 0x47763281, 0xD60F6F46, 0x5C09F267, 0x1D395872, 0x14FF5624, 0xE5ADDB46,
+0x3B360E2A, 0xB6226FDF, 0xC101B86C, 0x54A4532A, 0x93ABBDFD, 0xB852BD12, 0x129A5002, 0x9C6CB6FA,
+0xC31B037D, 0xFB5F9670, 0x3802C79A, 0x1BBE0E2A, 0xE5B7F874, 0x6E57B6BF, 0xE0C72982, 0xA9443D5D,
+0xB1DA196C, 0x3B146F55, 0xF54A5855, 0x3A4E8D6C, 0xE9B32205, 0xBC9DA1D1, 0x53093EDD, 0xA158718D,
+0x91E34FE6, 0xC435CDB5, 0xD3363D05, 0x8BC5EDEA, 0x628747DF, 0xD09CD76C, 0xE9F1EEC8, 0xED4B82DA,
+0xAD7B5083, 0xCC7BDBB2, 0x5DA33CF9, 0xA9594735, 0x4B6305C3, 0x2C2EB65F, 0xC65A82A5, 0x35A58751,
+0xD58BC1AF, 0xBDA05DD3, 0xD3BF7436, 0x06C7E51F, 0xE216FB65, 0xD73015F7, 0x237E71EB, 0x914DCB68,
+0xB61A238D, 0x1F04AE1E, 0xA9C737E4, 0x204F7E68, 0x39C44996, 0xBEB3B69C, 0x47AE8262, 0xCEA60892,
+0x14731FF7, 0xE6F050DD, 0x4EAA68B0, 0x653470DC, 0x14C8BE4D, 0x21B6030C, 0xBDE6FD3C, 0x0541765B,
+0xA73E59C7, 0xEAD07C14, 0xB99AC885, 0xF39446F7, 0x59EEB547, 0x1BE5BC3D, 0x4132465C, 0x007C4AD1,
+0x5EA16295, 0x8284E9EA, 0xF82D0BA7, 0x0A87E020, 0xDF911195, 0x4F752183, 0xA4157B7E, 0x1024129A,
+0x9F3482EF, 0x474154FB, 0x36BF3621, 0x9CC2FD88, 0x52D087C8, 0xAB8CD640, 0xEC68DCD8, 0x6AC36888,
+0x587A27DD, 0x1A62C0D0, 0x484D5014, 0xAA57F909, 0x96E77A19, 0xC9722A45, 0xBE22335B, 0xA3B1A7F5,
+0xD441919E, 0xC511D8AF, 0xF677DA64, 0x369BF359, 0x7FBDAC52, 0x5F3861E6, 0xBBCD6AA9, 0x5B5F0F40,
+0x2BB82F14, 0xB2131C88, 0xF577CE12, 0xB6D4E259, 0xBD9F38C3, 0xC722A813, 0x40AD813B, 0x4B381809,
+0xECD92E9D, 0x245D1518, 0x55D1BB3D, 0x9C277083, 0x85F8551F, 0x00E94FF7, 0x60C77C3C, 0x40EF10F9,
+0x83722EF4, 0x088C811F, 0xDDFB099D, 0x931A265B, 0xFA64A080, 0xE9C22C04, 0x1A6BEDD4, 0x85A80CA9,
+0x5B0BDA0B, 0x3387666F, 0x07FDA57F, 0xBF1C5EC9, 0x4274C338, 0x7C639502, 0x31AB1418, 0xBA5EAE85,
+0x4EA3AFF3, 0x3F3BB836, 0x8598DDAA, 0x3ADF0464, 0x307E185C, 0x194596BC, 0x4A4DF7C2, 0x7B8CC1EF,
+0xA16E1EFB, 0x599C3786, 0xF20879EE, 0x6FD5EC9D, 0xF586441C, 0x04858B21, 0x70CC2EBE, 0xADE98CE0,
+0x1DF4263B, 0x9BFE3B01, 0x35CECD03, 0xD19DF6B0, 0x5E6C099D, 0xE86E51D2, 0x46A194FD, 0x4BF64456,
+0x4DCD8831, 0x4377AA94, 0x2CE2BD72, 0xC90C5897, 0x47F95EE0, 0xF2941143, 0xF6654C2C, 0x49CC7D45,
+0xB498FCBE, 0x791713ED, 0x3CA912AB, 0x2F103269, 0x63FD081C, 0xD8D7D1D7, 0x3CBF87D9, 0xCE5A8D11,
+0xB0318AF3, 0x0B2D17EE, 0xF0E40B6F, 0xFB2589FE, 0x3A8B2F25, 0x6994ECCE, 0x72F83A67, 0x0A834B3C,
+0x809C6FFC, 0x89F0A30F, 0x6F4C9779, 0xE386E0E8, 0x24509CB8, 0x10E678A4, 0x8D794811, 0xA3EC755E,
+0x717B6AAB, 0x4BC9C9D4, 0x9BF45C0B, 0xD7352482, 0xED5FC4A3, 0x363FEB0B, 0x31602E25, 0xF329D0EE,
+0x1EE5314F, 0x47CBED59, 0x99F379E0, 0x1DD3B481, 0x7CBF0AD0, 0xCA7FADAA, 0xB2B82F5B, 0xC8A3CE2E,
+0x0798C9DE, 0x6AC95338, 0x1272056F, 0x5C100328, 0x7854D34C, 0x5D65B503, 0x4D3A2F57, 0x994922FB,
+0x59D738B6, 0x9D15BD4F, 0x558508E2, 0x0F72E4D7, 0xC2C91EC2, 0x3B7BB706, 0x0860354C, 0xBE0B0685,
+0x3600ED18, 0x7BA7B7D7, 0x3C65176C, 0x27E7EC7F, 0x92BC848A, 0x16D9E8F2, 0x90E4E83E, 0xB9C6C13D,
+0xA01A401F, 0xC354F431, 0xA64FA608, 0xDF48CD1F, 0xFD2DED63, 0xAA21C6CA, 0x861F453F, 0x9D933193,
+0x8B0E7418, 0x64210F7F, 0x2BF32AE8, 0x18AD720E, 0x9F59B9DD, 0x94DFB404, 0x1ACDE1E8, 0xE546C7E2,
+0xACC1B314, 0x9444A6DF, 0x20823138, 0xBDA243C5, 0x331790D5, 0x3EF2966C, 0x9480D27E, 0x2241D946,
+0xF41F17FD, 0x59A4A782, 0xF7B4FB13, 0xA247EFED, 0x9512E8E5, 0x66570136, 0xBF506714, 0x9FA30B45,
+0xCEC0F57E, 0x7A4C4D5A, 0x499B9F03, 0xC3EC852F, 0x9C365777, 0xCD327614, 0x6856C138, 0x56F40CBD,
+0xAFEAE4B3, 0xCEBCAC05, 0x17F20729, 0xDB2F8FA7, 0x521FCEA4, 0x53ED398F, 0x4BDF870A, 0x8D045572,
+0x40289F0B, 0x0741338D, 0x7463EF6A, 0xA321F40A, 0x46223EE2, 0xECD98A9A, 0xE4244BEF, 0xB155EDCE,
+0x8E4DF6D4, 0x4D1BACB6, 0x258C048E, 0xF3651C04, 0x41A204ED, 0x8BD8134D, 0x1457E153, 0xAE31C01C,
+0x34AE84DB, 0xB8AC76A7, 0xEF05536A, 0x606738AD, 0x3F3D776A, 0x1748A733, 0x2CFC0F99, 0xD44C4C65,
+0x10AE9713, 0xC06AD1CD, 0x035DC017, 0x71F7D37E, 0x69F51520, 0x05395E96, 0x7AFEA1D4, 0xD8C805AC,
+0x5A4E9313, 0x1DF446E3, 0xC1643078, 0x2B4509A4, 0x39A961D0, 0x862A3C44, 0x2B88EA87, 0x6608A193,
+0x12884CD8, 0xBA9D57DC, 0x719812C8, 0x6799B768, 0x5C977424, 0x224EECFE, 0x7C25016A, 0x76F2F44E,
+0xB91915E3, 0x0646575B, 0x93F69F88, 0xB9803CAF, 0x9137EC54, 0xA016823C, 0x84CAC8B9, 0x6445EB8B,
+0xE2434194, 0x4DC549E6, 0x63AAF6AC, 0x38498616, 0xA1A6B2A2, 0x5224CE5D, 0x5F7E6E64, 0xDA761B9D,
+0xFB27A804, 0xD9CA3995, 0xEB9F3F13, 0xCB6410F7, 0x72176AC5, 0x21CF30E7, 0x091BF490, 0x3192D17D,
+0x1D97719D, 0xAB62B41D, 0xFBF9730F, 0x6F9250FB, 0xF24EE2EC, 0xBD491390, 0x4CF11E33, 0x307D6C7F,
+0x56C1F6B1, 0x1682BCD6, 0x76F5AC3D, 0x88B25481, 0x64EFFD0D, 0x25A0EA37, 0x3D1DE9F1, 0x026963FA,
+0x545AE800, 0x0350C27D, 0x864EC2C6, 0x2C32391B, 0x1DA57B49, 0x4F7E72F7, 0x8B0C6271, 0x19022919,
+0x95B5A4FF, 0x7AE0CF38, 0xB1872645, 0x430E66F7, 0x0F07499E, 0x4A526A3C, 0x826EE07D, 0xCEF7188E,
+0xB363950C, 0x7EFC0955, 0x64DFE6FE, 0x4C981A92, 0xE0842775, 0x30EB4A20, 0x08F6F830, 0x1DCAB9B0,
+0x1CD6B3D2, 0x5A768CB4, 0xF9864305, 0x322E0E29, 0xAD0EE00E, 0xC7BEAE41, 0xC0BAC204, 0xBF9DA922,
+0x4A794D75, 0x5E5BDECF, 0x7060E623, 0xC8FAA029, 0x84573879, 0x56A3076D, 0xDBDBE247, 0xEBD37D7C,
+0x52EE2F8B, 0x616A38DA, 0xFA82697B, 0xFDA705FA, 0x9B3E2E70, 0x135B88A3, 0x23D2F2D3, 0xD9C66017,
+0x076D271E, 0xD9557974, 0x5A28455B, 0xF598CD12, 0xCB0E3D6D, 0x11F3E1EC, 0x3C0F41CC, 0x8097CF74,
+0x1B53B1A4, 0x094C191F, 0x5756BCE4, 0x443E6D6D, 0x29B6D477, 0xE310BB6B, 0x07A1ECB5, 0xC4B38907,
+0xBCDD1301, 0x6F9BDBFC, 0x80B12B77, 0x2E944BDE, 0xBDFD1EB9, 0x169D96A6, 0x092C7F63, 0xF23E1EF8,
+0xAFA574A9, 0xCB8015B0, 0x6A422790, 0x42FA6F74, 0x6B862A8A, 0x3968D4DB, 0x01262003, 0x4A2C8AAB,
+0x4D75DA80, 0x7B4159CF, 0xD0967C0D, 0x7EE7DDBF, 0xD1502233, 0xAF701064, 0x2B2AEF63, 0x946448B7,
+0xCBEEFB7E, 0x3480BA1A, 0xA5117C25, 0x85F5446F, 0x995E8063, 0xC6B90917, 0x87733039, 0x4B510481,
+0x9D94B817, 0x83A49F8F, 0x7B0471B3, 0x176083D5, 0xD2EAEBD6, 0x6A5BBF8B, 0xC1EBF022, 0xB5FAE24B,
+0x0A9E1A31, 0x2D737AAB, 0xA5D8AEF5, 0x8CBC816D, 0x899FF6A7, 0xFB3FD029, 0xCF266053, 0xE1C5137A,
+0xB4B4A5EF, 0xC57FBD24, 0x0115216B, 0x6A7C8D7B, 0xF6FF6E23, 0x272FD00A, 0x24C32AFC, 0x1FC1D4B4,
+0xCB4CB16A, 0x4E8E0BDB, 0x17F46279, 0xE0E2CB27, 0x453F7663, 0x68E80351, 0x0A2A301A, 0x5A2FB9F6,
+0x29824C1C, 0x647EFDB4, 0x6899A5D5, 0xCCF3A06E, 0xA6FC7892, 0xE6E8BA0D, 0x43F800C3, 0xBBA936F9,
+0xED412CD4, 0xBCE7F82C, 0x1CBE0878, 0xB2626B82, 0xC739EB0A, 0xDDC0822F, 0x7B9958D5, 0x45AD766D,
+0xDAA39A62, 0x5380331B, 0x05FF26F5, 0x5F0CA3EC, 0x19FD906E, 0x1A30A5BD, 0x33788A31, 0xB9D1D7FD,
+0x2156BBCE, 0x1EF2B85B, 0x0F029757, 0x343C31F3, 0xF76E89B4, 0x33FA8194, 0xEEE76A05, 0xC50EEF22,
+0xFD65E32F, 0x05804E86, 0x0385B59D, 0x22C59CA9, 0x372908D1, 0xBBDCEA53, 0x17CF36DD, 0xAA26E8B6,
+0x1E0EF97D, 0x3628F813, 0xE1D0F17F, 0x1EF05060, 0x55CF29B8, 0x7276254D, 0x5A864224, 0xC2803085,
+0x155EEF6C, 0x4AD3D52D, 0xB2586F2F, 0x744A3E04, 0x5044F47A, 0xD470E7B8, 0xBB7F2D35, 0x70491D73,
+0x71BDBF29, 0xCB6CC4EC, 0xBCE70B18, 0x1119D2BD, 0x2F032B6A, 0x1FC1F81E, 0x09765746, 0xD39A2BBC,
+0x28605C09, 0x77235514, 0x8C6E2C7F, 0x36BC004F, 0x229EE3A3, 0x8DE2B47B, 0x5836026A, 0xA632A206,
+0x156C5135, 0xCB737E6F, 0xA35B9EE8, 0xF93F8F5A, 0x1A18C6BA, 0x9ECB8877, 0xCFA3C87D, 0x53848C01,
+0xF0D9D12A, 0x345D32AC, 0x9F180A87, 0x1F3C9F6E, 0x1D5AF2C5, 0xF018F717, 0x72F6B4FD, 0x8332EFD5,
+0xA921926D, 0x024EED2D, 0xAB87F9C8, 0x85072D6F, 0x61B91A05, 0xA6630361, 0x710BC236, 0x1DCA51D3,
+0x7B3C6497, 0xE528ECA2, 0x1B107C88, 0x8437C935, 0xD2D5364C, 0x95256DE4, 0xDF98C6D9, 0x7895C4D2,
+0x03F4175E, 0xBEA51C1E, 0xC02CB1BD, 0xEDC8BB14, 0x4B0B4D14, 0x347A2A21, 0xDE98821E, 0x3D28C01D,
+0xB8CC391A, 0x4321AD0B, 0x4A64079D, 0x63C7D98C, 0x95A5FFDD, 0x3203EF17, 0xEBF0927C, 0x75121B13,
+0x04784862, 0x61DCC975, 0xA2F58FA9, 0x115A346B, 0x21272E61, 0x530FA57B, 0xC4656139, 0x96761B04,
+0x8E9B15B3, 0x06A0DB49, 0x555AD88B, 0xA5BFC130, 0x0D366A26, 0xD4157039, 0x341DD62E, 0xA93BADE3,
+0x087FE343, 0x6548EFF8, 0x6426A0AC, 0xDAE976B7, 0x63B77606, 0xA0316D05, 0xCBBA75F7, 0xE3343E3D,
+0xE9074A6D, 0x004C4590, 0xAB6AC8F9, 0x6267A2E0, 0x35B4ED3A, 0x0F9476A7, 0x0E815EA0, 0x301DD5EC,
+0x8D877881, 0xF7A9256E, 0xE21CCB3F, 0x0D4DDECF, 0x86512320, 0x556AEC54, 0x07D3A52B, 0x1E317896,
+0x0D5726B9, 0x669B19BF, 0x3D155020, 0x31B15E38, 0x9316D466, 0x7C13BAA5, 0xA819D978, 0x10A03253,
+0x5A79B9CC, 0x7BDBACA1, 0xD7AD4DC8, 0x3671D49B, 0xA4D6E963, 0x2348FCD2, 0xED4D9E78, 0xFB1BC33B,
+0x2920B740, 0x4EC2D635, 0xFAA8B674, 0xEF090002, 0x590C402C, 0x96F4EADC, 0x612442ED, 0xF61F3620,
+0x4A935989, 0xB8560133, 0x22FF37DF, 0x48C41FCF, 0xAAEF3A81, 0x45C75537, 0x41AC7560, 0x419BD6F5,
+0xBA507157, 0x69C3D4F8, 0xA9789575, 0xFF20A2ED, 0xBFCA8F8F, 0xA0E9BD89, 0x9AC9E758, 0x31893093,
+0x6760E9C4, 0xC201326F, 0xC532F26F, 0xFAC33466, 0xA8D5AF61, 0xFEDB2574, 0x0F8E5FF1, 0xD27911F0,
+0x859851DA, 0xC2FED909, 0x106B1D39, 0xBE017AF2, 0x57B34654, 0x30CF920E, 0x9354F13B, 0xA554AB2F,
+0x9F4A744E, 0xA792D136, 0x95CD6144, 0x153739E2, 0x29226C16, 0x23F092D2, 0xE8043AD3, 0x7BC0C727,
+0x00D37137, 0xBCEAF21D, 0xE18D8C45, 0x3A136E19, 0xFCC74D52, 0x74941700, 0xE34771FD, 0x2C314D24,
+0xAA8B971C, 0xD0528CD2, 0x195E160A, 0x9F513122, 0x018D0E51, 0x6049ACD5, 0xDD6143B5, 0xA6166758,
+0x69DEBB7B, 0x6D2AF171, 0xE13B3AD9, 0x53973ADE, 0xC760ED15, 0xB79D6C6C, 0xC6D275B4, 0xFD7E7EE3,
+0xA17B5408, 0x04E0EAF4, 0x4DD9D131, 0x7651DD53, 0x16F76981, 0x359EF7D5, 0xCEBBA37E, 0x8DC66BDE,
+0x1CBA6AEF, 0x6D98A339, 0xA1058FF9, 0x01D72D50, 0x98AA493A, 0x20D0707B, 0xE7FE9F6A, 0x144C8B5F,
+0x560989E8, 0x1D78D854, 0xE4396B84, 0xADE349CA, 0xC851F6E9, 0x0186A009, 0x0A38F417, 0xB99937AF,
+0xBD778403, 0xF528F77B, 0x684D151E, 0x1968C826, 0xBB89609D, 0x8BA52BBA, 0xF4B5659C, 0x2756A1A1,
+0xA589C07F, 0xB8201F56, 0xC9D5F5B7, 0x6B02E37A, 0x34DD42D2, 0xCC92E01F, 0x1D9CD2F0, 0x58462E2E,
+0xFD91D8A4, 0x7BD0800D, 0x4E627CE8, 0x02859701, 0xF22B7B71, 0x65BC98DF, 0x317B2108, 0x8358DF2E,
+0x042EDB73, 0x06BA2C46, 0x8E1BC1D7, 0xCEFF6C90, 0x470879EB, 0x0CD1C911, 0x1588071C, 0x78839AF3,
+0x4535BFFC, 0x1B428AE9, 0x528B0718, 0xE1C6F10E, 0x07A2A074, 0x43AD08A7, 0x6310324A, 0xE28A4A2C,
+0x876C6C7B, 0x35551399, 0x435E9DB0, 0x551F8179, 0x3D81E1A5, 0x4FC878F2, 0xC919D73A, 0x2EA6BC4E,
+0xCF18AAD7, 0xF04C382C, 0x255FE6F0, 0x70861F0C, 0x2C1C0F5C, 0xE6B5F83E, 0x9E0A5063, 0xC9F9FC45,
+0xACC7259F, 0xACA78F56, 0x2638915F, 0x575F1FC0, 0x52B79E60, 0x7BD25319, 0x895BE71F, 0x252C505E,
+0x56483710, 0x0FF3C4CB, 0x4F0088E9, 0xBC61D23D, 0x5CC57346, 0xE8552992, 0x02FECD28, 0xD5059423,
+0xE779EA32, 0x42DCF732, 0xE6E5D5B4, 0x8EB2AFE8, 0x77949225, 0x052198E6, 0x0961057D, 0xB1A3DC01,
+0xEB3BA400, 0x6C7E9B98, 0x15BF803B, 0xCF6B0B44, 0x4C4E17DE, 0xA108F72B, 0x84343FF5, 0xFA4CB8DD,
+0xE3C6CD0B, 0x794C355B, 0x2CC34BB2, 0x3F36F403, 0x732F91E1, 0xF70A53D5, 0x0BFF6602, 0x829E3037,
+0x3F9478DE, 0xA908F034, 0xDC9E7A53, 0x5C104992, 0x8C40D9D2, 0x801B3194, 0x4557EFB3, 0xDD1F20D2,
+0xBFE49DCD, 0x619A4A5B, 0xA112EF9F, 0xE3816F55, 0x5CBFB5FF, 0x29453EB0, 0x6943E142, 0x66943ABC,
+0xDAC0ABE3, 0xEE246F81, 0x8C6A3CDC, 0x6EB9B8C0, 0xFE29A1DF, 0x48539447, 0xA359929F, 0x7AA6C88A,
+0xEE047248, 0x66DF81E2, 0x0AB6B694, 0x5E90FB10, 0xFB548E28, 0xA2C88697, 0x2C9684E3, 0x7BE6FC17,
+0xEA1A6B21, 0x58A78993, 0x931E547F, 0x67052623, 0x05A22CB7, 0xBBD4864B, 0x3773A1C9, 0x0F1B242E,
+0xBC18A1B4, 0xE0DC2374, 0x13C4C1EA, 0x8439CC3B, 0xC4095DC5, 0xFFB6D59A, 0x11755D3A, 0x2BD807CB,
+0xB651CDE8, 0x8AC78E70, 0x1A00A983, 0x4DD1C341, 0x9C45F030, 0x5B510AFE, 0x615EDC03, 0x277CE16A,
+0x6714C433, 0xF8679F03, 0x9AE5E849, 0x5540C175, 0xA97F5720, 0x0E667A20, 0x0F39319C, 0x46AA2BBE,
+0xCA20C0B1, 0x42B3309E, 0x716CAC01, 0xF4852F43, 0x24C17856, 0x025B4EDE, 0x68E3EACB, 0xCA280833,
+0x333DF91F, 0xC1EDC2AD, 0x17497161, 0xEE1E25E4, 0x667CD413, 0xEC66048D, 0x17700E1F, 0xD30CA88B,
+0x5B4735C8, 0x4F7ACC0E, 0x357A02B4, 0x01D94137, 0x7E9CE4DA, 0x64E3EAD7, 0xDD31F436, 0xAD309913,
+0x0C8C4675, 0x3A4BDEAA, 0xADD4B74A, 0x3218C506, 0x857CAD47, 0xD28E5AD3, 0xB451B817, 0x5BD41352,
+0x3467F880, 0x486D98BC, 0x848CB1F9, 0xA3D30265, 0xC3231304, 0x3B8A858A, 0x973E95A4, 0x8061B391,
+0x5F42F239, 0x062D68E8, 0x9512A69B, 0xA0A10439, 0xB22C8582, 0xFCF827B9, 0x8C6232FC, 0x0F3FAE94,
+0x6A39A6B6, 0xE34F2190, 0x54512517, 0x5AB8E47B, 0x20E4C919, 0x4578C5F7, 0x697EEBE7, 0xD4B4F129,
+0x2A169A3B, 0x5549F726, 0x95AB98A6, 0x2C9D8B89, 0x10AA5982, 0x4737A3B6, 0x8A97D109, 0xC58DE588,
+0x219BD58A, 0x396C8135, 0x32DE78A1, 0x2402AC07, 0x87B35BEF, 0xB2F4DC72, 0x09C8ED9A, 0x7D0E71E4,
+0x41F314AC, 0xEFAD8FA2, 0xA0566FB6, 0xEFCEC83A, 0x51527434, 0x27837182, 0xFEADE949, 0x7280F7C4,
+0x01EB2834, 0xFBADDA8E, 0xA82C2C6E, 0xB6FCBAB4, 0x7F20ED0F, 0xBFF0702A, 0x6AD47559, 0x662B4738,
+0x2E493F8D, 0xD98BD875, 0x83B2A131, 0xCDDD4653, 0xB9BD38F3, 0x22483903, 0xC9892F75, 0x5C4AAB75,
+0x3BB3395A, 0xA5598221, 0x347F3494, 0x8E7059A0, 0x9B151AF6, 0x6C63FC23, 0x975C38CC, 0x47BB755A,
+0x364832E6, 0x365F6405, 0x5FA7B429, 0xD0A0F2EF, 0x8DD82003, 0xAE52B572, 0x08757601, 0x234D1CB3,
+0x7F9290CE, 0x1435A559, 0x697F3413, 0xF4214BE8, 0x155E120B, 0xD6B03052, 0x054C150F, 0xC39935BF,
+0x9882AE6B, 0xB6546A88, 0x2A19DECD, 0xDD8CC0DF, 0x633573AF, 0xDD47FC37, 0x173A08B4, 0x74D012BA,
+0x6E6BFE41, 0xF7B76A4D, 0x13A07D8E, 0x2CE3F8FC, 0x5EAC7639, 0xB7A8BF2E, 0x7CA9E420, 0xB64AB726,
+0xFBD98EBA, 0x1C3A7EBC, 0xAF9A1745, 0x77ED7A90, 0xE97E80A1, 0xAEA43513, 0x592C4E6F, 0x78F8ED82,
+0x647E5814, 0x1B0E704F, 0xD3A0C518, 0x598015B8, 0x8E2726B7, 0x06881E12, 0xDB7FE774, 0x91CDB6F6,
+0xE9A1863D, 0x1FEA320C, 0xED62ECAE, 0xFBD05B1F, 0x663C3CCF, 0x19884B68, 0x972B6183, 0x2D4FFE1C,
+0x1AEAC764, 0x26DED3A0, 0x943DA580, 0xDF683E97, 0xA71837AF, 0xC5710517, 0x23E2D173, 0xE3E9C54C,
+0xA410EFC5, 0x963C30C4, 0x4CFB2C65, 0xBBBE14E4, 0xB17E789D, 0xB412EA2E, 0x58D7F118, 0xAD521C68,
+0x80195716, 0xF2614A8B, 0xA8943D1C, 0xFE205600, 0x24682A3B, 0x6EEB51DD, 0x99F9C5E1, 0x8500A62E,
+0xA86B4709, 0xC7B3F911, 0xD4979203, 0xEB77576C, 0x5A672642, 0x07DC4550, 0xDAEB5145, 0x450F6116,
+0x9E18573A, 0xD05E93A8, 0x1B9F9B0A, 0x1C341F18, 0x514633F6, 0x81526053, 0x57C35021, 0xBD5C1801,
+0x945C05FB, 0xB071F7F4, 0xDB38686F, 0x788E7971, 0xF860319C, 0x606A0245, 0x53B06548, 0x932E7F26,
+0x03C0F7CD, 0xE681D251, 0xF6554D09, 0xC437C167, 0xC9E0232A, 0x5B149980, 0xF583CD92, 0x5AAA438A,
+0x2B37E226, 0x5C27B092, 0x41A4B95B, 0x131FF73D, 0xA1A435F2, 0xACF50292, 0x8D7F9E9B, 0x95AE4F72,
+0x49C927C6, 0x0EC47F60, 0x8C76E842, 0x38EA34D5, 0xE4D26D52, 0xE684C073, 0x7BA29A99, 0x58C5083B,
+0x39756ACB, 0xBC877B64, 0x0470B76D, 0x1C56020E, 0x39384DAF, 0x2E595FB5, 0xF8DB99D1, 0x95DDDA4A,
+0x2E5D49B5, 0xCB8D422B, 0x36D732A1, 0x013E16C2, 0xA1622964, 0x41F7BA56, 0xBDA235FE, 0xA5F8178A,
+0x0E9F9CDB, 0x3A67AA77, 0x3483163E, 0xEBC66115, 0xFB7B96A9, 0xB452D10D, 0x70B0DA95, 0xFF384E11,
+0xD9422243, 0xB50EC5D5, 0xFA039C62, 0xBFCBD9D2, 0x5C895929, 0xC33DC719, 0x494A9648, 0x3113BAC7,
+0x03BF55A5, 0x623E9491, 0x23D36488, 0xAC26A420, 0x158B2374, 0x1912E2AB, 0xD37B6DE0, 0xC5074EFE,
+0x6DFC6C87, 0x4FB19AA5, 0x1031D896, 0x3B031787, 0x9F580BE0, 0xB43AE757, 0xA413AD0C, 0x0F51FBD6,
+0x7FEB632C, 0x8B8AF215, 0xC7173E2B, 0x33651DDC, 0xC49E19CA, 0x8D1CE05B, 0x296596FC, 0x231E0E9B,
+0xC5D7953E, 0x91B5A814, 0x77FB7165, 0xC2B7C00B, 0x455F9C5D, 0x10E999B3, 0xCA539A1D, 0x9B37A77C,
+0xB471D787, 0x9758261B, 0xEF7857FD, 0x66D7156A, 0x88AD29C6, 0x6772724E, 0x68D49601, 0x1EA2CB86,
+0x7D088743, 0xB07E1CB6, 0x38C6C629, 0xDC538D82, 0x6347BAD5, 0x365F0F73, 0xAC2F180B, 0xF79DF103,
+0x6EC7A4BC, 0x4A2E445D, 0xCB080901, 0x98192E2E, 0x9FE6FBCC, 0x247BD022, 0x8FC7929B, 0xC2CE8758,
+0x1F2E03F9, 0x3F993F5F, 0xA8C0B8FC, 0x4D940F4F, 0xAE071A1B, 0xD9DCE611, 0x59553FF9, 0x735C7F42,
+0x9B9BC7B4, 0xFD71A970, 0x22BA58A2, 0x323EDA46, 0x59FB1A41, 0x6B140763, 0xF7012DE1, 0x3B58545A,
+0x0034E73E, 0x0719C8A8, 0xD76D094F, 0x6B65A7BB, 0xCC9BF7A6, 0xC024E57B, 0x0B1EBA5A, 0xC09986F6,
+0x23B92D66, 0x2EC461EE, 0x2C5F9508, 0x47420C22, 0xF0B8E009, 0x6EAEDF4B, 0xD96C5D93, 0x0F82483F,
+0x2B272241, 0x41AC8C27, 0xD9B37620, 0xB74ACCAE, 0xB259C8C4, 0xB694BEF0, 0x2972EE7A, 0xFAA5662E,
+0x2D0FAB9C, 0xC1804682, 0xA5A7E8C7, 0xE214BBF0, 0x48BCC4CA, 0x7632E6A1, 0xF63D6838, 0x5DA191B4,
+0x39A70AFE, 0x05000310, 0xE32F188B, 0x0E5E8EF4, 0xAAA2743B, 0xB673DBB8, 0x7BB9B95E, 0xEBA2B514,
+0x358344B3, 0xC2C89896, 0x2850E0F8, 0x02E58071, 0x04F67E36, 0x6601D2E1, 0x6F807A57, 0xD1E30B7E,
+0xB8C1BD7C, 0x969FEA75, 0x4A2E830B, 0x0BB3D790, 0xD951ACD2, 0x57C008AA, 0x9A8E9971, 0x5BA49CC7,
+0xDEC8C9AA, 0xABD149FE, 0xE669CEDB, 0xA726FBAB, 0xFA2FDB32, 0xD88A9D73, 0xD9B876A6, 0xEB1A81B2,
+0xBDF0655A, 0xF6B387B8, 0xDDF3E27E, 0x5D3E097F, 0xCE119998, 0xC01F9C9E, 0x5CB18EFD, 0xFEECE0F9,
+0x54C36BBD, 0x4489D42D, 0x9E3A6044, 0x16520E26, 0x52C7D16F, 0xE86814FC, 0xC3D8282B, 0x9BFC4752,
+0x2E5CC391, 0xDC223206, 0xBCF216B3, 0x71CCCF87, 0x515A80D1, 0x6EBCE173, 0xFD247D08, 0x6AEAE34C,
+0xB6A7C2B5, 0x600AC4AC, 0x3AB7CA85, 0x5ACD5B70, 0x184CD7E3, 0xDBB50719, 0x850342F1, 0xA99544FC,
+0x8EEFA246, 0x97EC993B, 0x3CE02984, 0x9C5DBA3D, 0x56270860, 0x1648C4EE, 0xA7798859, 0xDA58C622,
+0xB5693E2F, 0xD88D3E86, 0x871BBCCA, 0xB32B489A, 0x707EAC7B, 0xA430958B, 0x2210BF89, 0x04C1D44E,
+0x7F7FCA18, 0x74549B3A, 0xC2ED8C55, 0x6C44342D, 0x09E27D64, 0x02513414, 0x52265C9A, 0x17147666,
+0xAEB4CFA1, 0xE779D241, 0x5C89E3A5, 0x4101FE9F, 0x4C9A8C3D, 0x6FC70A87, 0x1BAEBD91, 0x9498C28E,
+0x3CA23DD8, 0xF16D850C, 0x022377C1, 0x698CA7C5, 0x7DD00D68, 0xB1D193C8, 0xFA9D4B6C, 0xE494E5FD,
+0x8E0843F7, 0xCA809FDB, 0x1C397698, 0x2EE9348B, 0x38D1BF6F, 0x642481AD, 0x08305919, 0xDDC1DCCA,
+0x9BCA9C0C, 0x544545E4, 0x798C2A36, 0x2192C3FC, 0xF62B972F, 0x2A52DEF5, 0x68898C03, 0xFEF2C5B2,
+0x8806D30E, 0x9CB13089, 0xD4B5087B, 0x00C52974, 0x4C3C074B, 0xC1C8D81C, 0x23A9432D, 0x332A954A,
+0x3C67AD93, 0x4790994B, 0xAD7C846A, 0xE0CC896A, 0xE12AE19B, 0x114863C0, 0xFEBD54E2, 0x742226F9,
+0xB5EE8CF3, 0x45081B60, 0x2874843C, 0x355C3FC0, 0xFCB20E7C, 0x13532DE9, 0x39207B87, 0x3A7D1DBB,
+0xB99BAF3E, 0xEA7126A5, 0x44F41926, 0x650ED605, 0xBD72A122, 0x3FFDAF1E, 0x74E00BC4, 0x68B26E1B,
+0x4FA2C512, 0x15F82BE4, 0x9B7E2761, 0xD695290C, 0x9D0AFC46, 0x02228986, 0xCE23F6A7, 0x1C7D0E27,
+0xE6F2EAFC, 0x41384B85, 0xA7036F39, 0x9D7D0E17, 0x43D68CC9, 0x25F57817, 0x95AE4F9F, 0x3116A9D0,
+0x2B0723ED, 0xD98A6C0F, 0x58D3CA9E, 0xD0C932AF, 0x46C8DEFB, 0xE7DFFC14, 0x3F676879, 0x8DB7619F,
+0x426B79B8, 0xDFB9BA0F, 0xF565F8D6, 0x975AB07D, 0xF46B8224, 0x3875AA18, 0xBBCB24D3, 0x133FB903,
+0xFE71118E, 0x3A1B69E2, 0xF8507B8E, 0x979B437F, 0x8C07BC97, 0x5646CFA3, 0x2849FA1A, 0xF396AF1D,
+0xDFE8712E, 0xC64A7807, 0x62A6FADB, 0xA858AFF7, 0x584F0407, 0xDC8C3D47, 0xC86FD388, 0x129BAEB3,
+0xF6B9E721, 0xCAE6CE83, 0x718362DB, 0x399CB88F, 0x9DEB15D9, 0xAA79858D, 0xA474262E, 0xDABC09AE,
+0x2B6708F3, 0x560A6E6F, 0x206462D7, 0xCD657694, 0xDF9F8025, 0xE3DEABF9, 0x5A093265, 0x2D261B92,
+0xD71BF647, 0x09BAD554, 0x4C948C09, 0x36119FE5, 0x0F9FE171, 0xFEF21B09, 0x3A96D491, 0xAD299F27,
+0xE82C770C, 0x383AD14F, 0xF86CDA7E, 0xB0FB1834, 0xDF47711D, 0x85728D5C, 0x490A433E, 0x61E6F387,
+0xC31696AB, 0x0E6559A3, 0x8151782C, 0x89AF8A87, 0xBF4E0AAA, 0xA813E027, 0x42663B90, 0xEA3496AD,
+0x8C74689E, 0x9AD1992B, 0xA5DF118F, 0x8A8A495A, 0x9E379F08, 0x38F45615, 0x2CA44851, 0x672BDF53,
+0x293B1915, 0x8BA09562, 0x99E06B05, 0xB24E5B80, 0xAB2B5D90, 0x00AF2B1B, 0x97D77A36, 0x8E9E8BB3,
+0x4921FC0E, 0xCD4AC73E, 0x77661F34, 0xC1E5F623, 0x16169B26, 0x97B3F735, 0xB05BAD69, 0xE08C31A4,
+0x56D76FA7, 0xA4BD82A0, 0xE2183360, 0x407EC429, 0x5830DBDC, 0x93DE1E92, 0x7AF18B0C, 0x0E0C1D98,
+0xEC321763, 0x525DBD90, 0x54574823, 0x0FDCD6AA, 0x08FC1242, 0xB76A7C0D, 0x6449E5E8, 0xE9685706,
+0x4D383391, 0xADD86B08, 0xDF81F31D, 0x1C560FB4, 0x436D2224, 0x57B5AE06, 0x875EDA6C, 0x48958911,
+0xC58AF352, 0x3C60483A, 0x251A570B, 0x21AECF8F, 0x52469034, 0x1FD60D41, 0xAF14A324, 0x4B48385A,
+0x75CC622F, 0xEA4176C9, 0xFAE47230, 0x32AFF67D, 0xFCF0ACDF, 0xC59686C9, 0x1EA7526F, 0x0F97772F,
+0x887F73E2, 0x4EAD0A61, 0x8FA6E4C7, 0x3A4D9DC7, 0xF3699141, 0xAA7D7C98, 0xCF698F49, 0x8881538E,
+0x5C55E269, 0xAAA39365, 0x84BDA84E, 0x872A04EA, 0xA0E742D6, 0x3B38DF74, 0x756DDB4D, 0x643E8C6A,
+0xD2835F37, 0x8E213E95, 0x0D3F15C3, 0x98273CB1, 0x1E2E5B7D, 0xE3381F6C, 0x5BB7124C, 0xB90C85D1,
+0x151A5D98, 0x9660F2C5, 0xBB43DE82, 0x04F78291, 0x623D9AB4, 0x7BE3A126, 0x142CD08F, 0xBC337E82,
+0x2F585C01, 0x7A632B10, 0x2A12B371, 0xFBCB3B2D, 0x4933B64A, 0xD35B245B, 0x8E6731C1, 0x8031BE25,
+0x3A1F7D84, 0x9DB7ADF4, 0xA4F7FE39, 0x3AEAADAB, 0x7DADDDDA, 0xD410D072, 0x2D83C2E1, 0x66F72AED,
+0x853B77B4, 0x6F645C3F, 0x56888789, 0x2D84841A, 0xA77DFB45, 0xA9B96A16, 0x8A7212CB, 0x045F4638,
+0x7F8C8210, 0xEA1EE979, 0x2CC9478C, 0x10B5F317, 0xA0643760, 0x8EED494D, 0x3AB97279, 0xEE241B72,
+0x2D9A8CC0, 0x237A50C4, 0x28AE634B, 0xC4416BFC, 0xCF2B1E3C, 0xE5EA68A7, 0x11BD9E1B, 0xE3A43958,
+0x38B3C304, 0x50D412C9, 0x34DB42F2, 0x6BF2A826, 0x738E8D16, 0x6B6E30B2, 0x0355A2E7, 0xF8C557E3,
+0x1A977240, 0x48839704, 0x44B5C2F7, 0x230F3DE2, 0xDFF556C9, 0xE140F92A, 0x30789BC4, 0x278327E7,
+0x50BFDC25, 0x975C464D, 0xD9D96278, 0x9736528C, 0xD3405400, 0x220AC407, 0xE2BA8DFA, 0x672EC917,
+0xF7E5FF0C, 0xEC791230, 0x6072ED76, 0x0031C91F, 0x69BBB13C, 0x2241B502, 0x9DCF3442, 0x41FE9F43,
+0xDB3E11C6, 0x28D7F0F1, 0x5920143C, 0x417540F3, 0xF6047617, 0xA4D943F9, 0x53B77E84, 0x5E2C51BB,
+0xF53A0107, 0x2DD4B17E, 0xC4CF0BE9, 0xF1A84F7F, 0xE8109CB1, 0xBE6E1FEE, 0xE96849F0, 0x47CE263D,
+0x527F2AFE, 0x8AEBF67D, 0x20CF9BD4, 0x46B3FB0F, 0x2FC98916, 0x5BD0E8D4, 0x3F02CCCD, 0x66AFE2C1,
+0x2EE95E74, 0x0E4E373E, 0x9B8F6286, 0x5D4DB6E6, 0x08D0A5C3, 0x3B0C4B62, 0xE1EF416B, 0x53ED220E,
+0x9D44C359, 0x8ABAF47A, 0xC666FFAC, 0xEA683B18, 0xF4AAEA99, 0x78F13439, 0xFFAD38A7, 0xA12866B8,
+0x82775A81, 0x4C133569, 0x74C6CA5D, 0x7F01DAA4, 0xC48CCD19, 0x08A57638, 0x6598193E, 0x91A32E36,
+0xF404AC0E, 0xF2C1117E, 0xD2B6FD6B, 0x2D133DEC, 0x331C91D3, 0x388266BB, 0x0527508D, 0xEAD13356,
+0xCC247FFE, 0x04B3DCBA, 0xF95D21EC, 0x0FF2BE41, 0x3AACF29D, 0xE2EAF43F, 0x9D9F7FA7, 0x319ACAB2,
+0x31D08C31, 0xDECEC55F, 0x9C335D83, 0x909B9149, 0x598EBA9F, 0xA4F0C8C5, 0xFEF4C928, 0xFA6C9760,
+0x65E3BA4C, 0xE333AB00, 0xB69D636E, 0xF1D3F045, 0xEB14DC8A, 0xF082D812, 0xE6F3A822, 0x6DDFC3DA,
+0x1E02C6B9, 0xB9016798, 0xB53AC837, 0x36952B8B, 0xD3A1B742, 0xC9CD66DD, 0x9527CAEC, 0x6CDD71C2,
+0xC053887F, 0x94262A49, 0xF72E309D, 0x320D7F93, 0xB62D7F57, 0x87C178B8, 0x04EA256D, 0xB31D7BED,
+0xFE02FFA7, 0x3A82903A, 0x4B337846, 0xECE646B8, 0x101BB18F, 0xD6AEA545, 0x89AA765B, 0x8110DB0C,
+0x06D29320, 0x0464992F, 0x0DEE98A8, 0x54B01C29, 0x2C8FE82E, 0x07E0629A, 0x6C749319, 0xFF30C210,
+0xA94CA503, 0xB6B6A243, 0xE0D9919A, 0x001BEF48, 0x81343D7F, 0x260A3529, 0xA3996744, 0x57B59960,
+0x42660CD7, 0x43E4156F, 0x6295F74E, 0x511AD885, 0xD10678D6, 0x8B4D61F4, 0xD221773E, 0xD8684B3F,
+0x6E6B9001, 0xAD4D8E53, 0x612AC125, 0x0C660159, 0x03C9F921, 0x1C1FF870, 0xF3B24BBB, 0x21A1AFF7,
+0x194690E1, 0x23A23C19, 0xE7D3C66E, 0x80804F94, 0x123FC0F6, 0x48BCA1E0, 0xCCE562B7, 0x3E843F73,
+0xA82E9DB2, 0x05B85007, 0xEBE2BF97, 0xF6C63F0E, 0x85FA78E7, 0x6DE9CE10, 0x027DFFB2, 0xAB2E9602,
+0xD1A472C2, 0xA38C6EAA, 0xA006DEE8, 0x7ED14721, 0xCD5ACE89, 0x3F2A0A60, 0x820E2C17, 0xF92E64D8,
+0xD5D9ED74, 0x673A377E, 0x41DE4B18, 0xC6A824BB, 0x3C03A855, 0x8932C1FB, 0xB206DBC2, 0x08C3B1FE,
+0x5BFF263D, 0x578A9771, 0x18068478, 0x87647560, 0x6027E0F8, 0x5A04D1A6, 0x886AC3EF, 0x7FC7B373,
+0x3EA1C703, 0xD507CB85, 0x19FF3F25, 0x77BCA6B6, 0xCF14F0BD, 0x8209DFD3, 0x182E2A45, 0xEBF49229,
+0x70BB7D9D, 0x365FB246, 0x796400A9, 0xFF272019, 0x519A2904, 0x3BE763CF, 0x3CBC9AD8, 0xDEDDBDA7,
+0xF9966BBE, 0xCC437735, 0x028537C9, 0xBEF289EA, 0x98ED0F45, 0x46A1B793, 0x48C15CD1, 0x2CBACA6F,
+0xE1D6E6D0, 0xD9B0814A, 0xA4673D23, 0xC5569364, 0x7F5A8214, 0x002A527E, 0x61C7C7B1, 0xFDCBC4C6,
+0xF7D61ED9, 0xE28A8BB3, 0x7E3116F3, 0x6DA636A0, 0x9D766CAD, 0x5B873EAB, 0x92BF0DE7, 0x5DA3A0DC,
+0xED0186CD, 0xB09E462F, 0xED87EBA0, 0x2F0AC9F4, 0x2E540EEA, 0x200F06A7, 0xCA515E4B, 0x3EAF8E36,
+0xE5C56B2C, 0x8B2808DA, 0xA7BC3E15, 0x909E1522, 0xBB60DBA2, 0x088AD314, 0x8A086A66, 0x6F17553C,
+0x422DAE74, 0x1BF992EE, 0x20941811, 0xBD6CE96E, 0x21872F08, 0x58569DCC, 0xB552ED2F, 0x7A48DE34,
+0x97249902, 0x2EAE6B17, 0xBCA4013C, 0x5F0601B3, 0x6E567A2F, 0x488F24D4, 0x6D357A64, 0xF70996B7,
+0xAC4CB1E9, 0x8C3E372C, 0x5D8BB6AD, 0x23EE338E, 0x90B88736, 0x71E6DC8C, 0xC03C07B2, 0x3EDB0C7C,
+0x0968210B, 0xB3146D6B, 0x1FFAC6CD, 0x1D795C83, 0xDC7C9029, 0x7BA007F0, 0xDD833414, 0x976A5736,
+0xF4C9B276, 0xD654E2FD, 0x3C82868C, 0x9C52BC78, 0x2C177DC7, 0xEFB4879D, 0x6E9C1C92, 0x7AC028A2,
+0xE6ABC0B4, 0x69198DE8, 0xE91CDAA7, 0xC470A34E, 0x1DB6E635, 0xB12DD1D2, 0xC4D41721, 0x9E7247C6,
+0xFE812E48, 0xF9C3B5EC, 0xFD3E9A49, 0xC23F3E82, 0x1B6E3103, 0x5718C931, 0x5F895A3B, 0x73B65C14,
+0xACE14260, 0x785F72A9, 0xA2944A06, 0xA09DFCAB, 0xF66642F2, 0x6F5AB576, 0x63649C7E, 0x6DFBC977,
+0xF20A7C97, 0xD5E7B8BD, 0xD290530C, 0x103F411A, 0x850B0E41, 0xD478B7DF, 0x1BA188C5, 0x6F62847C,
+0x3ECB2759, 0xFB4E24C0, 0x675B6DE4, 0xD3A67357, 0x515AEC61, 0x370B99FE, 0x7654EBE5, 0x593C7A8C,
+0xF3D3EF5C, 0xEF898B99, 0xD2982E95, 0xE486721C, 0x5A42D45F, 0x9D89866E, 0x3DFBCF0E, 0x42A27144,
+0x9BBD23DB, 0x8E7053F3, 0x2A4C147A, 0xA9D98F19, 0x3323117E, 0x405593F7, 0x5E841EF5, 0x62DB2176,
+0x5513D5BF, 0xA31ECE18, 0x7C00D617, 0xF702DE77, 0x4CA121BD, 0x19E12F0D, 0xFDB62A34, 0xE5CE0CEB,
+0xA2295B9E, 0x4B5AF37B, 0x3681592F, 0xB32199DA, 0xBAC2404C, 0xFF878B85, 0x30243D8F, 0xA7BC2243,
+0xABC10B20, 0x6CCAAA96, 0x2A5FD02D, 0x03665A03, 0x40161F02, 0x7CB6E01C, 0x9BAA314A, 0xB9107F18,
+0x63C89C8D, 0xB4B289D9, 0x2EDDDD6F, 0x93C66E7A, 0x6DC4050A, 0xC861316C, 0x6C654D18, 0x6A8489E5,
+0xC2FB1A4C, 0xB688C22B, 0x57A73A82, 0x92CD9DAC, 0xA45C451E, 0x7A91A0A8, 0x404B9048, 0xD2B837B2,
+0xE21AE12F, 0x691F709C, 0x62A0C8D6, 0x47AD0FD3, 0xB57B902E, 0x27A9F126, 0x9AE8AEAC, 0x285AE395,
+0x46794F00, 0x2897B1D3, 0x239D7D92, 0x76117857, 0x41D5F2C3, 0x58E6639D, 0x75A4D5E5, 0x4B5B9BFC,
+0x1BDCCD42, 0xF593E9A2, 0x2B5F4E18, 0x96126B17, 0x9DF7C3DB, 0xCF2FE0B1, 0xD2F22B67, 0x40B215D8,
+0xB5AB779A, 0xEBEE4497, 0xE05AC4C6, 0x31C771F0, 0xA62F9DAC, 0x2B396BB1, 0xE78E4E00, 0x7034B53B,
+0xE5F716EC, 0xADBC8F54, 0x63383BBA, 0x5313A00D, 0xBC4D3E32, 0xC6A15CF8, 0x3C996E91, 0xC8161D2B,
+0x2493F94C, 0x0843D489, 0x62D8AC2E, 0x42094551, 0x208071A5, 0xA59CCC3E, 0x57EB4BF2, 0x853235F9,
+0x7E5FE76E, 0xB1553809, 0x8B8FC206, 0x134BDB93, 0x7EEFA54A, 0x203703D7, 0x3B8023BB, 0x430FD591,
+0xEB15DFDE, 0xFEA68D55, 0x68A5FA90, 0xAF6EDA0A, 0x503BABEA, 0xBAFB091D, 0x10C5AE1A, 0xFA14A7F4,
+0x16B4D950, 0x21FCCCC3, 0x9451584E, 0xA23E91AB, 0xAD03E5B5, 0x680B1F7A, 0x9D26A46D, 0xE5328E39,
+0x5187455F, 0xAA88645D, 0x068E6220, 0x33A8E22F, 0xDF2E68E8, 0xDD20341B, 0x9DAD1CCA, 0xC50B7A5A,
+0x8BFC5A6A, 0x7FBB506D, 0x18CFA426, 0xFCE62786, 0x1CF4E5E0, 0x8C6A1C3B, 0xA71CC78B, 0x392E34DB,
+0xAD28320C, 0x5D37D08D, 0xD67AD492, 0x7A7A2123, 0x169AE604, 0xA265CEDF, 0xFB6C7B20, 0x654FA2C1,
+0x29B18A39, 0xF13C9956, 0x145B330B, 0x383BFF37, 0x52FC1B8D, 0x27C37B8D, 0x01EBA75A, 0xEFD8CFDC,
+0x1176B51C, 0x0A554770, 0xBC784937, 0x0C8C02D5, 0x3724BA2B, 0x8544F095, 0x073E9938, 0x83307038,
+0xE8AB0117, 0x115A8F94, 0x14539D71, 0xB0B335A3, 0x1555BBAE, 0x58FEC369, 0xA04D3A19, 0x8B906111,
+0xFAE5A89C, 0xF052CA1E, 0x24FD99AD, 0x06E306C7, 0x6B9C015C, 0xA2132315, 0x30576BDF, 0xF813D69C,
+0x70492ABE, 0xCDC46F06, 0x2E1F4D1E, 0xB6D2051C, 0xE99D870E, 0xA19B0004, 0x4F51FC41, 0x567D7DA0,
+0xE733DD61, 0x2DA2AD5B, 0x14F9191F, 0xC1E2BB4A, 0x84DDAF86, 0x55A2AC1B, 0xDEB8B114, 0xF04B0656,
+0xAEE012BD, 0x966D0938, 0x0004DA55, 0x0B882390, 0x20D7CF8C, 0x0836025E, 0x7F1C3F00, 0x928CC8F7,
+0x18571C06, 0x93E2CF4A, 0xD47BD1E0, 0xCA230FD4, 0x16CBA942, 0xF093CF09, 0x82ECC655, 0x5CE36970,
+0x5F0C3A7B, 0xDC6D6C40, 0x68C237FE, 0x70169B0A, 0x4957589F, 0x67964F2B, 0x3FB739A0, 0x0A9358CA,
+0xC2449878, 0xE26B4C7E, 0x1254F3CD, 0xD48C190C, 0x2042CFF7, 0x686F6523, 0x5B360619, 0x5C5B0962,
+0x521FD53C, 0x7F9169E6, 0x00231475, 0x2F78A1D8, 0x75225F1E, 0x090559FD, 0xAD4F500D, 0xF60325A3,
+0x8980B199, 0x7658AD26, 0x827DF8C2, 0xC1EB728C, 0xC13EAA88, 0x96FBAF7F, 0x6FCF40F7, 0x919CEBE3,
+0x5F4B538A, 0xBFE9D695, 0xF6981580, 0x0EA1D79E, 0x6AFED9C6, 0x98FC308A, 0x4DEDB59D, 0x579FC686,
+0xEEB46592, 0x17DB7FC7, 0x5F2605EC, 0x995AC16B, 0x91F40F05, 0xAEF78243, 0x22210D3B, 0x987495A7,
+0x962D9A0A, 0xFAB508EF, 0x3DC21449, 0x83C57212, 0x743B36C5, 0x428D28FE, 0x5219797D, 0x90C42F8F,
+0xEF33F020, 0xB3DD18CD, 0x29C5FDC3, 0xDC55DB9B, 0xE2E7B5E2, 0x0616A953, 0xA1E989AE, 0x49E5A13E,
+0x6B013BF6, 0x66B96C45, 0x2539408C, 0xDBA8F230, 0x692C802D, 0xEA6CD642, 0xAB063198, 0x5B591BCA,
+0xBD53862A, 0xF0B4662E, 0x7529A7EC, 0x0481C385, 0x1E8523DF, 0xAD335057, 0x385DCAF1, 0x2D1D5BAC,
+0x27E63904, 0xEF6B93B4, 0xD1EAB868, 0xDC2016B8, 0xCB7D3628, 0xB2AC8318, 0xFEDCA802, 0x589FBAD0,
+0x716669FD, 0x55EBECB7, 0x0DF001BD, 0x27FCE18D, 0x36B54143, 0xE2D9FC04, 0x0856E3E2, 0xFA6AF3FB,
+0x8BD26F13, 0xB5D44FE1, 0x129E8146, 0x17D97EA9, 0x79B1A00C, 0x12AE299A, 0x4A9BDEA2, 0xEB945E89,
+0xD8A0BACF, 0x164A8D00, 0xD8EDF7FA, 0x7BBB59A3, 0xE1633F63, 0x17B114A7, 0xA9B0C392, 0xBC41E487,
+0x43C2B779, 0x6BB3CF28, 0xBED2EC65, 0x37E2C413, 0x7C09A2B4, 0x6D24AD35, 0x7FBC8D7E, 0x9FEAB926,
+0xF4282E91, 0xD8F5A389, 0x7789FECF, 0x7664F7F2, 0xAF14C86B, 0xE2823995, 0xC3CC77DC, 0x71D49838,
+0xB172BF6B, 0x94E7860D, 0x908E7DD8, 0xDB526B1D, 0xD90BDBEA, 0xFC52555C, 0xD5856D66, 0x40C7A640,
+0xEC864C25, 0x12F9A0A5, 0xB5A92881, 0xB78DB70F, 0x83B2BA91, 0x365E404C, 0xA88A9332, 0x6BA51BD0,
+0x2203F198, 0xEF7F2107, 0x1B9A32C4, 0xF0CCFF6B, 0x3BA51BEB, 0x24DCF2B1, 0xEFE609E8, 0xAA401EB7,
+0xAB481311, 0x8186685A, 0xD9BA410A, 0x8DB98564, 0x63827AD2, 0x287858E3, 0x570B06FA, 0x82239007,
+0xD5384F62, 0x701AF6F7, 0xB5031952, 0x1763FE94, 0xEF4BFC6B, 0xBE8B202B, 0xA2D5F45F, 0xF5E7214C,
+0x5794C83F, 0x0B748266, 0x5F2E202D, 0xCDC98525, 0x7ADB30C9, 0xA0B1774D, 0xD2F6ED82, 0x5AD5A5A8,
+0x7E2B598A, 0x53A6D4BA, 0xCFAF796C, 0xD41D18CB, 0x46F47777, 0x1420A6D3, 0xCB302F90, 0x0828FC3B,
+0x48CB0ABA, 0xAA12A582, 0xDB65A13D, 0xE3DEB0A3, 0xD49D67FD, 0x0F3D5240, 0xCC5FD98B, 0x78147D46,
+0x24ADC6CB, 0x5C42D923, 0x8A63789D, 0x58E26CE0, 0x7E1C7FE6, 0x5304B534, 0x0ECA1571, 0x6C47B58B,
+0x318D0A35, 0xA2C6BCAC, 0x8F980517, 0xD914F566, 0xC3064B86, 0x3D7573CA, 0xC751685B, 0x4BD28F0F,
+0x7DFC7F3F, 0xBF0A7E76, 0x7F402E4A, 0x33CC4D44, 0x67D840DF, 0x0A566922, 0xA80D7301, 0xBA34A4A3,
+0x48C00BCB, 0x1896AC7D, 0xA325D9D2, 0x6290AD72, 0x521C049B, 0x483D428A, 0x69B6224E, 0x5A78E2F0,
+0xDCBEAA21, 0xA91C1627, 0x91F39E76, 0xA262B20A, 0xED634CC7, 0xCD34EC73, 0xE5B89F58, 0x294D6A04,
+0xB62DD283, 0xF51EA7AF, 0x7EC60CAA, 0x89FF4F63, 0x558B1B93, 0x30B1DEFD, 0x4DC033C8, 0x36912616,
+0xC1DA3CC7, 0xAF5E5269, 0x98671E82, 0xE43BA317, 0x333CF29E, 0x23FA49B9, 0xD3DFC827, 0xE801CA46,
+0x89956707, 0x598EE258, 0xCAF43C0F, 0x48745BE6, 0x0B2E495E, 0xC49B4667, 0x6F8C319B, 0x20A896F7,
+0x3653215F, 0x883CC000, 0xCA140795, 0x3FA4D086, 0x5A414E2A, 0x76A860E4, 0x894004B4, 0x87F8030A,
+0xD5F691B8, 0xBFCFFC86, 0xC4663126, 0x1DDE3CB3, 0xF8BE3E2D, 0xBDCF7D7B, 0x04A003CA, 0x3770D989,
+0x86D072F0, 0x0A7617FE, 0x04E444C2, 0xCFAE896D, 0x97327388, 0xCAEC6FF8, 0x842516B9, 0x0637882E,
+0x5A05DF63, 0xF9DA66DE, 0xB21148E5, 0xD3F29B12, 0x9D81A7C9, 0xBE6F582E, 0xAFBA0184, 0xF1938446,
+0x4487438F, 0xA40259A7, 0xF63A9C8A, 0xDB30F229, 0x3CE1F3F0, 0xDD2D2498, 0x477A2FE0, 0xAE0C3D84,
+0x858C1970, 0xC864C887, 0x09621CA9, 0x186C938A, 0xED2B809E, 0xC9890DA6, 0x70D283C5, 0x9D168C70,
+0xE5533A81, 0xCE8F3805, 0x5393EDAC, 0x0F4747E5, 0xFDCD5EFA, 0xF70098CA, 0xEF013BC3, 0x78FFC9CB,
+0xCE83567D, 0xEAAC055D, 0x7BBCD7B6, 0xD6A1CFAB, 0x5E9D90B7, 0x4576C1DF, 0x3C70E753, 0x6C93879B,
+0x23B405A7, 0xE4184EB7, 0x9674EB58, 0x4ADBAA3B, 0x9E6EDAD2, 0x96821BA4, 0x8539C38F, 0x3009F4E1,
+0x0458F94B, 0xB70F6C2D, 0xE66A4CC2, 0x0B6C664C, 0x02FC1963, 0xD5D86373, 0x8977B43F, 0xBBCBA1B3,
+0x72CFDB66, 0x1DE58E76, 0xE1099C57, 0xD52C163A, 0x06D65FB2, 0x8AEB1F15, 0xDAA80659, 0xB85E9A03,
+0xC2E7F367, 0x9BECCADC, 0x10903E02, 0x727C18F4, 0xB8A48379, 0x49D46D9F, 0x5541EA05, 0xAED07F3A,
+0xDE9436A9, 0xE56A36BA, 0xAF7302F4, 0xB92B0B9B, 0xB6396AF6, 0xA03579A0, 0x22208342, 0x8CB99895,
+0xD5EF5CB0, 0x10B42C07, 0x5020E1AF, 0x4CBFFEBE, 0x5D1CE1A3, 0x376FAFAE, 0xBED46C3E, 0x5FDCEF4A,
+0x179E279D, 0xDF508F9E, 0x0953B846, 0x8EAFE8C1, 0xC1647804, 0x9753665C, 0x7E47FEB8, 0xFD95AA69,
+0xC6F4DD10, 0x62B7EB59, 0xF534B7F6, 0x38F1156E, 0xF77F4916, 0x43F531F9, 0xD20A653E, 0xA147C8E6,
+0x7A46F7F1, 0x3A069D9B, 0x1008CC7E, 0x8CCCBED0, 0xD3900885, 0x4B3F926C, 0x93C25C0B, 0x8415E4FB,
+0x0A317184, 0xC68D8673, 0x43076B19, 0xBD608F32, 0x7A5D387E, 0x2110BDE5, 0x3054034F, 0x427CBCC5,
+0x7D4DF0A7, 0x848C3A3C, 0xA6A4FC80, 0x3ACB391E, 0x182C4990, 0x1FB001CF, 0xDFF2850C, 0xCE2FF475,
+0xB8498ECA, 0xC67238CA, 0x08F8BC35, 0xF19D9B2E, 0x4328EC91, 0xED9A6C36, 0xAF96E69C, 0x96E7F5A2,
+0xAB4D6783, 0x903348AB, 0x8439AE25, 0xA70D1AAC, 0xBBF75368, 0x8F4B0286, 0x0FA9861F, 0x46A47328,
+0x29EA50B9, 0x97D4AB9A, 0x9A62A0CB, 0xBF356048, 0xFA0A3BE5, 0x2DD97524, 0x56BA32CB, 0x82CECE76,
+0xF28E0831, 0xB834D4DC, 0x412FB271, 0x452A9986, 0xBBA3404D, 0x3697D88B, 0x4FD31603, 0x9898BE34,
+0x0BF50B87, 0xB71FD3E1, 0x4DE4CDFB, 0x5FBE64FF, 0x37062223, 0x0497D237, 0xC07F1756, 0x1749FE3B,
+0xDF16851C, 0x2F8299E1, 0x42580BD5, 0x1ED044D8, 0xD2685C96, 0xB03E030F, 0xEC1EC5C7, 0x61EB8532,
+0xDCD27E91, 0x045CF8DB, 0x13F936AE, 0x98D5BB31, 0x408C6A2F, 0x49787AC9, 0x161F3356, 0xE16B37B2,
+0x4A02BC7B, 0x42484702, 0x240B9C13, 0x6C00D307, 0x7B67CFF1, 0x2FF05572, 0x787813C4, 0xA745CF18,
+0x2C9C978A, 0x6662F3AF, 0xDC86A938, 0x06CE4567, 0xEEE1BB27, 0xE7455464, 0x5EB701E5, 0x6DC61C3E,
+0x2464040D, 0x16B64AB7, 0xD88880EC, 0x06BAB2A3, 0x1E8E377A, 0x43127A6A, 0xFAA3C6FA, 0x824C8551,
+0x36744C50, 0x70C350DA, 0x5D8C4DA2, 0x7A106CCF, 0xF7F694B4, 0xCE4BEC71, 0x9491DEAD, 0xC6E26DDA,
+0x6F43816E, 0x7F78F21A, 0xA11829F1, 0x76A5EAEA, 0x34D30A5F, 0xFB01BE2F, 0x7DEB843C, 0x5488D6ED,
+0x8FD99CF9, 0x404DD410, 0x54596E7D, 0xB89AFDBC, 0xB90B7B49, 0xF15BA117, 0x30D96B7F, 0xDA03F3CD,
+0x1C01A627, 0xFD13F380, 0x12F85307, 0x7056D4F6, 0xF70157A1, 0xB1BF5605, 0xE06514DD, 0x46A76E0B,
+0x29B63CF5, 0xF49E2692, 0xD42723BD, 0xE489B80A, 0xB04359CF, 0x84DBA8D7, 0xD6EC74A9, 0xF06C28AC,
+0x16A2C28E, 0x3EC00278, 0x47BB3288, 0xEADC524A, 0xD0D23E9C, 0x61A47B6F, 0x4D269AFE, 0xC900B24F,
+0x56444088, 0x778C5F46, 0xEBEC411C, 0x59FD2DF3, 0x1E826D6B, 0x520144C9, 0x07A3D481, 0x6B1068E3,
+0x074E3072, 0xFDE25B8B, 0x25C55A58, 0x6BD45143, 0x9724CE37, 0x771A2DAA, 0x8B781700, 0xDEA9126D,
+0x3055CE17, 0x5E5A06CA, 0x5DAE7768, 0x2181E8DA, 0x53A7E486, 0x63DAB565, 0x86780B2A, 0xB5AF185C,
+0x3089D64A, 0x0DC870E1, 0x05F7BCC3, 0x711AF03E, 0x9F656125, 0x5157A522, 0x9DCB60A9, 0x5E65C504,
+0xFAF9A0FA, 0x026B74C0, 0x817DF6EA, 0x655BABB3, 0xB0D267B4, 0xC2BD1383, 0x23AE3546, 0xB1356DB0,
+0x7D6E6E11, 0xBAC8D9F7, 0x6855827D, 0x1683312A, 0x0CB67502, 0x71C1A4CA, 0x30213F38, 0xFAF94014,
+0xCEB0CBA6, 0x620D11FF, 0xB2537060, 0xEF4A086D, 0x2442137C, 0x86B30161, 0xE5E0FD59, 0x302C54B6,
+0x09DD4A13, 0x1F6AB467, 0x3D1FB2B8, 0xE887CD27, 0xA51AD1E1, 0x056922E9, 0xA3B2AEF3, 0xCD120CB3,
+0xDCAE5B60, 0x8957BDCC, 0x8182EFE1, 0xC2FE39DD, 0xB338660C, 0xD915FBC5, 0x824977EC, 0xD0A16B2D,
+0x6C35705D, 0x42FC9B2D, 0xCC6AD747, 0xAEC4604F, 0x6422B323, 0xDE703C07, 0xB9DBD03D, 0xA5E6EE25,
+0x1552C578, 0x2ADA5112, 0xE7B2A451, 0xE04F9FDB, 0x702A370B, 0xB49ED4F0, 0x0F0881C7, 0x2FE8A1CE,
+0x9C5FE0C9, 0x2B852575, 0x424B0850, 0x02F05098, 0x35296A4A, 0xB4DEEE50, 0xE21EC137, 0xC41DF377,
+0x9B2344FE, 0x82347581, 0x0EEC003E, 0x94EEE367, 0xA75731B6, 0xAA4A9AED, 0x40ACBD53, 0x72608599,
+0xC9D6900E, 0xEEA0220D, 0x774390F1, 0xA792E3B8, 0xC201B206, 0xF71FFC19, 0x4EF49CDE, 0x0AAFA8AF,
+0x64FD6B9F, 0xBDDD9C28, 0xEDED1081, 0x87D05EA3, 0x611A0644, 0xA2C96BFF, 0x4CABCC41, 0x98ED1F34,
+0x197E462A, 0x8A025258, 0x58E73EE6, 0x2E8FBF49, 0x68499731, 0xB3642B29, 0xE7B1C091, 0x5BE646AF,
+0xAC5B2D48, 0x9734B71C, 0x3399A4B5, 0xF7EE85A5, 0x64243602, 0x96E5DA70, 0x4D062F64, 0x4E7429FF,
+0x901F524C, 0x11CDC792, 0x0EA5D848, 0x5C21965F, 0xCA3302CB, 0x1CC756CA, 0x6DE8CA7E, 0xC996FB20,
+0xE10A7AAA, 0x376E9AA4, 0xA0E78932, 0xCCE808C6, 0xB7879970, 0xC715814D, 0x6ACBE624, 0xFAAC2C6E,
+0xD7F5336D, 0xFF849FA8, 0xBF284DFD, 0x6F25D7C2, 0x5D7877B5, 0x89F63A0D, 0xB1FCFA3B, 0x37C12F44,
+0xC031AD81, 0xF826EE49, 0xB78658CD, 0x9968ED0B, 0x33B338C6, 0xC935B6A3, 0x3B2BFD7F, 0x60D0DC6E,
+0xAC9F20DB, 0x0B674B27, 0x6008BCA2, 0x0F1BC901, 0xC262E066, 0x0D95EE6E, 0x73B9EFA5, 0xB0DFEB29,
+0x83A8E7E1, 0x31751206, 0x4CF2BFD9, 0xE28A7B60, 0x980C4E3D, 0x36843121, 0x20A4385C, 0xA3814940,
+0x49FDB570, 0xC9B0600F, 0x67AF57CD, 0x6DC54777, 0x2E0BC7D2, 0x5008801D, 0x60DCD20E, 0x061F31CC,
+0x65306AB7, 0x135B130B, 0x5C9D852C, 0x2EAD403C, 0xF5EE1297, 0x73B0B812, 0x523B56B5, 0x5DBB1917,
+0x577B95C0, 0x6FFF516B, 0xF02B39B8, 0x65079E59, 0xDB666E7F, 0xA5398430, 0x657302CE, 0x82849229,
+0x9E114184, 0x7F0FE07D, 0x5FC5D295, 0x851E2138, 0xE0BC3335, 0x04313A55, 0xF1D6C3A6, 0xDE0D38FB,
+0x3028681A, 0x88CA8F8F, 0xEEA85A52, 0x82E64815, 0xD9F9DB4C, 0xE05EA64A, 0x5817CF46, 0xFEA15D26,
+0x6D1036CB, 0xB93E13E7, 0x62A25EE2, 0xE40071C2, 0xB7A9D99C, 0x8C13349C, 0xDC888FC6, 0xEFF977BC,
+0xE095C75D, 0xDF6A5151, 0x37EA0AD0, 0xD75CC241, 0x6B113358, 0xFEB97FF4, 0xD36C6EB0, 0x8B40F207,
+0xFE581956, 0x9BC639E5, 0x7238983F, 0x5DC89076, 0x35DF2FA9, 0x4D51A214, 0x2D6AC8C9, 0xE0D7EA4B,
+0x071A4E11, 0x0C5D313E, 0x701427CA, 0x11FC8373, 0xE09B802C, 0x160B75B9, 0xD1D60D3B, 0xE6F88749,
+0x661BAEC2, 0x31DBD429, 0x5AD5AA49, 0x2DC448B9, 0x7C271827, 0x4273A8DE, 0xFDDFF26A, 0xAD31CBBE,
+0x969B6E66, 0x10E0F977, 0xEACAF207, 0x5C124D5B, 0x29680874, 0xEC8B86DE, 0x5708E28F, 0x1DD797C2,
+0x1C193DCF, 0x45BFFB6C, 0xBFA126EF, 0x112B391F, 0xF88FE60B, 0xDCA6466B, 0xC0194BAC, 0xD1A031BA,
+0x07994567, 0xE3080CCA, 0x6B33AC4F, 0xD1CFBA32, 0xCE78F521, 0x2044DAAA, 0x5F9B8285, 0xC07DAB4F,
+0x0F5B1CAC, 0x85526F7B, 0x11DD71E2, 0xE83C3696, 0x2AB81918, 0xA8F36C1D, 0xEC1A2422, 0xAC2D8709,
+0xD0F52C54, 0x006E1409, 0x90351B3A, 0x92D2225B, 0x2CED280A, 0xAD4ECBF2, 0x720DD83B, 0x28D29E33,
+0x37154D0C, 0xFEF9361F, 0x1A7307D2, 0xDAACDC87, 0xF5B5239D, 0x8E654172, 0x85F6E0FA, 0xFB588FCA,
+0x041B8289, 0x63056665, 0x3B8E572A, 0xF8A6A6DC, 0x5B2A791C, 0xD6E35E02, 0x08C7052A, 0x441903BF,
+0x253754B8, 0x4C656A5D, 0xAA350C1B, 0xBD1CB2FB, 0xF0A13B3E, 0xA654B363, 0xB19E3F42, 0xEBE2FF5D,
+0x5A236AB8, 0xE26DA837, 0x897FFC7A, 0xC8E8A26C, 0x494392B3, 0xADDC09CD, 0xF701CA4E, 0x2B7578B2,
+0x737B0CE5, 0x4DD1BAD1, 0x18855015, 0x8CA40128, 0x6FAC41C3, 0x6085F1F0, 0x0F81FAFF, 0xC507DD30,
+0x3495F4C9, 0x99134046, 0x122B23A5, 0x42360A4A, 0xFC4EBB73, 0xF2E13E3C, 0xCEF17961, 0x32885E13,
+0x212C57CD, 0x5E5C9203, 0x9DC5F90C, 0x3E8D2DA5, 0x1B8ACBC3, 0x964BD320, 0x26233CCC, 0xA3912EFE,
+0x61AE56F5, 0x31D5E10E, 0x1C328515, 0xA3276FEB, 0x71AE00BD, 0xA53882EE, 0x96478AE5, 0x5156418D,
+0x201CD9E9, 0xE72DDB04, 0x4FCC1AA3, 0x23096C17, 0xD2B0AC2D, 0x7295C3E9, 0xE8BE06B5, 0x49B0AF31,
+0xF81452E4, 0x02A5DBE1, 0x6DED2789, 0xE817C69A, 0xD7F3754F, 0xB739C197, 0x35CE4231, 0x4D4143D6,
+0xCB5B05EC, 0x44B58443, 0x1CF34D21, 0x4B291058, 0x5F9775B7, 0xA57B0B7D, 0xFA0E5DD1, 0xC9FAD368,
+0xD0B11478, 0x1F8DA6A4, 0x11ADDC02, 0xE09322BF, 0x05D44AF0, 0x523A305B, 0xBA7F483C, 0x54351430,
+0xD29A4979, 0xB9FBE435, 0x2DB188AB, 0x49DFDB56, 0xCCBD9674, 0x614D8539, 0xACAE569C, 0xCCE5C24E,
+0x9825D95E, 0x3F12C811, 0x8BF4F0B6, 0x5C1AB2E7, 0x1B4AF697, 0xCA7293DC, 0x170850EA, 0x63A69026,
+0x8E243594, 0x3065D748, 0xF58E7E79, 0x97F4EEA5, 0xC3CBCEE1, 0x08DD2ACB, 0xA4FEAD27, 0x7CB08ADC,
+0xDBC25A04, 0xA2E5DBE2, 0x5EB46BBD, 0xDED19725, 0xD84A31AA, 0x97D75FEC, 0x1C0D8C9B, 0xE08508F1,
+0x68E02E3F, 0x422CB29E, 0x03C74DB8, 0x292EE9C7, 0xC79EC2C8, 0xEC0E01CD, 0x008900CE, 0xBA3D759D,
+0x82D04907, 0x26D55DED, 0xDD48428B, 0xB327A53D, 0xA53B095E, 0xECD18820, 0xF33B4B73, 0x5B715A61,
+0x06CABBFE, 0x4D9D2A3B, 0x8A8DA9D2, 0x5725746C, 0x89B7E1DF, 0x606C276A, 0xD010604E, 0x325F60C8,
+0x35501323, 0xE6FBF10D, 0x66A7384F, 0x956CFE75, 0x5455EBDB, 0x03C3DD66, 0x9409D921, 0x26E41C98,
+0xBC6A1C63, 0xC62E7DE0, 0x6AD40068, 0x90175B73, 0x4E28D937, 0x7BB5D1CE, 0xE2030C8D, 0xE9810D1E,
+0x89066B1B, 0xDB67AD86, 0xD0E43030, 0xDC9E17FD, 0x5D84463B, 0x47579248, 0x7053B0C2, 0x7194CCF8,
+0x461D0B35, 0x73F9AF98, 0xAAD433B6, 0x642E38E7, 0xF05EB6BE, 0x6160E917, 0x4CB6B8C9, 0x8E042EB5,
+0x5193847F, 0x7F8221C8, 0x94C28804, 0xEC647253, 0x49951C21, 0xAB40DC07, 0xFB26CAE3, 0xD6F0B0C5,
+0x8570E138, 0x2A3ADD72, 0x81985AF2, 0x271F8375, 0xECA68C63, 0x21214398, 0x505E68EA, 0xE734EC76,
+0x741D7673, 0x3B3D8992, 0x5716E5DE, 0xC85D48FD, 0xF2207A80, 0x2B54E610, 0x6207F7F7, 0x9D0AC41E,
+0x3F9B6620, 0xAC6265C5, 0x186D19F5, 0x2958A245, 0xF344B045, 0x98626802, 0x24D8D908, 0x17E86EA6,
+0xCF2C9FE7, 0x9F3901E7, 0x705C204B, 0x772B4487, 0x3356B789, 0x2DAA55A5, 0x07B3C042, 0x62E01FCC,
+0x1FB6807D, 0x4BA839FD, 0x3DBC2068, 0xD3AF185F, 0xB2BB6D23, 0xC8855052, 0xAE396866, 0x6ABB8EAB,
+0xB271E198, 0xFCC97E97, 0x2EFB239D, 0x36497538, 0x982D45BB, 0xB7313141, 0xA96C73BD, 0xB554DB43,
+0x185295C8, 0x1F4617F8, 0x13517266, 0x55DC5701, 0x111CD947, 0xA0739068, 0x189F682B, 0x69CBD159,
+0x09FEAC66, 0xE9B9031A, 0x39C2E7B8, 0x4B027FF1, 0xD63613C3, 0x4A035918, 0xDF983E35, 0xCBCB90BE,
+0x7ED0295D, 0x5E962959, 0xE0A6788A, 0x27486477, 0x94C4001F, 0x1E839175, 0x07F598BD, 0x98F33ECE,
+0x2620AB16, 0x534C57D3, 0xC84F2CF8, 0xBB62FFA1, 0x7060D94D, 0xC019FDF5, 0xAB4C8E28, 0xD28D3812,
+0x8C194F08, 0x87F957FE, 0x040CBF27, 0x97F519B6, 0x1828106A, 0x9E940BE3, 0x55191844, 0x941F14EC,
+0xFC2404D3, 0x0A190813, 0x7434DAB8, 0xE7C51CE3, 0xBDF97C05, 0x47039BD4, 0x846772FA, 0x05965F7E,
+0x525DD107, 0x5E861B04, 0xEAF7FD5F, 0x5C62E8D3, 0x312B0B41, 0x9114D199, 0x967EAB40, 0x3EFBAD09,
+0x8785D5EA, 0xF92D86D0, 0x3F50AE89, 0x84B9B811, 0x986DDCDB, 0xFF5FA1C0, 0xE9F57225, 0x305C47F7,
+0x5E33F1D6, 0x4C9E6F6C, 0x1B81495C, 0xFD99C276, 0x691E3CAC, 0x25DDECB2, 0x9F1B0FCB, 0xEDF4942A,
+0x4EB56690, 0x8712B337, 0xDF5815C7, 0x5051B627, 0x31AEED1D, 0x09A681B6, 0x13F530E2, 0xC037D532,
+0xDAB82E51, 0x84612585, 0x46109BAE, 0xA1D634C7, 0x3332E59B, 0xB7999A27, 0x427C4A8E, 0x9FFFB3D7,
+0x62C35F49, 0xC5ACBA47, 0x072E7F8D, 0xF64B4E1E, 0x66A74226, 0x33F7AC75, 0x64FB3EA1, 0x08A88E2B,
+0xABAA0E4D, 0xE00F461E, 0x0685E25D, 0x0AD61253, 0x4C5F7727, 0xDA7DA439, 0x022322AB, 0x11C717AF,
+0xA936C14B, 0xACE0871C, 0xE258467F, 0xD78B2230, 0x7A63D61E, 0x5388F3CE, 0x150F5E20, 0x3BBE049F,
+0x5679EFE6, 0xD2177102, 0xC5B59990, 0x31700357, 0x8900913F, 0x671341FE, 0xD5129E2E, 0x21C16041,
+0x551496E4, 0x21520897, 0xE93BF9B9, 0x6AD185B5, 0x4BA00B23, 0xA2F24410, 0x6327A08A, 0x8086A271,
+0xD16B2B2B, 0xC7299D0D, 0xBFCE1217, 0x7ED89C79, 0xF267B060, 0x17CE18EA, 0xC750B386, 0x72244ED2,
+0x165043A6, 0x235BA50F, 0x80C24F1C, 0x03C1B184, 0xCE1109ED, 0x16A4ABCF, 0x2278E20B, 0x027B6C1D,
+0x41F81BDD, 0x514AFF2E, 0xADE88BDC, 0x1F90A874, 0x424F02A0, 0x701F008A, 0xFE7A2B3B, 0xD767D03E,
+0x8D8CEF0A, 0xDE883286, 0x90E76643, 0x766FDFCF, 0x049A4905, 0x7509A39B, 0xE16EA5C0, 0x4976DF58,
+0x7A944BDD, 0xB50067DE, 0x9861FE39, 0xC627E97D, 0x9DF30A0F, 0x47665568, 0x0ECE7AFE, 0x9C95FB60,
+0x16C4B9F6, 0xC0317322, 0xE7394A3E, 0xCE097C83, 0xFD08087D, 0xEF324E3A, 0xF2C0B3D7, 0xB599EC63,
+0x2EB38A55, 0x289EFAFF, 0x995E3C54, 0xE05D283F, 0x275ABE67, 0xFCA61686, 0x81E76960, 0x1C34BF63,
+0xC4C9AC33, 0x4993778C, 0x767FDBE5, 0x53FE3E73, 0xAC6A424B, 0xC9810E98, 0x6CFF8606, 0x09B85ED0,
+0x70D96206, 0xEE556D74, 0x076586DA, 0x88113E12, 0x38FE5AAD, 0xA573CE85, 0x78F6AD04, 0x524A4BC3,
+0x1ADDE001, 0x24580D8A, 0xC5E458BB, 0x273DF0A9, 0x4C592F51, 0xA6F3F6F4, 0x19738E96, 0x9AF65527,
+0x9078CB8A, 0x620B3BC3, 0x8EE5041F, 0x9BCF2225, 0xC383220C, 0x8F7CB79A, 0x41494C19, 0x7630C9FC,
+0x68540EFF, 0xB04383AC, 0xACDE53B9, 0xB1733217, 0x15E0FB46, 0x412A472B, 0xFD9E45CD, 0xAB136B15,
+0x84A4A949, 0x3C966EAD, 0x9BA98186, 0xA28A4A7C, 0xAD245567, 0x8E54FA96, 0x13E0098A, 0x99E8B848,
+0x5A4AD773, 0x00836ADF, 0xA7F0E372, 0x2231684D, 0x6986578D, 0xED61C5AD, 0xF2C5F45C, 0x351ECE9C,
+0x36FBA8DF, 0xA1F00289, 0x17A63A63, 0x1ECE8098, 0xF1F140C8, 0x1EFC3932, 0x1621D761, 0xAF3E50BF,
+0x90BF9F9E, 0x49D891BF, 0x2FD95FA3, 0xA6B320EC, 0xD9273B29, 0xF5DC28AF, 0x953668F6, 0x84627C5F,
+0xD9E6146B, 0x4240ECE8, 0xA0F4A2CB, 0xD175FE96, 0x3478C088, 0x9EF1BFED, 0xC95E932F, 0x5787E0D2,
+0xDF56AA5C, 0x03B011F6, 0xB05D5756, 0xF9A93370, 0xAA04CC1B, 0xEBB234F6, 0x2C8BD332, 0xBA1299A6,
+0x6BA4F080, 0x09D088A2, 0x420CE06C, 0x9501D478, 0x6D15831A, 0xF964B070, 0xEC285449, 0x5FC6F79E,
+0x0B1ED49C, 0x4156D63E, 0xC5ADA495, 0x0FD23325, 0x5B279989, 0x80095A3B, 0x20E31992, 0xBD8DFCD3,
+0x4837DD91, 0xF3EB4AAA, 0xB17B6629, 0x6B80240D, 0x90180761, 0x1F82A462, 0x33F7F739, 0xBD2D1B06,
+0x1165EA93, 0x36D2484D, 0x7E287BAC, 0x33C25D7E, 0xC3840CC2, 0x46FBB402, 0x1CB2F14A, 0xDEAC0228,
+0x9A882841, 0x93D05071, 0xF3424CD7, 0x76676EB1, 0x481D09FE, 0x604B3D47, 0x6C4AB50E, 0xB7821167,
+0x91ABF580, 0x3FBE7F9A, 0x1E95513F, 0x5DFCFC6F, 0x011D08A0, 0x6F0CAB9D, 0x6AE43007, 0x025A2A75,
+0xB808E95C, 0x669126AD, 0x31DD35A6, 0x07F6E110, 0xA9437AAB, 0x57F69018, 0xED06776C, 0xCBDDE3CE,
+0x8CE79253, 0xC98B5A52, 0x7B81DEC6, 0x72112994, 0x06505B88, 0xD5B120D0, 0x6B327C2A, 0x44B64480,
+0x09CFFA51, 0x668F7E0C, 0xD4B1E6BA, 0x65C2E7D8, 0xCEF856B2, 0xF379F622, 0x6071B74D, 0xAFD68A8D,
+0x779BEA9E, 0xBAF257C0, 0xAA50369A, 0xA7F749A8, 0x62FCE462, 0x2EF6E411, 0x93204CC8, 0x707E8E1F,
+0x4E2975B6, 0x4114FE35, 0xE03D5173, 0x7C63A868, 0x9F483D57, 0x8356C13D, 0x31FBFEA0, 0x5BC3A19B,
+0x1837BA9C, 0xFD13680F, 0x39D6C06C, 0x11268B22, 0x2D50BAF7, 0xD9499657, 0x569C9003, 0xCB31D138,
+0x1E92625F, 0x129B9FC8, 0xE3C233EB, 0x12B5B7EF, 0xDE2254BA, 0x6A919F31, 0x2815A145, 0xD7FC952A,
+0x1BF18743, 0x52A70819, 0x13634747, 0x5FABC4A9, 0xBFA3455C, 0xEE9250C7, 0x4D568800, 0x4F3C742A,
+0x0FC2612E, 0xC64830D5, 0x4E04376E, 0xC8598CD3, 0xEE657EBE, 0x0EB85C07, 0xFD53DF72, 0x8320F0C9,
+0x35421A0D, 0x4B400622, 0x5A198271, 0x511EF2FC, 0x2AC2E1F5, 0xBE2B1377, 0xEAECCB54, 0x780CF6C6,
+0xC2BAAC56, 0xCAF3A17D, 0x5DE86596, 0x04EE1728, 0x9A5D2C37, 0xDD181B75, 0x2DAD8AA8, 0xE7807B18,
+0x72F8C39D, 0xC8B5F2A7, 0x150CEF0F, 0xCE5A24AA, 0x6056FE04, 0xE7982AA5, 0x42DCE76B, 0x3F93C5BB,
+0x22D8B8A1, 0xF6B783AC, 0x9EE5AE65, 0x6FF03BCB, 0x6F4140ED, 0x013F0C6D, 0xB29F0084, 0x12092B9E,
+0x63563C99, 0x481180F6, 0xBDA30A4B, 0x9F558C48, 0x644BB530, 0x5FB9FC2F, 0x9AF2D2AD, 0x5AE79610,
+0x9784C957, 0x3A2169E2, 0x9950A1B7, 0x05F17DEE, 0x5DA301EE, 0xEACAFDAC, 0x5FB09FC9, 0x11CA55A9,
+0xA8E81F2E, 0xC6E97B8E, 0xF28B3E86, 0xC179886C, 0x3692DA04, 0xF8B4EAED, 0xFB2ACD1B, 0xD203EF77,
+0xD7A82785, 0x0C606DC9, 0x7FCE1B58, 0x8E70723C, 0x3B9734FF, 0xAEE10857, 0x72986833, 0x58D7300B,
+0xDE42D1A1, 0x88566EE7, 0x4911A1D0, 0x12E7A147, 0x9045E852, 0xAE11663D, 0x98472928, 0xC1CD17A9,
+0x6AB332C3, 0xC958CA0B, 0x391EAB62, 0xF191161B, 0x6FE2ABE2, 0x8FBEA2F3, 0x70D3AF02, 0xDD854B1A,
+0x2E651BA2, 0x86457EFB, 0x13EA04E5, 0x28EFA236, 0x1F496678, 0x33C40368, 0x6AD81313, 0xC6D31E51,
+0x44D17DE0, 0x4C0CC49C, 0x851D7BB6, 0xC835A5B9, 0x14211202, 0x169EB403, 0x75DAAEAC, 0x7B24797F,
+0xE5132113, 0x832A638E, 0x74ED773C, 0x4BA9607F, 0xAA23B5D4, 0x3DE4FEA4, 0x363B5EF2, 0x2AB1F670,
+0x0B9B91D9, 0x530425A0, 0x44480C4A, 0x0B1AE1D8, 0x8C67EC82, 0xD06C7645, 0x4B71374D, 0xB9FFDCBA,
+0x6B2CEE08, 0x4032E2A4, 0x396238FB, 0xECDE467C, 0xA35439A3, 0x18B96C5F, 0x6089A79E, 0xD2459383,
+0x86505E58, 0x19E4002E, 0xFF11D333, 0x433DD514, 0x5610E496, 0xCB5D99BB, 0x16D22E7F, 0x9F1E41BA,
+0x9CA99ACF, 0x0C45E866, 0x1F908692, 0x671DACE7, 0x8A468DE1, 0xAA02B81D, 0xFBA1A255, 0xB4822ABB,
+0x7A9E6E8B, 0x27FE6F86, 0xE0C397FD, 0x0C68389D, 0x98B69A7C, 0x82AFD2B7, 0xE7BFFD3E, 0xDF52ED63,
+0x46537D46, 0xE768A273, 0x9C0F5128, 0x0434E7D0, 0x894C1E78, 0x97166CB9, 0x94297978, 0xB51954B4,
+0x51174F8D, 0xE18A8562, 0xF14F669E, 0xB2F11A01, 0xECE8A9B8, 0xFD2214AC, 0x725A05CA, 0x1261F3B8,
+0x469CE8CE, 0xA76AD56F, 0xAEF0F99E, 0xD8645AD9, 0xE5A53E76, 0x57BF502B, 0xAF46A1CD, 0x148FBBE7,
+0x712BFD0A, 0xAA6A10F4, 0x7B363DE1, 0xFF695D8E, 0x8FF4DE65, 0xF8C96291, 0x08EC27CB, 0x0E378ACB,
+0x6E0D1491, 0x8F4C91CA, 0xB5E53FC4, 0xF7240E91, 0xC1832498, 0xE3ACBEDF, 0x334F5E2A, 0x474045A8,
+0x285ED46A, 0x0813C149, 0x18C2CA55, 0x67223272, 0x78895E2C, 0x6FA32EDF, 0x94B452F2, 0x94F9A114,
+0x0DA581E4, 0x6FDB7084, 0xFB1EA9E7, 0xA3D5B02E, 0xD0EDA2DA, 0xF64821DA, 0x12A9C136, 0x57954577,
+0xCF9AD25E, 0x8AB6F482, 0x7DABD45E, 0x2C05972F, 0x80DAFEC8, 0xA5CF4423, 0x09F3B22F, 0x1BB94BFA,
+0x74B1BCD8, 0xC9C4EED5, 0x67BEC265, 0x0F4E84C5, 0xA600A54D, 0x238C8C3C, 0x9224D124, 0x0867CDC4,
+0xA7D5B5B5, 0x10AD34AA, 0x9AF2AE2E, 0x048E2216, 0x548122C9, 0x86EB4662, 0x5C023867, 0x0572EF75,
+0x8DB01DDC, 0x087F359C, 0x0152884B, 0x1CA52DB2, 0x8D1B9919, 0x0FA431E5, 0xCE72A2E6, 0x4797C93A,
+0x8C78AC64, 0x9D32BEFA, 0x5E633B0F, 0x464395F7, 0x7FEB88EC, 0xC43A5559, 0x5A34A8FD, 0xA2F1F4F3,
+0x247580AF, 0x7674AAFF, 0x61085692, 0x5B0357E0, 0x7321C252, 0xD1138803, 0xF3F57F56, 0xE7E95F00,
+0x12065207, 0xCDD4C5E3, 0x22226389, 0xD121083B, 0x0D1D0560, 0xD1070E35, 0x5D6F8F8F, 0xDE1C0EF2,
+0xA9B2A5B4, 0xFC7DA784, 0x6EE7D943, 0x29CB1F4E, 0x64836E76, 0xF07D20B2, 0xEE703CE6, 0x34788309,
+0x8D71C7B5, 0x36F17A5E, 0x61E1790F, 0x4ACC83B6, 0x278F255E, 0xDC61B632, 0x332A2E99, 0x13D56E92,
+0x4716B1CD, 0x0C649D57, 0xD13EAF9A, 0x5096627C, 0xB08A057D, 0x3769C151, 0x0047DF37, 0x21BB7B7D,
+0x12D9F07D, 0x336A1E3D, 0x0AF54A21, 0xCB354440, 0xC6486FB6, 0xCE30F25A, 0x5E891E7E, 0xAE97257A,
+0x31E1669D, 0x504E6165, 0x81FCD56C, 0x58EDAF56, 0x02004B6F, 0x75A4358D, 0x634BBF77, 0xBBAA5A51,
+0xD8A50514, 0xC3C10CC7, 0x79D88D3B, 0xECBF422C, 0x13F52DB4, 0x8122EA3B, 0xFDCEF453, 0x3575D861,
+0x92253DA4, 0xBBF49743, 0xBBDE1929, 0x35BB4212, 0x301689A2, 0x2E058C3F, 0x127EDF7E, 0xBD91500D,
+0x81C3D5F7, 0x94050973, 0x2208E17C, 0x2BA5D285, 0x22803A6F, 0xA99B9BD5, 0xE8A3AB85, 0x722C62C1,
+0x2E3697F7, 0xFD849BC2, 0xE81730CD, 0x84F3ABCE, 0x0AA3F57E, 0x4EA4E8FC, 0x7738DBFA, 0x1DB9B523,
+0xCE10CEB5, 0x40041932, 0x28A6E965, 0x272F5CB8, 0x5058337C, 0xB24C35E6, 0x28DCF258, 0x84601712,
+0x6A343CDC, 0xC0AD3B5B, 0xD404C163, 0x0D6B0AED, 0x8B436C5B, 0x4C86C694, 0x5BC0B543, 0x1F562E2F,
+0xD42B9B3A, 0x61810284, 0x99236E0A, 0x75A5EE02, 0x0BE3171B, 0xCF41E29F, 0xB16A231B, 0xC0DAE878,
+0x4D3DA4EE, 0x40EAE706, 0x54585DCF, 0x5B45806F, 0xEF3B152F, 0x379C8C31, 0x48B6BCA8, 0x9D2FF120,
+0x2E9AE717, 0x71670C93, 0x371BCFBA, 0x95D09D23, 0x3A98701B, 0x36F40C80, 0xCD8135B9, 0x7CE43245,
+0x28EEF7EF, 0x3C42D987, 0xC5B86715, 0x6FF8BDC6, 0xD24B457A, 0x51D3CF8F, 0x4397628D, 0x45C2B685,
+0x29540F8F, 0xA9318CDD, 0x7D29F381, 0xE6C327A1, 0x5D7D42A3, 0xCA51E4FC, 0xCA4DD465, 0x8CA046C9,
+0x90B75441, 0x004273EB, 0xD92E7C6D, 0x47BCAEB8, 0x37DBB4F5, 0xBE1A88C0, 0x751EC376, 0x738E08FB,
+0x0A60FA08, 0x1C968066, 0x8B8F273B, 0x91BB4CB2, 0xB4CA1199, 0x795DE8C9, 0xDF5BD804, 0x35A3568B,
+0x40C63911, 0x97F5E15D, 0x534D2019, 0xF955E7EA, 0x58C659B2, 0xEB03F821, 0x4D570AB7, 0x1E625AF1,
+0xE6FB8EB3, 0xCDDBC337, 0xE3977F8E, 0xAC7C0700, 0x8D4A5771, 0xF82C82E6, 0xD2CB0934, 0x32691BF7,
+0x25DBF04F, 0x52923B3B, 0xDA38D70E, 0x826E86D8, 0x9A376BFC, 0x9927DD3B, 0x90275D71, 0x802802AF,
+0x580ADE68, 0xE570C7D2, 0x2F686D44, 0x5B7795E6, 0x68C76722, 0xFAC03E70, 0x1460158D, 0x1E1A2245,
+0x1E219038, 0xEBF1187B, 0xAC98BB68, 0x467AA429, 0x29419424, 0x02406778, 0x3F11F6FE, 0x7E196147,
+0xC05F6C08, 0x025376A2, 0xDC2DA333, 0x250EAEEA, 0x446CDFAF, 0x66DCEEF6, 0x11B8ADC1, 0x910E70D3,
+0x0149147A, 0x28DC5414, 0xA65154BC, 0x49B533B3, 0x6E103861, 0x19D7D13B, 0xCFA439AF, 0xF702F0BB,
+0xAED55275, 0x6190C7F0, 0x9E132B33, 0xE9D9DAB3, 0x206214E7, 0xBF52EB79, 0xF878E417, 0x6D4B61B5,
+0xAA045C41, 0xDA403AF4, 0xC378A220, 0x06E1571E, 0x64016070, 0xB3FDA70F, 0x33617751, 0xB6F5F4A8,
+0x90EA21F0, 0xD0F2B2A5, 0xF0A1747C, 0xB135B369, 0xD67FE964, 0xBE8A7B2F, 0x071BE1A0, 0x4447D8B9,
+0x8B441902, 0x2646ABA1, 0x1EFE8EA0, 0x86F970FF, 0x3DDE18CA, 0x80A00320, 0xD1E2AB07, 0xC784EF9A,
+0x9F550D64, 0x8C69E19E, 0xEC156465, 0x9A13C756, 0xB4592520, 0x410881A5, 0xE85B21AA, 0x27FBB5A9,
+0x256E88AE, 0xEB3C8BB2, 0x9CE6A9A4, 0x23D64A5C, 0x6A807B35, 0xF92862F7, 0x84C0AD29, 0x382763DB,
+0x790BBA82, 0x7E6CF449, 0xB9479E5C, 0x84576270, 0x98AE4A1B, 0xEC50B177, 0x2885E71D, 0x32E500F0,
+0x69BDCEEE, 0xBDA7AD08, 0x9BEE8D27, 0xB3056B1D, 0x6C836E81, 0x302EB1C2, 0x7EE88808, 0xBA5F6F97,
+0x737FAF58, 0xFAEDD6D6, 0x8536FDC2, 0xEF0C67C3, 0x687666A5, 0x38992FF0, 0x542CF4F3, 0x50594BA1,
+0xE50BE34E, 0xA9E284C0, 0x2F74C8BE, 0xC88528F0, 0x190B30A0, 0x54F5109D, 0x35B2E962, 0xC346FE9F,
+0x77E86889, 0xE34C4A72, 0x13B88C27, 0x5D072AE1, 0x4B00F9F8, 0xED8318E4, 0x785E55EC, 0x9795F6F8,
+0xB5DB56F6, 0x8001EFDD, 0xA13258F4, 0x2275BE2E, 0x0E69AD9C, 0xF8ECF67D, 0xBD940791, 0x1576CDC7,
+0x303F1B8B, 0x8CBF4841, 0x6E8E6B6B, 0x8777B854, 0x3C9E46D5, 0x9F97CFFD, 0xAA74996A, 0x61E16DB8,
+0x29C74AF1, 0x524E919F, 0xB9683CEB, 0x2ABDCA26, 0x2C8AF864, 0xC9FC66FD, 0xD9616113, 0xA82FE6D3,
+0x464E1317, 0x4676393C, 0x8C75C1D4, 0x7606D6D7, 0x255E45B7, 0xD8DFFF30, 0x9C22E3FF, 0xC017E50E,
+0x1DBC9BC3, 0xEAB73F15, 0x5F1D30C7, 0x284617CC, 0x8F493575, 0xCA3C0FF4, 0x763F5D63, 0xB90CA38B,
+0xD6667DD8, 0x388BB80E, 0xA9FDD954, 0x75752F86, 0x01E913C9, 0xC87F06D7, 0x6A5B4454, 0xCB612C79,
+0x68D3B1A7, 0x8003BB39, 0xE419BD39, 0x16279680, 0x201D2610, 0x221B6D57, 0x85797920, 0x21EC4DF6,
+0x9654B449, 0x4FA040CC, 0xC4244711, 0x7A126F3D, 0xE7ED8602, 0x3D6C7DE5, 0x83F608A3, 0xC3FB551C,
+0x8D3FB98E, 0xEFC1C71F, 0x49F75614, 0xC73F6C8B, 0xC574E790, 0xC0D6C072, 0xD0E5B96C, 0xCB75401B,
+0x729C0AE3, 0xC56F087B, 0x1C69174E, 0xD66C7E6F, 0x27CB5328, 0x3D3A2DAD, 0x87460DA9, 0x13620D8B,
+0xB092DE75, 0x60E80C34, 0xD619535B, 0xF6F0A531, 0x116BCFA3, 0xDC071AC5, 0x7F061ECB, 0x9FB96B28,
+0xC8B7F246, 0x7ECABC18, 0xE35F0EC0, 0x948FB989, 0x6178D8C5, 0xD3072473, 0x87A3B462, 0x8CA2685B,
+0x2AF97EF3, 0x67CF667F, 0x3311AE61, 0x7C64E873, 0xA9C2A3D0, 0x9CF31F05, 0x6FB55B23, 0x5D73B68D,
+0x756F13DA, 0x6F059771, 0x34D2D8C8, 0xF847E25D, 0x8A691125, 0x8A893CF7, 0xBB8ABE21, 0x16FD9427,
+0xCFAE680B, 0xB70BBC0F, 0xBA239E51, 0x72C719BF, 0x26914258, 0x23CC243A, 0xEED59174, 0x093E5B92,
+0x3D4333F5, 0x3AFD712E, 0xF3881598, 0x6851D5F9, 0x6FDB0082, 0xDABB821F, 0xB78FDA1F, 0x48F5C15F,
+0xB79CA664, 0x173B1CD5, 0x7592E55F, 0x8E80A1DC, 0xCBED9675, 0xDCE8D3BA, 0x24E0FCA9, 0x5B634AA3,
+0x8AD5AC0D, 0xEDEC2F4E, 0x23E91875, 0xB9DB1E33, 0x175CF04B, 0x049A4195, 0x38CAAE06, 0x9D3BF8D9,
+0x47559157, 0xD34CDAEE, 0x24AA5A46, 0x07EB0D0A, 0x9B9A141B, 0x05E5D2DC, 0x888419DA, 0xBF0EDB0F,
+0x30104F8D, 0x2F4B0154, 0xAF91DB76, 0x1192C5EB, 0x4535E33C, 0x60BE986A, 0x4706568A, 0x37CB0CE0,
+0xC814B7F6, 0x89977AFE, 0x29EE49B8, 0x708B78FF, 0x4A9746B6, 0x75AAAB58, 0x59BF56E7, 0x761DABF1,
+0x80CF27DC, 0xBF602AFE, 0x974EA407, 0x4C7B9486, 0xCCEC2C15, 0x4EF6BB7C, 0x32E03D11, 0x48D3C2FB,
+0x5C999ED8, 0x637BD9FE, 0x07CBC5B9, 0x2319E4AC, 0x28A6AF88, 0xB5A5F0E4, 0xBC31598F, 0x987C8B32,
+0x0A2CBD72, 0x304910DF, 0xD33B6AE6, 0xD1ACCF4D, 0x6F3FC315, 0x66AA81D8, 0x2CF1118B, 0x77F60B8E,
+0x4EAFED1F, 0x9DEB1343, 0xB0143E4F, 0xA2A162E7, 0x2276F6B7, 0xB96546CD, 0x22FB9837, 0x05F56410,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+20
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+SYNCRC
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
new file mode 100644
index 0000000..e5fc1a4
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+output0 =
+0x9EE331AF, 0x2AB3B869, 0x980F930D, 0xCDD88511, 0xEB5F2CEA, 0x82FA1DC9, 0xF9B5C9EC, 0xB6F4436E,
+0x9A1522FA, 0x3225D473, 0x2187A0A3, 0xC5E34328, 0x1E41E4C7, 0x67B44A01, 0x89C038A0, 0xECBE2C9B,
+0xF60AA1BC, 0x7E4EAB53, 0x1736724C, 0x01FDCB11, 0x6AB1F4D9, 0xAB48D5C3, 0x85D71100, 0x6585F802,
+0x6CEFB57F, 0xAEAE2086, 0x13B991E1, 0xF3535B2E, 0xF983913A, 0x4CE284A7, 0x8A7D6255, 0x36B48680,
+0x7EA72D08, 0xA2779E89, 0x0D4DABF5, 0x78B63DB6, 0xCAB0EA2E, 0xB9A8BCC7, 0x9E2A0F46, 0x82C6EAF3,
+0xD530159D, 0xC5D0AAD8, 0xA09130D6, 0xD0
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
new file mode 100644
index 0000000..954f700
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xAAC7105F, 0x643D4393, 0xE192891C, 0x83A39F78, 0x2582F55E, 0x26CFD732, 0xC699EBB1, 0x8F2B74A2,
+0x936E735C, 0x13D70FB6, 0x24CE6E8A, 0x50347DF7, 0x48D5C2D3, 0x04785E58, 0x60CA27F7, 0x3170E8E7,
+0x3338715B, 0x3610C008, 0xBD8271EC, 0x72D3EF32, 0xDA1A389F, 0x95FA85E8, 0x9CD1CFA4, 0xAE1D7D96,
+0x3BFB9064, 0x55E28DC6, 0xF7F67F98, 0x38D000DC, 0x6BAD2E54, 0xB0E88829, 0x063A2507, 0x6E76FE1D,
+0x25997E16, 0x0CC0E59F, 0x08E51C73
+
+output0 =
+0x967245D0, 0xBAC4FC7F, 0xF1AB7C86, 0x491785A8, 0x10577FCB, 0x163CF7B8, 0x6B265A8B, 0xE1A8BB63,
+0x0F2A05D8, 0x37557F18, 0xCE7525C3, 0x0CA9387D, 0x17BE76D6, 0x5387FFDB, 0x693CAE17, 0x0798AA28,
+0x48A44F2F, 0x38140D30, 0xE5906BF2, 0x52AC2F8C, 0x33B2A4E5, 0x7B1515B6, 0xB9D55139, 0x5DDA644C,
+0x3E312F73, 0xB95C0A44, 0xE16BE459, 0xE290B588, 0x8777F5A9, 0x08B5EA39, 0x693B5812, 0xA82A2918,
+0xC978FBC7, 0x0D77A295, 0xF9F5A8EE, 0x090853F8, 0xFF4D8021, 0xE3A2632E, 0xE6CB43A7, 0x3827C151,
+0x5494AE3C, 0x0C9ABCD4, 0x934F1B32, 0x00
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
new file mode 100644
index 0000000..c2182f3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3924
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xC1BEAF7C, 0xAFB020F1, 0x79E73901, 0xC5EEBB6A, 0x214101FD, 0x028573E1, 0x74BB7698, 0xD7AC347B,
+0xA05C2979, 0x5FA47D1E
+
+output0 =
+0xB763ED53, 0xC6529760, 0x0414EC8D, 0xF708DD55, 0xCE7892F4, 0xFA2DC816, 0x09D4B196, 0x56675715,
+0x87FA9716, 0xA529691A, 0x23B239F0, 0x22
+
+basegraph=
+1
+
+z_c=
+15
+
+n_cb=
+990
+
+q_m=
+6
+
+n_filler=
+10
+
+e =
+360
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
new file mode 100644
index 0000000..bface0c
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+output0 =
+0x5E7522B1, 0x7FA3382B, 0xA908E1D8, 0x2642E58D, 0xB56933E6, 0x6405F0C9, 0xA77DAD7D, 0xEBC763C4,
+0xA09FA64C, 0x764B1E23, 0x5BF6257D, 0xAFB6ECC1, 0x54E294B1, 0x1B65DD34, 0x4B4C9B37, 0x2C7F1A31,
+0x6EF7DA88, 0x60A11548, 0x74CC96E2, 0xD19CD066, 0x6B0EBF4D, 0xE9E45047, 0xC5AF1B06, 0x940B28AB,
+0x54ED59F0, 0xA0
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
new file mode 100644
index 0000000..b63d4d8
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/12117
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xD7C9BB11, 0xFA37421E, 0x000A635D, 0xEC53B479, 0x64A76ABF, 0x73F9F150, 0xD898CDC2, 0x0DFFDC09,
+0x9C97913E, 0xBA8A4D3D, 0x408D6AC1, 0x277C1D48, 0xF4DA212C, 0x4605688C, 0x103AA068, 0x751A28D6,
+0xFE30E21D, 0xA9EAF00D, 0x8943EB0E, 0x136C8419, 0x267BD625, 0x001067
+
+output0 =
+0x5BD32C8C, 0xF917BBD9, 0xD5835701, 0x6462E24E, 0x3EFAC535, 0xE7245C31, 0xBCED3AC7, 0x0C17F702,
+0xA16C4028, 0x514AC1E2, 0x128792CA, 0xE701A245, 0xECAB018D, 0xC29A0562, 0x58F1C57E, 0xF55D550D,
+0xA7AA6F81, 0x516787A1, 0xCFAA7F82, 0x962C6449, 0x3282A6CE, 0xE2F13841, 0x86ED088C, 0x24601D7A,
+0x63A2D3E4, 0x57A1624A, 0xCF40E224
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+864
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
new file mode 100644
index 0000000..a746bba
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
@@ -0,0 +1,110 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/4740
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x50F16834, 0xF2C53996, 0x03020CA9, 0x3FE7C401, 0xDD82BA62, 0xABE166B1, 0x20567A55, 0x80D9DBFD,
+0x157E8623, 0xD0787894, 0x0850484E, 0x322CFF58, 0x0C9DB7E8, 0xF63C91F4, 0x456AE701, 0xFDA2026A,
+0x9AC638AE, 0xB31103F5, 0xDA853614, 0xCF27450B, 0x4BD897C0, 0x1A09B1C2, 0x4A45966F, 0x3ACA9167,
+0x7F77FF7F, 0x15D56E48, 0x8FA07362, 0x80BBED1D, 0xD05686E3, 0x02CEA3DD, 0xB3C0D1B6, 0x259DAE03,
+0x25977868, 0x1A150EF9, 0x6E64CC85, 0x18A1DE79, 0x526A7853, 0xD5DF5A64, 0x2348D0B4, 0x51285055,
+0x86B05C87, 0xC391340F, 0xF18BCA53, 0x8791813F, 0x50EE99A7, 0x6F2CA384, 0xAF5126BD, 0x2142AD0D,
+0x10541F50, 0xB35BF0C1, 0x70E31CB6, 0xFECF5661, 0x61880F65, 0xBC65B63E, 0xE33B131B, 0x6AF42AED,
+0xD7C04063, 0x78611438, 0x722192D8, 0xA2058194, 0xFECFD4A4, 0xC95A2C4D, 0xC9D8AAA7, 0x56F959F3,
+0xA7B78EB6, 0x167AC217, 0x544688BE, 0x4C9CE796, 0x5324925B, 0xFE87D352, 0x019413EF, 0x95825C9C,
+0x64782300, 0x2714D4E7, 0x02D6E144, 0x9613CA04, 0x7700A0F9, 0xD9774CF3, 0x0F2D4373, 0x589EE52F,
+0x16F83601, 0x149DCDBE, 0x8592209C, 0xAAA899EC, 0x6CE1A873, 0x21D51F5E, 0x0DDC1BF9, 0x02DE0E7B,
+0x2F6E9A41, 0x11FFA908, 0xCFC1DB62, 0x5D1F0F29, 0x98640FFD, 0x45183F40, 0x0E3865A7, 0xB74D193B,
+0xEA77DF41, 0xC10B76EA, 0x44A42C65, 0x8D8D36FC, 0x45DFEFB5, 0x5F90559D, 0x62502A64, 0x00F9E573,
+0x5EE77494, 0x04043D14, 0xFD072D34, 0x3AE1BF9E, 0xF49B4B0F, 0xDA220770, 0x987837FF, 0x1C5A086F,
+0xFE64CBE6, 0x9679050E, 0x31DC1AB5, 0x9B2A557F, 0x2C7F124D, 0xDFDE4E83, 0xA16A8974, 0xCE26BE95,
+0xF27287D7, 0xCE564845, 0xDB35A382, 0x875BD89E, 0x567EB179, 0x1CCC7D32, 0xC83FBCD4, 0x62EE85DB,
+0x9A68B844, 0x6458737E, 0xDB81944E, 0x80299BC2, 0x19786941, 0x5A057F54, 0x7EB814DD, 0x07855BEF,
+0x16AA4F23, 0x1EF06576, 0x41D436E0, 0x403C8F3B, 0x82903B04, 0x0B4ED74B, 0x1699CD89, 0x4F2536F3,
+0x9FF1EF0D, 0x0D63ED56, 0x6F4FF3E2, 0x77013410, 0x729F850A, 0xC4A2B941, 0xB9AA313E, 0xE040B1AE,
+0x644AD780, 0x80751C18, 0x0D47BB25, 0x8CED403F, 0xF4F8807E, 0xB84E513F, 0xDCC2033E, 0x24ECAB63,
+0x0893EAF8, 0xC68786C9, 0x9A82D1C7, 0x13B36060, 0x4B537CCE, 0xDDE3D19C, 0x99112A1D, 0x3E6654F4,
+0x162AEACA, 0x62928B3C, 0x14FCBC98, 0xB44086EC, 0x6DBCED78, 0xE717F17E, 0x3F9B5B02, 0x817599B5,
+0xF347CB34, 0x6F82B71E, 0xC337D8E9, 0x0328A267, 0x427336AA, 0xC934417E, 0xF7B5C032, 0xEA79F0CB,
+0x416FCC09, 0x208D8D80, 0x37C1E3E0, 0x76023916, 0x57350343, 0xE8FB5955, 0x461F1171, 0xF139FDEE,
+0x96BE5220, 0x96A8EFB7, 0x8773204C, 0x43E6363F, 0xFB325A1E, 0x930B38FF, 0x60ECDDFD, 0x23609CAB,
+0x4E5864E8, 0x55636167, 0x75BEE160, 0x0F181B7F, 0x9FE05BC9, 0x9C220345, 0xBC648CA6, 0xD9C544F6,
+0x2294A55C, 0x5F921636, 0xFD5EF715, 0xE9FD8A7D, 0x31342020, 0x3892B312, 0x24ECAD48, 0xF31D850E,
+0x9817D48E, 0x60A26A1F, 0x24C0643B, 0x08BB3ABA, 0x9A2026AB, 0xB6ED1347, 0xCB06B9CF, 0x81028A1F,
+0x0C141510, 0x1173AB81, 0x467D6E76, 0xFC384342, 0xE9CCF66B, 0xEA8AC735, 0x1BD82B06, 0xD4F70487,
+0x4569F29A, 0xE94759AE, 0x298CA0DE, 0x991B05EE, 0xA24EB567, 0xA4F7DDEC, 0xCB46257F, 0x18EA8A0F,
+0xB859761C, 0x8F3BB417, 0x6F07EF91, 0xD94F3769, 0x2B7ED799, 0xA63563E9, 0x175B1B9D, 0x935433D9,
+0xC5EEE108, 0xAB66F1A7, 0x45352A49, 0x22660E7F, 0x93E8B76B, 0x098FC4D5, 0xCF0F90D9, 0xA21C7C47,
+0xA2C8C2D3, 0x566824BA, 0xB1A154DC, 0x09A95A5F, 0xDEEC0D4B, 0xFBD731CC, 0x4DDD1F79, 0x885E80FD
+
+output0 =
+0xBAB69B46, 0x9AEEF4CD, 0xF65CEBB3, 0x3A351B07, 0x0B0F251B, 0xEE1A8EB8, 0xE59C8052, 0x0B2299B0,
+0x1D5CB699, 0x3F2682EA, 0x2121F8C5, 0xEFB15235, 0x704B4B26, 0xBA0E8759, 0x7FAF1CBD, 0x74CE4CA8,
+0x219D8D73, 0xABEEDB0D, 0xCAB2D229, 0xDFD73ED4, 0xAC269345, 0x88616ADC, 0x80B0EA9A, 0xD3F12C4F,
+0x4911C9FF, 0xD0F1B94D, 0x9CD97301, 0x3230D51E, 0xD1E31F4A, 0x18574172, 0xB32ED6A3, 0x59E536F0,
+0x39A86503, 0xFF4852A6, 0x95480468, 0x028B215D, 0x4BB4DEBC, 0x77D6C78A, 0xF3C455B6, 0x2113C0D6,
+0x2DB54E47, 0xB5EA54B2, 0x2CC06535, 0x2AB4A838, 0x0EBB9BC7, 0xD675F3F5, 0x7F45F8A7, 0xA8D1024D,
+0xD0513827, 0xCD53C7C6, 0x1184C8F6, 0x3BB7F6BC, 0xFD116C2C, 0xE3103FD0, 0xB0BA389F, 0x3629A9B5,
+0x40A8AA19, 0x3EE17358, 0x02312A15, 0x466ED0EB, 0x371C20BC, 0x54DAB264, 0x81948A54, 0x1FCD3C1F,
+0x1C76C4D7, 0xC8AE824D, 0xDCA04C66, 0x21EFFE40, 0x498DCB6E, 0x1842DCC4, 0x937CFAD6, 0x9220816C,
+0x10399542, 0x6F2B3DE8, 0xCFE0F0F7, 0xC55FED3F, 0xC11B593D, 0x894A3D36, 0x17C6386E, 0xE76799C7,
+0x029BB9A4, 0xC728B6B7, 0x57AB7BAD, 0xE5212EFD, 0x1B7EBC84, 0xE6D31711, 0x8332412C, 0xCCD8670E,
+0xBF2D5294, 0xE42B6C1B, 0x46A0532A, 0xD20E3D01, 0x48B61D21, 0xDCC59F01, 0xB54A5392, 0xE9A27CBD,
+0x475545D4, 0xC6222B28, 0xC6C6BA23, 0x0D624CDC, 0xA6D11E56, 0xCAE973D1, 0x83C3D00D, 0x285473B8,
+0x9D765A6C, 0x65EC16BD, 0xF2BEB004, 0x392E0DC9, 0x5972E43E, 0x74CE67F8, 0x877881C7, 0xC194D498,
+0x7EA32C7A, 0xFA616DFE, 0xB7F54D05, 0x67D5327D, 0xA1B11114, 0x797C36AC, 0xD2C4BAC0, 0xA3FC0A59,
+0x0A41CEA9, 0x72BCB459, 0xA400ACAD, 0xFF5E0DF3, 0x95330499, 0x5C61382F, 0x17DB60A4, 0xEBC08965,
+0x7BDA7D16, 0x9FDB4A48, 0x8E434902, 0xA37A8206, 0xD6FA9D98, 0x9F7524F1, 0x87484FCB, 0x3D29853B,
+0xCFB8B6E2, 0x6E8FB75E, 0xFFD9715D, 0x9BA4FA21, 0xBEE48708, 0x6994B617, 0xB861D7BB, 0x32965DD8,
+0x54AE0642, 0xE5749364, 0xB7AAEA69, 0x7A72625F, 0x561C0FD3, 0x17C4592A, 0x114FB3BA, 0xAAF6B7B2,
+0x883009FE, 0x8CB14452, 0xA8DCEE5F, 0x32490CF4, 0x12F92890, 0x8751DBDE, 0x036192FE, 0x70944BFB,
+0xCC1EA46D, 0x4A65393B, 0x0D1A8E22, 0x6353AA97, 0x93CC0B72, 0xF31E45D6, 0x7DAFBF7F, 0x564BEB7E,
+0x37965B06, 0xA405E685, 0x792A9757, 0x915293AD, 0x4913CB07, 0x75532849, 0xF7B42E2D, 0x28EC5A1A,
+0x803A3EF8, 0x7604FF7A, 0x188D7B23, 0x96A096AD, 0xE0A73048, 0x304173CB, 0xF52D61A4, 0xB9F4185C,
+0xEED3FF8C, 0x6388190C, 0x9AC54AA2, 0xD815A196, 0x5E688497, 0x123468E7, 0xB9665A24, 0x9BBADD97,
+0x7818CD07, 0x3013A569, 0x84621495, 0x35DDD4C3, 0x62B6CC53, 0xE2C90AB9, 0x80BBCA1C, 0xA069C371,
+0x0D030AF8, 0x055ECF7E, 0x680AE291, 0x13E7E136, 0xB57DF5FF, 0x85AD0124, 0xCEEF4C70, 0x6914CE71,
+0x784E3714, 0x4A8A2D63, 0x766254F9, 0x95944892, 0xFE634D11, 0x5B48B728, 0x2D95EEB4, 0xD7AD4549,
+0x3AD6AAE1, 0x01E35C22, 0x0C731A23, 0xD79593AE, 0x2ADEA548, 0xD68CE22F, 0xE245370F, 0xFD69FC84,
+0x01D3CF55, 0xE5BC524B, 0x17EF955B, 0xE596B8CA, 0x02C0DDA1, 0xACC0746A, 0x489AF9D1, 0xB42334B2,
+0x26BF94F2, 0x6D70EC02, 0x003A3F93, 0x007E706C, 0x36C5E0B5, 0xE5AA5CBA, 0xE3427640, 0x977C3A76,
+0x6A7EFED5, 0x879CC5D9, 0x07C9FA95, 0x3B7DDA84, 0x6DC13FD9, 0xA21D2B49, 0x7E741311, 0x63EB6E7D,
+0x40AB1DD5, 0xDC636C0B, 0x340DD1AE, 0x093A3A70, 0x97EA1AC5, 0x26C91F58, 0xD3F0F15A, 0x0B93E22B,
+0xB572CACA, 0x0BD45EA2, 0x4B2A4791, 0x2EBED3E8, 0x2A793B5A, 0xEA64B0A5, 0x254F5BA1, 0x46B3FB9A,
+0xB43C574E, 0xA0A42D9D, 0x9C285D2A, 0x4E188C28, 0x373B1517, 0xBD3C4473, 0x6978640B, 0x61E35E79,
+0xA9EE34BE, 0x0F40E590, 0x8DD6FF99, 0x85CECE24, 0x8F03BAC6, 0xE3356D6E, 0xA0FD2171, 0x667216E9,
+0x527044D3, 0xF2275856, 0xDAB137B0, 0x82179A34, 0x8B16DF35, 0x7951B0A4, 0x52F5D069, 0x7D1472AC,
+0x4C042345, 0x2A0C91B2, 0x7D1839D1, 0xB4222D22, 0x90335963
+
+basegraph=
+1
+
+z_c=
+384
+
+n_cb=
+25344
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+9372
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..bc84e55
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_DL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v2342.data b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
new file mode 100644
index 0000000..57c22b7
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
@@ -0,0 +1,150 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+output0 =
+0xADE67AA9, 0x1CB4EBDD, 0x74E76684, 0xE3941FC7, 0x48DAC304, 0x1E2C198D, 0xFE88B908, 0xEC21A3DE,
+0xBF314AB7, 0x634E3DCB, 0x0DA84E23, 0x58B1B22B, 0x02B837A0, 0x8B04BF38, 0xFB8DB526, 0x1BFF82E9,
+0x4226C4D0, 0xF7A9950E, 0x6DA4D0B2, 0x38E15395, 0x94C1A379, 0x243ED666, 0x3E7255B3, 0x7DB378DB,
+0xA3CE1377, 0xE0137291, 0x42DB50AC, 0xEB2D0A13, 0xCA55944A, 0x223DF8E0, 0xB800D1CF, 0xAA2E7577,
+0x50153EC5, 0x5E3C8557, 0x63DDEC8F, 0x49A256F8, 0x41ABFD56, 0xEB76A4D7, 0x4F4E9C7C, 0x3508DA39,
+0x530F9DA0, 0xFFD20E32, 0x395F7963, 0x1C48B3F7, 0xD3BC29C7, 0x4D6ED90F, 0xC1C9EF58, 0x9B9D4A13,
+0x417BF36E, 0x1BB5FDD8, 0x72793F28, 0x2F297FA5, 0x204AA988, 0x28317636, 0x87878EC8, 0x33024F9D,
+0xE651388E, 0x560ACA6E, 0xEC3D0B64, 0xCB515AAE, 0xE42B9ECD, 0x2AE2B0D1, 0xCD659A28, 0x8BD5E4D8,
+0x0D618DD6, 0x14CF8DB1, 0xE9F82BB6, 0x558C50A4, 0xA9809F8C, 0x15646823, 0x6037DB27, 0x26A0ABAA,
+0xF8DC4AC6, 0x533494C9, 0x7BF60155, 0x7BB16D05, 0x89F7A1BA, 0xCB069606, 0x6572D71A, 0x001917EB,
+0xD353913B, 0x128F78BD, 0x83BCE2A3, 0xE0065266, 0x9E7E608F, 0x25889472, 0x184ADD42, 0xD42B429B,
+0x7A8D861F, 0x54C97AB8, 0xB8B04229, 0xDF3DE03A, 0xB97E311E, 0xBB2A1FF8, 0x53AC8D5B, 0x1825B5DC,
+0x9843DD95, 0x0214EAA6, 0x3B1CF504, 0xD3BE316F, 0x9B1D3C64, 0x8EF4A268, 0xFACBC9AD, 0xDCC6033F,
+0xF801E3D1, 0x92F3E3A1, 0x1EC121AC, 0xA6747F20, 0x6ACC34EF, 0x0F641DC0, 0x42CAB9C3, 0xE04036DD,
+0x97739381, 0x9843A304, 0x929E9AB7, 0x600E057F, 0x892D5F1F, 0x0F718281, 0xD345AA58, 0xF39215C4,
+0xBCAB0B51, 0x1EBEA1B0, 0x68885471, 0xB39AD728, 0x2FF70470, 0x80D01FE5, 0xB41A95C0, 0x01DB8079,
+0xA4C9F364, 0x41860F1A, 0xEBE24F2B, 0x086BFFF0, 0x7B66DE40, 0xFFF665D6, 0x18324792, 0x1D253106,
+0xC41B9BF0, 0xC79347BA, 0x6949A396, 0x279E7A4A, 0x4029B533, 0xE8B382E2, 0x89783E24, 0x3D945C74,
+0x49BD75D8, 0xBAD731A0, 0x48B4AFAB, 0x4383B903, 0x8A6966A6, 0x170B9958, 0x58307AB6, 0x3B627463,
+0x0B981BEA, 0xD8E9A038, 0x723219E7, 0x4F6E5470, 0xE4F3CF92, 0x37AACC8A, 0xA4E46500, 0xE44DDA39,
+0x68690180, 0x33143C47, 0x9A6EE438, 0x5FA00F23, 0xD2CEE248, 0x46090D1A, 0xDE5491AE, 0x417D853E,
+0xC607B731, 0x79D7DCCF, 0x13200C03, 0x07CAB5E9, 0xB59525EA, 0xE47B66A5, 0xB125AAAB, 0x20CCFE07,
+0x82F1F4E8, 0xCF44BD2B, 0xC462D58D, 0x60A6A73B, 0x0D0CA712, 0xFE342922, 0x15123217, 0x7A02E89D,
+0x49B44659, 0xB9F3AE54, 0xAFC472BC, 0x79AF1A6D, 0x7430BA59, 0xEA13F81C, 0x33592D7D, 0x1EF1E1DC,
+0xF51FF0C8, 0x80F7B07E, 0xC1536EBB, 0x586CB41D, 0x10AF823C, 0x390EA571, 0x7D54C302, 0xA049ECBE,
+0x368C3981, 0x38B72BEE, 0x833C5F98, 0x2E18D066, 0x5742B0D2, 0xA8F5F0B8, 0x9144935D, 0x7392A908,
+0x3175DBC0, 0x29AA2F7C, 0xF53FED73, 0xFE41236B, 0x091E47EC, 0xD2195647, 0xCAAEA8B5, 0x0ED9750E,
+0xF5027456, 0xF1838780, 0x16FFE8EE, 0xA21568C6, 0xC5E4FCAF, 0x27C24C4B, 0x3DE89E8E, 0x5464ADC6,
+0x865C8493, 0x41032697, 0xD5F82075, 0x49167AF7, 0xED1AA45C, 0xA6B20018, 0xB1776BA9, 0x9F2129B6,
+0x611C417D, 0x3B72E8B6, 0x1AA7DB22, 0xF4ADF40E, 0xA24B8EFB, 0xF25C5F9D, 0xE52C047E, 0x3B8C9A26,
+0x4C0760E4, 0x73027C0E, 0x1F5977D8, 0x6CAF979D, 0xEF39719F, 0x70129F6A, 0x0CC821CD, 0x9853AE70,
+0xC3EB24E5, 0xE4EED628, 0x9F904579, 0xFD680398, 0x2C84DF92, 0xF92DA147, 0xB2F7C7C3, 0x59052EB6,
+0x4DF89375, 0x275D0C58, 0xBE32DA96, 0x7A3C4C7F, 0xC5C2B02F, 0x651B2665, 0x36E5DC9B, 0x98B1F08B,
+0x175A5AE0, 0xBEC258CA, 0xDDF6B687, 0x49E3DBE6, 0x07C1C780, 0x63E3B861, 0x05FDAAEC, 0xFA7C38A4,
+0x5EE93618, 0xF8B78C2B, 0xBB5035B7, 0x7E297AC8, 0x6CC27636, 0x30D44C50, 0xECB1065B, 0xB00AB96E,
+0x87B3C67E, 0x0AA61403, 0xF514C18B, 0xDBF3CEEB, 0x62ACA4C1, 0x9A0D1691, 0x07E3DF50, 0xC42070E8,
+0x98F349F7, 0xC1556162, 0x6F7D7109, 0xF6C7B215, 0x73748B4E, 0xAF9F5BFF, 0xDD1B8AE6, 0xA9C710AA,
+0x5965A4DA, 0x762A0F38, 0xD42C7578, 0xBA69C66D, 0x2CCABCB7, 0x932E7065, 0xD6F3F37E, 0x729F1412,
+0xE5EAEB07, 0x1C2D7291, 0x07E5E6C9, 0xCA16EED5, 0xD488558D, 0x235C11EB, 0x579B8BCA, 0xAC352250,
+0x858BD553, 0xECCBE50A, 0x370421F0, 0xA66CD423, 0x1424CB84, 0x286FBE65, 0xDFF5A1E9, 0x71ABB615,
+0xAE331217, 0xE8E333A5, 0x99044B7D, 0x26264E30, 0x35A7FEA1, 0x3E933B79, 0x4151D8A3, 0x672D78D6,
+0xC586C999, 0xEFFEFF6F, 0xD1EC082A, 0x0EB38797, 0x85F77710, 0x5FEAE876, 0x78FBE4E2, 0x6284663A,
+0x6E54B0AF, 0x5C107AF7, 0x24005DF7, 0xA994E2EC, 0xAFDDB6FF, 0x79019A53, 0xE1B8A123, 0x997B7B95,
+0x9BFC63E3, 0xEAEEB40C, 0x14AECFE6, 0xC29A3F38, 0x21833356, 0x6B65DAAC, 0x9AEADA3F, 0x16582D82,
+0xD6E7B8EC, 0xEE67A365, 0x3F33FD50, 0xABD603DC, 0x0DA08D72, 0x69E01AFD, 0x4862B58E, 0xE1DFCA98,
+0x5FE11079, 0x40992E48, 0x0589689B, 0xE836FACC, 0x87FFD4D6, 0x9F5DF070, 0x6BC69520, 0x5CF6F087,
+0x66523DC9, 0x54D0EEA3, 0xDD820FC2, 0x663BFA8E, 0x2561E952, 0xA82EDAB8, 0x3FC1092B, 0x8591A2C1,
+0x0E9E67EF, 0x4A334D9C, 0x867BB16F, 0xB6A1713F, 0xED8D7EFE, 0xF2926C44, 0xD2E97512, 0xE8301103,
+0x3DD30957, 0xEFB71B3F, 0x4AE801D5, 0x8F75F730, 0x0C34FBC9, 0x7A60C668, 0x77908ED9, 0x963C0DE4,
+0x5279E29C, 0x6759B153, 0x747E5E7B, 0x4C510BE5, 0x32BE2132, 0x54B361E0, 0xCB4D9616, 0x3C404BA4,
+0x4BA0E910, 0x05F06AD1, 0xAE3FBC5C, 0x82CB03B4, 0xF0EC45FF, 0x9888791B, 0xDE4B9813, 0xF83B4090,
+0x3CC4BA28, 0x7CFE8854, 0x9CA7BC9D, 0x0E41843E, 0xF92535F6, 0xF19CC699, 0x0821CBF4, 0xF15F3F82,
+0xCF6CC14C, 0xF27DA57E, 0xB8DB8982, 0xFC7E263D, 0x63C36111, 0x61587ABA, 0xB87CB18D, 0x2C806A64,
+0xD8DFFF2C, 0xC8540E77, 0x1A340B85, 0xB6FBA97F, 0x77A1958D, 0x419648E8, 0x80A65729, 0xC3EC1141,
+0x3909010F, 0x84F8C534, 0x2FEDE987, 0x83851AC8, 0xAE88B841, 0xE8284692, 0x3243F04B, 0x9C845E80,
+0x4A7FC52E, 0xF6B1035A, 0x59E1C576, 0x21620CB8, 0xF047E16D, 0x079284B7, 0x00B6C955, 0xA7B19103,
+0x7B9EB069, 0x733E2443, 0x489A6EAE, 0x7BB17B2C, 0x6AB4F848, 0xEFA299A2, 0xC464BE42, 0x36F27FC5,
+0xE70CEAB2, 0x6FCB4031, 0x9C0A14C0, 0x682AA1A3, 0x36E7032C, 0x57BA22A8, 0x085288CE, 0xDE62ADD4,
+0xC0138A07, 0x4A5576F5, 0xC0F33DE3, 0x919ECA7A, 0x14FFDE87, 0x362897AF, 0xD542F683, 0x86FBC0FC,
+0x8CD6DD3E, 0x25832EDF, 0xC2C9EE74, 0xB244A89B, 0xFEAF2F44, 0x1D631217, 0x80BA2267, 0x097D3F4D,
+0x406264AC, 0x0571B5FF, 0x55658770, 0xE12F6AA3, 0x666D9831, 0x37E17306, 0x88D926AB, 0xBB0CC6D9,
+0xA857A201, 0xB24E5A82, 0xF259D2AE, 0xD09D0FAE, 0x87363A50, 0x583F1CC9, 0x653F73F3, 0x0D04970B,
+0x64D1F222, 0xEF7E0E0B, 0x7F5D49DB, 0xAC4549D9, 0x707D1FCF, 0x3A151C06, 0xFE5DEC4A, 0xE3D6CCBA,
+0x0AA3DA9B, 0x4665CBC5, 0xDF7BCD0F, 0x63DD0FF5, 0xC9C2A642, 0xB40B516D, 0xE259A165, 0xE2E454E1,
+0x0A384EDD, 0x1287018F, 0x2A7A8DFD, 0xF854FCF1, 0x79CAA64E, 0x351AC522, 0xEE65C527, 0x7F160E51,
+0xF465AF5C, 0xE671974B, 0xAF75CA8D, 0x47A5EC29, 0x5F93C8AD, 0x6420D4E9, 0xA5CA4610, 0x265F0BF4,
+0x6622036C, 0xB542C8CB, 0xDFD1FA4F, 0x5869BE19, 0x14605EAE, 0xA438FEA7, 0x9523F5FA, 0xE18FCF2B,
+0x5F11F7B1, 0x7A790EBA, 0xDBDD0005, 0x024E0D8B, 0xC387778B, 0x3C0F1274, 0xA722512C, 0xEAB3C2F3,
+0x11B55F3A, 0x9C2DBBD6, 0xA76C80DC, 0xD63A5DD2, 0x320F7AF2, 0xA707544C, 0x889A3C58, 0x50CCA3B0,
+0xD54FE248, 0x22EF12A3, 0xF618F564, 0x1D9266C8, 0x4E08FB46, 0x6D1D41EB, 0x5CFF2094, 0x116ECB97,
+0x46FD4058, 0x38FBE5CC, 0xE008E8EF, 0x578FAF14, 0x3BEED1D9, 0x8C89B4CE, 0xFC0C33D7, 0x0913ECF8,
+0x498D47D1, 0x5644A9B3, 0x6EA66735, 0xA0F3BA09, 0x948B258F, 0xFA8DE3BE, 0x2FB03145, 0x8D0B61B3,
+0x42D6F53D, 0x031FD745, 0xFF86C938, 0xA32BB471, 0x50208969, 0x9F6909C9, 0x680C6D55, 0x13054044,
+0xDFDEBEF7, 0x35600E83, 0xAFB26C47, 0xCAA86F9F, 0x5B5B65A7, 0x599DA0C3, 0x789EC931, 0x0163D6D4,
+0xF7BBA271, 0x5A755052, 0xFA27CE77, 0xD66ED111, 0x7A5BD527, 0x1B26B948, 0xAA11725B, 0x4A6AC4AD,
+0xDD8EA8DF, 0xF0C618D3, 0xF97999E5, 0x00C42C38, 0x8465BE06, 0x7B6912C9, 0x4AF1F070, 0x4F93EEB0,
+0x19A400FC, 0x0F8A6744, 0x7FD642F2, 0x3AE8F32F, 0x84501DDA, 0xB39068C6, 0x2A5BE1A6, 0x08E231F0,
+0xD52F4D13, 0x89326BE0, 0x3981DD90, 0xA986F547, 0xADF1B2E8, 0x6337CFB6, 0x595FCBC0, 0x2D774749,
+0x1D6C5FF1, 0xF403CE90, 0x16792051, 0xCE248A7D, 0x43E76774, 0xA85ED14A, 0xCFBDEB69, 0xDF559AF6,
+0xC3BF33D1, 0xF03BB486, 0x107D04B0, 0x9B9E9432, 0xE4873EC4, 0xFD7C2E89, 0xFA69FD26, 0xD04F8825,
+0xB9C4FF1F, 0x30F0826C, 0x825A8A34, 0x5EBB4ADC, 0xA71C9FF5, 0xE90ECF8A, 0xFEF3270F, 0x25612AB6,
+0xF8560C1F, 0x625A9ECE, 0x12B9B123, 0xA281D55C, 0x276F3B4A, 0x6CDE95D8, 0x7EE9F866, 0xDC769A4F,
+0xC590E1F4, 0xEA845796, 0x013AFD9E, 0x6F8E1A4D, 0xBEDF18E1, 0x2CC567BD, 0x56CBAE9D, 0xF81716E8,
+0x88834AAE, 0x1C67A0AE, 0xDDB4EB33, 0xF0F874E6, 0x4DE9C550, 0xCEAC73AD, 0x5C800FD8, 0x6A31B61A,
+0xA8B3A501, 0x73639607, 0xC95BAE
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
new file mode 100644
index 0000000..584f73a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964 + Rv1
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+
+output0 =
+0xDA254450, 0x16BF9F14, 0x31785356, 0x9609316F, 0x14ECACF8, 0x5EAB72E8, 0xCFE9F14C, 0x7BFAF0DD,
+0xD4D21E0F, 0x2CC35B1C, 0x92EA0BCC, 0xD25EEE4D, 0xD8E2A9E7, 0x45B61C0B, 0xAE2F6F76, 0x156B1B29,
+0x8A3E15A1, 0x42B06E0A, 0x4A169C2A, 0x54E05915, 0x08197AE1, 0x8A19FB84, 0x88DBEE9A, 0x7E45B393,
+0xFF24E790, 0x6C49A2D0, 0x98AFE8BA, 0x31A7465F, 0x6298CE77, 0x28F248D4, 0xFF59D780, 0x10E4719C,
+0xDD2DEA4C, 0xC9B7F303, 0x19333FB7, 0xFB28275A, 0x6A4A2572, 0x39885BA5, 0x86B27F69, 0xB16EE7CA,
+0x7A07FAE6, 0x6628D83D, 0xEA04E4F7, 0x30
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+1
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..79294ec
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..c72680b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
new file mode 100644
index 0000000..a1745ed
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x0ED2B9
+
+output0 =
+0x8b0f2944, 0x8769e4b0, 0x717de578, 0xee86fb44, 0x61760e25, 0x59074fe5, 0xe9a1f641, 0xbbde66f6,
+0x6c68c0bd, 0xdf09f545, 0xd68c48b3, 0x354aca5a, 0x83c83bed, 0xeef81254, 0xcf0dbc28, 0x693c50f0,
+0x9a3cd23c, 0x57e97520, 0x929baf90, 0x8e2ba7d8, 0x5ef0fb8a, 0xffe7b153, 0x9e164074, 0x4d06f0a2,
+0x6bc68e5b, 0xb8274587, 0x69641dfc, 0xf5dc89a0, 0x4f8e741c, 0x1cb682da, 0xc59ce914, 0x8354b8ba,
+0xcbc5fd4a, 0x6fbfd1ce, 0x85f0df47, 0xffdbd201, 0x45818a38, 0x048b52d1, 0x1f634faf, 0x5cb128e9,
+0xb6108c54, 0x78466eda, 0x0f6d92a6, 0x0c7b6be7, 0xe0ee748a, 0xc9a2d65f, 0x4dc2540f, 0x1f5d42cd,
+0x68f26f29, 0x57474b8a, 0x8ae2cfbe, 0x08ef2168, 0x271b2ffd, 0x2e7816f4, 0x7b00c40a, 0x3e23bfe5,
+0x2f3ee3f1, 0x86bd9ff1, 0x7a5538e5, 0x6673490f, 0xae6ba80d, 0x058e0be4, 0x14f9b51e, 0x89a1a5ef,
+0x6ff9cd55, 0x8ed590b6, 0x1907175c, 0xb7b42bf0, 0x15a84025, 0xbd33f5fa, 0xb53d53d0, 0x61d6c75a,
+0x9d8a1eda, 0xb3932c8d, 0x7f9ff48c, 0xa8ed2558, 0xa05cf8a7, 0xccdafaf5, 0xbffeee80, 0x4f48eadb,
+0xa62b030c, 0x7bd235fa, 0xa8de22b0, 0xfe31d275, 0xd29e8be0, 0x386beb07, 0xce4d8545, 0xfbc33ee4,
+0x15e5d244, 0xf6fc92ac, 0x5a84f673, 0x64e55f70, 0xfdfdffc2, 0x8726dd47, 0xf3b5a1ae, 0x9d439055,
+0x54e713da, 0xf53a4390, 0x61cf45da, 0x9c357723, 0xed8c4800, 0xfdcbb758, 0x02d86328, 0xf3d4e1f6,
+0x2fc0f911, 0xb8faadb0, 0xf4d65deb, 0x43bbc6ab, 0x7bdad277, 0x6603c0a8, 0x027903c5, 0xdabfa36a,
+0x92c58ae7, 0x6e9211b3, 0x54c48400, 0x7ecddba4, 0x81e4b116, 0x5b407871, 0x3f427c20, 0xf6ddfe52,
+0xf0eba4f5, 0x2975c9d7, 0x376fc393, 0x3b0bead4, 0x89be294a, 0xc7fd591d, 0x43c2455b, 0x9dc322fb,
+0x00ca6a02, 0x35cccdf0, 0x60d8502b, 0x0500b498, 0x35ab1618, 0x73c6ddab, 0xf0df58da, 0x3e904c4b,
+0x133d6b4b, 0xbdad7f42, 0xee7d1e0d, 0x49fe242c, 0x09e120ad, 0x646339df, 0xa0cd9509, 0x92c6c672,
+0xb864089f, 0x22225244, 0x305f8384, 0x9b4166d5, 0x704fa445, 0x9fca2e0d, 0x839c9f87, 0x7ef495a9,
+0x579e0f8c, 0xa47f1a9e, 0x86581a5c, 0xb81b9445, 0x5acc608e, 0xe369e9b3, 0xfeb80ee5, 0x1399ab02,
+0x30a74bea, 0xcf08b948, 0xb0857028, 0xcd4f9d8c, 0x61e46763, 0xbff862f4, 0x096d276c, 0x72152f4f,
+0xe98e2f04, 0x7407c828, 0x85ee9a47, 0xf99cf671, 0xd7d40758, 0x89ee7d21, 0xb8732d5f, 0x4786742e,
+0x58ca1a9e, 0xe6276c4e, 0x18f29bb1, 0x757e3350, 0xa49c393e, 0x112a978d, 0xfecfbfa2, 0xb0894694,
+0x62fdcf29, 0x7ce4fb98, 0x41eaa9ac, 0x4cfdb430, 0xfe1bbc8f, 0x03e390bf, 0x0c4f25cd, 0x53b11485,
+0xa6734572, 0x923d31aa, 0x72ccb4bf, 0x82b541cc, 0x5f6dd559, 0x7ae48be2, 0xb376651c, 0x9c707d4c,
+0xa0fd5e5c, 0xac767a3a, 0x7f8d546f, 0x83d3c07d, 0xa6059a44, 0x03da8242, 0x71112091
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24A_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v9503.data b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
new file mode 100644
index 0000000..c3911d3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
@@ -0,0 +1,196 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C, 0xE1952001, 0xB77912DE, 0x52E8BA16,
+0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403, 0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC,
+0xA40F8094, 0xABF43E46, 0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8, 0xBC563FD5,
+0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E, 0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854,
+0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB, 0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3,
+0xB8E4AFE9, 0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87, 0x3E146A49, 0x0391D092,
+0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024, 0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1,
+0xDCD211C3, 0xBF6B0B87, 0xA1624F47, 0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795, 0xEB08B437, 0x1A9899A0, 0x26484B82,
+0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B, 0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B,
+0xC01C79FA, 0x622B9FD8, 0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x6F4B
+
+output0 =
+0x6ED462FE, 0x29726470, 0xE49C87C1, 0x6594725E, 0x64C81AE1, 0xA30C91C2, 0x5B4261AB, 0x7A44E3A4,
+ 0xACBD3DC8, 0x319AF530, 0xF3B21EC1, 0xAC180011, 0x26319FF9, 0x5946FBFD, 0x6F31959A, 0x571501D9,
+ 0xFB1F62B7, 0xF19F6C36, 0x43436C4A, 0x8CA5F436, 0x18AF91B4, 0xD86ED79F, 0x8732D29C, 0x6CE3B559,
+ 0x2DEA712F, 0x52C2E21A, 0x5C4E884C, 0xD2F50500, 0x2140E848, 0xABE47066, 0x8AE3FC46, 0xF0298999,
+ 0x829FE184, 0x51D53B6B, 0x7546D03C, 0xF1CB22DA, 0xB9D6F966, 0x85660A1F, 0xC1296566, 0xB2122E16,
+ 0x2AA38C25, 0xD7AF18FC, 0x489BDDC5, 0x93183097, 0x4C694A3C, 0x40B325F8, 0xEE05DAB2, 0xA6E0C990,
+ 0x839A7753, 0x0251D207, 0x5E1EC6B5, 0xED523076, 0xD985E23A, 0x8CA88259, 0xB0EFF6D4, 0xA9D7749B,
+ 0x32CA6F0E, 0xAAA84E97, 0x0F137B83, 0xE73C3175, 0xA3940FDA, 0xD878B121, 0xFFC8D2EC, 0x95CB65AC,
+ 0xB1CBE446, 0x73520449, 0x7D929F16, 0x69D1873C, 0x85640C01, 0xF2228024, 0x0A5E0461, 0x58B0933A,
+ 0xD37E2375, 0x36CEECEF, 0xE57A48F8, 0x4A35B5C9, 0x016A16A0, 0x6F9BCF30, 0xEB7C3BD0, 0xB1AF27FE,
+ 0x9C389360, 0xA91F2142, 0x51E618D3, 0x5F045697, 0x654C6A49, 0x2E38E30C, 0x9E8F1E63, 0xF1B25686,
+ 0xA0CDFB02, 0xDAEC605D, 0xED910B79, 0xA8E1A341, 0xAD6BD0A3, 0x03BABB0D, 0x4059355C, 0x5ECB8646,
+ 0xFDD9E0C6, 0x69106FD2, 0x47BF857E, 0x740F6313, 0xAB15E1FF, 0x94B21225, 0x600FEDF3, 0x1EF83A71,
+ 0xCE6956EE, 0xE538FC7D, 0x47520BE0, 0xA1A20CF2, 0xCB452B91, 0xEACB9E3C, 0xBA242A34, 0x13C81868,
+ 0xA58AB271, 0x724B350D, 0x95131286, 0xCF74DD61, 0x1D0CF41B, 0x38D046D2, 0xB709708D, 0x4D479AA8,
+ 0x3CBF6817, 0xDF115777, 0xBE69B850, 0x071A2B4C, 0xF3246B56, 0x2881CBA0, 0xAE158E87, 0x36538CB0,
+ 0xEF879197, 0xDBA9C1C7, 0x4EF7235A, 0x56120670, 0xC22DBEC7, 0x7071A05C, 0x376ADBD4, 0x5DD586FC,
+ 0xA638A621, 0x6D49A92A, 0x66F0C925, 0x023FC9DE, 0xF7CA1D36, 0xAF19A18B, 0x2A787792, 0x518938D7,
+ 0x25DE7B4A, 0xDEBD9010, 0x9683558D, 0x9C5694C7, 0x8B2558D0, 0x790CD121, 0x0A35C0D8, 0xCD4FBCED,
+ 0xB89F3275, 0x64A49655, 0xED7992A1, 0xAFB0A4D0, 0x29A9EB1B, 0x9244B2C0, 0x2CD88F45, 0x4AA1E98E,
+ 0x8E32CC3C, 0x8BE5DC7B, 0x759C8B24, 0x8AA119BE, 0x9CFEA065, 0x071F86FD, 0xB83F8181, 0x604FF2FB,
+ 0xAACDC394, 0x0BCC72F5, 0xE9C0CB19, 0x56EAE15F, 0xD33B8DEF, 0x01A1B007, 0xBED7C1A3, 0x18788E49,
+ 0xB565EA30, 0xC269F619, 0x1CF1B024, 0x067E9F59, 0x78E61AB4, 0x3D46CFBB, 0xE58E910B, 0x8E7ACF53,
+ 0x1EB9C15D, 0x4E3C43BF, 0xEF3D8F20, 0x5CC0A030, 0xE10AE4E7, 0xABE24941, 0x9A0C4046, 0x24E090CF,
+ 0x3248C414, 0xAF76560F, 0xCD1B106C, 0x70438AD4, 0x3463D8B0, 0xD85860FE, 0xFCDF0D57, 0xA2DBC09E,
+ 0x44C728C1, 0xD8FEE73E, 0xB1E6B4A5, 0xD0CC95CD, 0xCCEF186F, 0x70AC5D98, 0x57D21267, 0x8543F446,
+ 0x15C8EAA9, 0x0DD357D4, 0x4CE9C090, 0x4E91FADF, 0xE0658E27, 0xFF7AA5D6, 0x176ED723, 0x70D009CB,
+ 0x416ADBAA, 0x1C45865D, 0x105F3A0E, 0x14730450, 0xD0FA1AC9, 0xB76F268C, 0x7B075289, 0xA9455796,
+ 0x65E02F3E, 0xB74521F2, 0xF6CAA6C7, 0x94ABFDAD, 0x1E6D1087, 0xC25A9257, 0x87FAF9A4, 0x5184A0FA,
+ 0x240023D7, 0x7AE0ED45, 0x06E0A838, 0xBB018F31, 0x0FA836D5, 0x09CF6AEC, 0x9BC4F2B2, 0xAE92D5BA,
+ 0xE724036E, 0xE5606DDE, 0x631448F9, 0xFD59B782, 0xF17052E4, 0x66EA4C50, 0xF72C1768, 0x5C24ECEC,
+ 0x6B01B118, 0x89F8A3AB, 0x465FF462, 0xC3896A00, 0xFEC06004, 0xE2DFC70C, 0x3ACF338F, 0x1552E9D0,
+ 0x9F699B77, 0x60AC6D29, 0xBF47FD38, 0x826B0CA8, 0x0515A7AC, 0x1380A222, 0x7D054EA0, 0x3D1BCEC0,
+ 0x21AB6CF3, 0xA889E915, 0xF09D9756, 0x08BA519A, 0xCFFB6BD3, 0x7D5EF4F9, 0x34A0E942, 0x8569A327,
+ 0xFDDC5269, 0x60D8D543, 0x88B34B88, 0x50DEAA10, 0xD0563E1F, 0x80CD122B, 0xDC11607F, 0xCD9D7E05,
+ 0xC0F3510E, 0x414A7545, 0xB8211557, 0x103E6F53, 0x08A47672, 0x04D9C391, 0x3281F25C, 0x7526AAD2,
+ 0x3C89B43B, 0xBA767E59, 0xA2788EAC, 0x5EF9DF3D, 0x8F72BBE6, 0xC4B52A2B, 0xE81A80E9, 0xCD6B24D5,
+ 0x4F934751, 0xA3FCC2B5, 0x1C4FB12A, 0x7C363E45, 0x237CB63A, 0x1F26D6FD, 0xAAF3FE61, 0x48D3B3A8,
+ 0xA2A77A81, 0xADCF4AB4, 0xDF94F9B4, 0x465EA838, 0xCE4BA15C, 0x75826F5A, 0xD537E32C, 0x85F8FECD,
+ 0xD07CAB1C, 0x34F91310, 0xC40B36CA, 0xCCE0297E, 0xFB276610, 0x67DF82EC, 0x8BB58FAA, 0xCEA3BDC2,
+ 0x02B21D68, 0xCC1F8A6C, 0xF902AF4E, 0x271828EA, 0x9028298A, 0xB5BF0156, 0x5A3B3188, 0x6CCB6806,
+ 0xE2F3A4A2, 0x3B776BB9, 0x66D01790, 0x133F2414, 0x1445FE7D, 0x5CC79E5B, 0xB95FD30F, 0x50971FC5,
+ 0x8D6AFECA, 0x3FB2427C, 0xC1A980EC, 0x54C9F2AF, 0x0F509DF3, 0x1B950AA4, 0x1E5B1596, 0x93E974B9,
+ 0x71D51A0F, 0xC973F4DD, 0x79BF62A6, 0xC72F58F9, 0xCAD478D6, 0x0F7C36C7, 0x05D08481, 0x43958D67,
+ 0x93F11E1A, 0xDCDDCE62, 0xB457AC62, 0xD4A98268, 0xA793471A, 0x7AB637E0, 0x1B9BA86C, 0x456B5EF7,
+ 0xD2E75711, 0xF95E6BCD, 0xD3043467, 0x056F1621, 0x21D58D4E, 0x0C9EF57E, 0x96B645B1, 0xF5A80340,
+ 0xBD9A4C7A, 0x4D94A305, 0x59D0F9B4, 0x113F56F9, 0xE0A948B5, 0xBF982299, 0xA05D1EA1, 0xE9C50F8A,
+ 0xAF6B8F04, 0x6B05485E, 0x17DD458A, 0xFB819464, 0x5CE2F61F, 0xECF95F48, 0xA26CFBA2, 0x6A0FD00F,
+ 0xA7A2CB0F, 0xFE10768D, 0x4A258743, 0xBBF2C41A, 0xF519DBEE, 0x9DA676B6, 0xE89449C9, 0x3E13EBE5,
+ 0x4A4A42A5, 0x42663182, 0xDAAF85AB, 0xCC671BCB, 0x217491EE, 0xDCC9B6F2, 0xE1A3A7EA, 0x7B13F2F9,
+ 0xCFFCBC9F, 0x3D8FF387, 0x71ABA888, 0x2D3FE4C1, 0x081AB3DC, 0xBF21BA4B, 0x4ACE0F00, 0x6F5AB592,
+ 0xD328F08C, 0x542388E9, 0xE7A4157A, 0xE8532856, 0xE8DC528E, 0x3F2356AE, 0x76867882, 0xEC11E6D0,
+ 0x0C2DD257, 0x40A7C558, 0x354F885C, 0x2A2E0757, 0x6C0A6D95, 0xE0C23A09, 0xD1F32FF7, 0x7E27842E,
+ 0x3CDFD97E, 0x2F6807FB, 0xDBED07BD, 0xA039645B, 0x324B0955, 0x73620D27, 0x0C47D75F, 0x511BD37A,
+ 0xE80C4C44, 0xA3D77AFE, 0x058B503D, 0x391AC187, 0xD7425F0B, 0x93876765, 0x10CADF4C, 0xC4F3539A,
+ 0xF17B776C, 0x017BDEFA, 0x74F4651F, 0x65FBC1E5, 0xF55CC6B6, 0x1752401A, 0x85FB6434, 0xB8FD0F06,
+ 0x4D0D80FF, 0x0DD8438D, 0x1C5844B7, 0x31ECF66B, 0xF8A8B528, 0xA9BE0373, 0xC401C7FC, 0x3BA1FFF4,
+ 0x63946BBD, 0x82514893, 0x9CE303D6, 0x51EA2484, 0x054CACA2, 0x3F812B32, 0x0F3C603F, 0x4B3D86B6,
+ 0xD33F5950, 0x3340BFC0, 0x47CEB79D, 0x1CAB5D3C, 0x74897EB5, 0x1C320D6D, 0x8F0480D2, 0x1384331B,
+ 0x8363A7B3, 0xA5439504, 0x0E06AA80, 0x4BBFF55C, 0x470094F3, 0x8DE8E9AA, 0xABA72796, 0x4333B263,
+ 0x6FEF04EB, 0xF921C722, 0x9599B4C8, 0xBFEFF55A, 0xF89AA502, 0xDFE85218, 0x0EE15930, 0x8B2AA7F8,
+ 0xDDB03823, 0x7427A3C2, 0x8E4AF556, 0x66A9640E, 0x2EA271AE, 0xFC5BB50C, 0xDC50B432, 0xF78BB3D6,
+ 0xA06156DE, 0x5A7D7A40, 0x40BD74BF, 0x882CC19B, 0xDB2B6143, 0x5532686C, 0xA6D65320, 0x6AB5B32A,
+ 0x34129535, 0x9E41D92F, 0x3D86A085, 0xA27DE0C1, 0x6FFBEC11, 0x77A4BE81, 0xCE1DF886, 0x318E96BA,
+ 0x82C84B84, 0x40B9874F, 0x39F9F9A9, 0x21E0AACB, 0x237FC858, 0xFF700E2D, 0xA840518D, 0x5E5ED583,
+ 0x7B11CB4E, 0x99733B7F, 0xFFAAF7A9, 0xB8CB13B7, 0xE67AE45C, 0xFFDA2FC2, 0x47D08BD7, 0xD68BACF6,
+ 0xDAAE30ED, 0x95735CAF, 0xF896B165, 0x395BC94E, 0xADF803B0, 0x76B82F4D, 0xF312DD33, 0x0DD0A49D,
+ 0x0852B35E, 0x4DF14366, 0xBA01C779, 0x1415A8FA, 0xDC10F525, 0x1CE06D80, 0x953089E6, 0x933C3EE5,
+ 0xC18B1022, 0xFAD11D71, 0xA1EA92BF, 0x2AE61798, 0x63D0C0CF, 0x1CF8CA34, 0xDF748AFB, 0xF0FDE897,
+ 0x26FC4399, 0xE563FFC5, 0xE6AFE218, 0x5EE3254B, 0x76565E08, 0x70F5EFBE, 0xBD66AC9A, 0x90853CB1,
+ 0xA002CE55, 0xAFE263F4, 0x804DA5A5, 0xBB971F95, 0x775BDE46, 0xEDA15B5F, 0x3D5A2CFE, 0x6D9FE953,
+ 0xE84541F5, 0x6574FB29, 0xFD3ADC69, 0x1BAEDDED, 0xE3F810C2, 0x87CC8D7C, 0xDC23F894, 0x7635A6DC,
+ 0x294E131B, 0x62FA4471, 0x83D3870E, 0xF82B9324, 0x8A493E04, 0xA8FCDF75, 0x20583A80, 0x5A94424E,
+ 0x18CED906, 0xB417F24A, 0x47089341, 0x62A432C0, 0xFDC17DFD, 0x5B89C6D2, 0xC8C8ED37, 0xD44D38B1,
+ 0x9A6DFF2C, 0x7C5ECB65, 0x76814C50, 0xB3D56A33, 0x5DF124F8, 0xDB92A5D9, 0x210F2E0D, 0x50FFFF1B,
+ 0x1B7ECD90, 0x481ED2FE, 0x094DA8E8, 0xF111F8FA, 0xAC7872DF, 0x4B8FE240, 0xA7CF01FD, 0x72AFAF1B,
+ 0x27BE7F7E, 0xE5F42B34, 0x02807296, 0x325F9CF6, 0x97EE1C92, 0xD5E6F65C, 0x7EA2490F, 0x666E3451,
+ 0xB17E6A43, 0x1AFBE46E, 0x8D2B871B, 0xD52A1A9E, 0x41EBA711, 0x9D4B906B, 0xAEB5A2F6, 0x7EC530E7,
+ 0x063FC87E, 0x48830732, 0xE5EC2B25, 0xA17B0F26, 0x2C63A878, 0x7A1362A1, 0x68B4DE31, 0x6EC14B7E,
+ 0xE65C3B05, 0x8EB452EC, 0xB6DD94CA, 0x8DC592C5, 0x402EA8BE, 0x689F131B, 0xDA3A54D1, 0x41D264AC,
+ 0xAD150ECF, 0xD7750790, 0xBD46E2A0, 0x2DC97F87, 0x2476F6AE, 0x28F4778E, 0xB4B9E75A, 0xE5532AD6,
+ 0xE58A7485, 0xDFDD2553, 0x779D3F91, 0xD89F3033, 0x42BB4152, 0x2F6EFB01, 0xF72C43BB, 0xF1DB8663,
+ 0x5BA625E2, 0x17180017, 0x151F03B3, 0x7FDA9772, 0x1DEB2F8D, 0x178DE5EE, 0xDFF10ACA, 0x2DC29F2A,
+ 0xF2797346, 0xC298535D, 0xB56C1D35, 0x6389138B, 0x54B732AE, 0x3FAF9958, 0x3BFE3E52, 0xA311D83E,
+ 0x50E7B0BD, 0xC28F97B4, 0x8C1FAAB7, 0xD22BD453, 0x4E6A4D65, 0x626B6251, 0x1F547F6C, 0xEF8105A0,
+ 0xB7A062B6, 0xE1325CC7, 0x8207E7A2, 0xB0A9E0D6, 0x097B78C1, 0xC41D4176, 0x13DB573C, 0x5291E598,
+ 0xF4D1AFB4, 0xA93FE970, 0x673042D8, 0xCC98A35A, 0xCEBD4AE5, 0x47B8BB39, 0x5F8A294E, 0x37FDA881,
+ 0x9E81D5BD, 0x47691BD1, 0xFB92FBF8, 0x24AA898D, 0x0D0B5B29, 0xE5E11928, 0x7D356637, 0xC4525D0E,
+ 0x72AFE781, 0xEBE53FCD, 0xBCBB299C, 0xC40B26D3, 0x1C049A63, 0x4621C7F8, 0xD3337531, 0xF5CCAE80,
+ 0x5D3D0BB7, 0x2246BD17, 0xF158D4F9, 0xE5CB58A2, 0x07F5F1E1, 0x9D420346, 0x952C186B, 0x9DBB2227,
+ 0x203D1639, 0xC022D8AD, 0x7A91F3DD, 0x9326CB7B, 0x2971F3FA, 0x7EF8C14B, 0xB7B468DA, 0x840A9104,
+ 0x6F811C48, 0xC0DAC40B, 0x68D75281, 0xB7DCB2D8, 0x9A216C54, 0xEE710DB9, 0x54ADDAC6, 0xF6F71ECF,
+ 0x6F1E0D83, 0xDE5ECA0D, 0xEA40DE93, 0x962D60E7, 0x6B575E29, 0xFFCC6677, 0x0D879692, 0x728CBE24,
+ 0x9011B3F8, 0xAB260F9E, 0x5D71E2CA, 0x501F6613, 0x5F16EE75, 0x0D33E974, 0x8865BBE8, 0x10495EA6,
+ 0x393032AB, 0x6C7F4A61, 0xB685D152, 0x29D429A4, 0x24CA7E33, 0xCD26F3F2, 0x78D85078, 0x0BA90BA3,
+ 0x360CB744, 0xDF999168, 0xB60B3644, 0x39EED49A, 0x4A794E4A, 0x3B6715BF, 0x92D35DC9, 0xF640ADB6,
+ 0xFA96EF3D, 0x0DC22AD1, 0x48262E68, 0x6F620F37, 0x6B29E242, 0xC6FBEEB6, 0x3034A0D9, 0x122EF44F,
+ 0x7EEF61DF, 0xF3854D20, 0x0F84C1DB, 0x0DE504BF, 0x8AE763ED, 0x369AD35F, 0x8BA7B643, 0x44933BB5,
+ 0x49E96357, 0x4C7F9884, 0x2A5BF491, 0xBB8DCDC2, 0x3873C5F5, 0x0DB1AB26, 0x09FF188A, 0x93DE180D,
+ 0xBA757CAC, 0x06AFFBE6, 0x12B37F82, 0x150D3234, 0xC2C0AB1E, 0xC8B4D8F3, 0x65B7BB96, 0xBBF951B8,
+ 0xC4A03C44, 0x7E2FF9B6, 0x86592827, 0xECE0BE1B, 0x0DB32865, 0x5FC2CD73, 0x34AD2D16, 0x3B2057A7,
+ 0xC32C663F, 0xA85CD1EB, 0xEBD5BCF3, 0x439DC2FF, 0x93379CAE, 0x99273984, 0x3659A11F, 0xD5FF53BD,
+ 0x38704C43, 0x3D782532, 0xD7306729, 0x420E909F, 0x4840C5F3, 0xDA80DF8D, 0x53395E04, 0xEF690DCF,
+ 0xF9738931, 0xE91F7065, 0x5EB901A8, 0x176C6A2C, 0x25D062AE, 0xE4CCCB95, 0x93C87277, 0xF8FF911C,
+ 0xD7AE6706, 0xE704A40E, 0x38BCF64B, 0xDDFFF9FD, 0xD1BDE381, 0xA4313A0B, 0x48DDA520, 0xD064D1E3,
+ 0xDBFD61EC, 0x7EA87E9A, 0xF894AAFD, 0xB5565368, 0x2C34933D, 0xF0F50DE9, 0xF91EB25C, 0xE3EC3B8E,
+ 0x5E9409A7, 0xB2A9D39A, 0xB6B19F3F, 0xA6685DC9, 0xCAFC5B74, 0x4CC15F7F, 0x114E5709, 0x31B6E0EB,
+ 0x8CDAA5C4, 0xF5ABD631, 0x12A4A9C0, 0x969011BE, 0x9AB39E96, 0x0D406569, 0x8AE25103, 0x68474C26,
+ 0x9E8D006F, 0x9C8E4F0B, 0x314630FD, 0x2F30B254, 0xFE88FCF4, 0x941FBE2D, 0xC03B55A3, 0xEE474898,
+ 0xEC9B3BD2, 0xDDE00C4B, 0x7F192B54, 0xA25A0DC1, 0xDCF18F59, 0x55F674B4, 0xF6734A46, 0x92B7A7E2,
+ 0xCEDA18D8, 0x90EA738E, 0x7C98FEE8, 0xFC3DE7ED, 0x4075569F, 0x8989B676, 0x326B34DA, 0x52AC749C,
+ 0xAF71ACF8, 0xDC1F65F4, 0x408459F9, 0xD46B650F, 0xFAEDB779, 0xBC0C6EDB, 0xF68DB879, 0x40071FCD,
+ 0x2D01AC86, 0x7952D58A, 0x4F7A42BA, 0xD5C9306C, 0xFA7CC252, 0x48285F83, 0x51CD6BC3, 0x8212BC4D,
+ 0x53828B06, 0x8986B36F, 0x6E00951C, 0x6505074F, 0xAB3AF4CC, 0x12D92810, 0x44F4D0B5, 0x0D7DBCDD,
+ 0x152A5968, 0xA92C4ECA, 0x6795E17F, 0xD02C875E, 0xA4B5A04C, 0x2F0C4295, 0x72678451, 0x59B87A4C,
+ 0xB3AD2988, 0x7B717173, 0x6D0EC6EB, 0xF73B4FC7, 0x645D56E0, 0xBC73769E, 0x9A83ED5C, 0xCE5B332A,
+ 0x151A4D6C, 0xDEB26C33, 0xBA7CFEA9, 0x0FB2D875, 0xE0045E66, 0x9DB0072A, 0x5CFB3C42, 0x8C3FEFD5,
+ 0x4E7CB65C, 0x2905EC79, 0xA2F6C308, 0x296A6794, 0xB589571E, 0x4638BC8F, 0x964B8B40, 0xBE27615F,
+ 0x4E95C30C, 0x2B56A6A8, 0x4BC50BC3, 0x497BB78B, 0x8860A6CC, 0x80830DB7, 0x9D726E3A, 0xE63600FD,
+ 0x7A68F80B, 0x1C5CCCA0, 0x1784B6A4, 0xBCA7EF08, 0x425ABF74, 0x3663AD11, 0x72F2AEC0, 0xA4A940F0,
+ 0xBBC08817, 0x5C158691, 0x7C1ECC0E, 0x1818BB5B, 0x0DE17D9F, 0x350D4BB6, 0xAC21F0FB, 0xB913C7B0,
+ 0xE9DC26F6, 0x25B995C5, 0x0D2E9E6F, 0xD39C93A8, 0x1C775CED, 0xF1E69A7D, 0x0025310F, 0x782BBDF8,
+ 0xFD3E83E4, 0xB5DD602E, 0x1CD9044C, 0x2AFC3405, 0x79E32E1E, 0xB59B4A79, 0x4609271E, 0x1C5E4D7A,
+ 0xA74D0009, 0x319A07E9, 0xCAC3A6FF, 0x8B515C07, 0xE80FE11D, 0x1D59CF05, 0x38F946AE, 0x6324D94E,
+ 0x313D3FE8, 0x310AF64C, 0x3CDE2571, 0x0644DA97, 0xEADBF286, 0x7B5DACA1, 0x8D5D3A54, 0x1376A003,
+ 0x51774091, 0x562A7891, 0xC246A9FA, 0x82C1C05F, 0x0D662D24, 0xAEDDA534, 0x5A96ED06, 0x2C055326,
+ 0xB0F2F5B0, 0x21C1F0F6, 0x6C39F1DE, 0xDE48E8FE, 0xB5CD1538, 0xC4E356AC, 0x1B24FE63, 0xF36D1426,
+ 0xB8B827D2, 0x1576F620, 0x3F49589E, 0xC438975C, 0x64880EDA, 0x7C322884, 0xD3978FBD, 0x4787B61E,
+ 0x2E192772, 0x0584B589, 0x0EAAA684, 0x6D81DE51, 0x63717598, 0x08A48B4D, 0x2DF88EC5, 0xA647285C,
+ 0xFC81F7AE, 0x10E48D34, 0x963F5C91, 0x8F592492, 0xC79010B8, 0x8A6D4936, 0x4759E38B, 0xACFC5255,
+ 0x0C9D02B7, 0x1B52A34E, 0x3B0A60A1, 0x1DB4E220, 0x23DCD523, 0xEA42AD41, 0x9B3CB86B, 0x6C503824,
+ 0x41DC835D, 0x22A311A5, 0x7B7AD03E, 0x6AFA5972, 0x3E506D92, 0x04FED79C, 0xCE801EEF, 0x7BA17C52,
+ 0x3AFFBB6A, 0x96A23185, 0x74316B7B, 0x11D330F6, 0x8484E528, 0xB643261D, 0xCC076540, 0x9116E092,
+ 0x4B6D5634, 0xC9532DCB, 0x0CBBB981, 0xE8D8E41F, 0x7573408A, 0x684F202D, 0x9A92649E, 0xF2CF0C39,
+ 0xF6C540AE, 0x29368636, 0x6A5BD7FB, 0x5044B256, 0x35AEC028, 0x8C12E363, 0xE0A2FE6D, 0x9E8EB149,
+ 0x2ED1CF45, 0x54A9880B, 0x4E295354, 0x83730F2E, 0x279AD027, 0x7051921F, 0xC4E219AC, 0x8B540A9B,
+ 0x947E9DF5, 0x28B61847, 0xC4E32434, 0xF9227028, 0x3D489511, 0xD5A41195, 0xA03EE1BD, 0xD761441F,
+ 0x402F7502, 0x5AB68BEF, 0x5555B735, 0x5918623F, 0x983735E9, 0xE332F1B8, 0x48D83C28, 0x81318EE2,
+ 0xABB8AA53, 0x01F0C3CE, 0xB4291A62, 0x89344F27, 0x5FDEEA6C, 0xE6D22F86, 0x9988C7DC, 0x051A1432,
+ 0xE11867BC, 0xEFA49EEF, 0x48AADD79, 0x33633BF3, 0xA56B57B4, 0xA253AB9F, 0x7FC8340A, 0xAB73B132,
+ 0xF1DFB6CC, 0xC5F02EDA, 0x426782CD, 0xF6648D35, 0xB4AB88A0, 0x9BA7B785, 0x67C03341, 0x22612D33,
+ 0xD32ED490, 0xAAA56F6A, 0x37ECD8CD, 0x518E8140, 0x7390301C, 0xB33A9E62, 0x244220D4, 0xD88AE216,
+ 0x9752DEEA, 0xB8A22F50, 0xBFB221CB, 0xDB4D57A0, 0x02D39A0D, 0x8C311F00, 0x1192748C, 0xB9505446,
+ 0x469C1E7B, 0x3AEFF9A6, 0x7CD5ABE8, 0xD849E5F5, 0x1E2FB30A, 0x18879BD8, 0x6DDD966E, 0xC9BD4B8F,
+ 0xCEEBCCD9, 0x0D881346, 0x20
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
new file mode 100644
index 0000000..244bf03
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f,
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
new file mode 100644
index 0000000..ac27918
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
@@ -0,0 +1,786 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f
+
+input1 =
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
new file mode 100644
index 0000000..e8aa63e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x818181e0, 0x8181817f, 0x7f818179, 0x7f81817f, 0x817f7f81, 0x7f819481, 0x7f7f7f81, 0x7f7f7f7f,
+0xbc7f7f7f, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f58, 0x7f81817f, 0x7f7f817f, 0x817f7f94,
+0x7f81817f, 0x747f7f7f, 0x817f7f7f, 0x81817f7f, 0x81ab8181, 0x7f7f8181, 0x7f7f817f, 0x7fa58144,
+0x81817f81, 0x8d817f7f, 0x7f7f7f81, 0x7f827f81, 0x7f7f6581, 0x82817f81, 0x7f817f7f, 0x7f817f81,
+0x817484c0, 0x817d8181, 0x817f817f, 0x7f7f8181, 0xe481817f, 0x81817f7f, 0xc2818d7f, 0x817f2e7e,
+0x7f7f8181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x81818181, 0x7f7f7f7f, 0x8181517f, 0x81817f7f, 0x917f7f81, 0x947f817f, 0x817f8181, 0x7f7f8181,
+0x7fda7f81, 0x7f81817f, 0x94817f81, 0x817f6f7f, 0x7f597f7f, 0x7f7f7f81, 0x817f7f81, 0x7f817f7f,
+0x81817f7f, 0x8181817f, 0x81867f7f, 0x7f817f7f, 0x7f7f7f81, 0xae8b8184, 0x7f818187, 0x7f817f81,
+0x817f8181, 0x7f817f7f, 0x8a7f8181, 0x7f7f7f7f, 0x7f817f91, 0x81817f7f, 0x7f81817f, 0x7f7f8181,
+0x8181817f, 0x816e7f81, 0x81817f7f, 0x818c7f7f, 0x8181817f, 0x8181817f, 0x81927f91, 0x81818181,
+0x81877f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0xa57f8181, 0x7f7f8187, 0x7f818159, 0x7f7f667f, 0x7f818181, 0x81817f89, 0x817f7f81, 0x81817f7f,
+0x81757f85, 0x7f817f7f, 0x70817f7f, 0x536e817f, 0x818a817f, 0x8181818b, 0x7f4f8181, 0x7b817f87,
+0x7f817f7f, 0xed7f5d85, 0x96816e81, 0x7f7f817f, 0x7f7f817f, 0x9f817f7f, 0x8181817f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x69537f8a, 0x7f1d7181, 0x7f7f817f, 0x817f8b81, 0x817f7f81,
+0x7e817f92, 0x4f697f7f, 0x817f9281, 0x818a9581, 0x7f7f8176, 0x817f7f7f, 0x817f817f, 0x6e817f75,
+0x817f677f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
new file mode 100644
index 0000000..a757869
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
@@ -0,0 +1,352 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD5000000, 0x21E8B7C8, 0x5B2F2C4C, 0xB82FC8DD, 0xD6D53ED2, 0xC4E0B4D4, 0x20C8DA1B,
+0x2525D305, 0x3F393034, 0xD52ECB1D, 0x0B3421C2, 0xD0C42E2C, 0xC2303B2C, 0xDF24DC44, 0x38D6ECCE,
+0x1FF54529, 0x2E32132E, 0x26473034, 0x35DE3D10, 0x14B81CED, 0x1AF01B61, 0xBF102523, 0xED35CAE4,
+0xCA412326, 0xDBDDCBD3, 0xDFE700C9, 0x3B21C300, 0xF41F382B, 0xB1493EC6, 0xC941BF22, 0x4FD22F1E,
+0x3CB9C313, 0x263ED626, 0xF3D3343A, 0x34ED4435, 0xB8EDE1C7, 0xE92137DC, 0xB11EBC35, 0x35381DD7,
+0xF143E322, 0x12272EC9, 0xDE4A1D32, 0x31C20C45, 0x3D2F1FC8, 0xCD46303E, 0xDBD6BC2C, 0xF1C8E2E7,
+0x192B2CD2, 0x352B3E2E, 0x463AD92D, 0x4A2A0200, 0xD82AD836, 0xD3CDB81D, 0xC511F339, 0x34E62EC3,
+0xC2DD383B, 0xE329E119, 0x08E4B233, 0xCCCDDC29, 0xD32EC722, 0x3D20C3CA, 0x2EC52110, 0x1AC50B1D,
+0x1F29DFB8, 0x10C33A24, 0x31D94B1F, 0xC338D337, 0xDDC3FFC2, 0xFCAED40A, 0xE6FFDFC6, 0xDFF321D8,
+0xE8192FE9, 0x3FD13BE9, 0xAF3013D9, 0x00BD43D2, 0x35063C19, 0xEDD029D2, 0xBF462B3A, 0xB718F13D,
+0x37C03CC8, 0xB4E9FD1C, 0x48E3D7C5, 0x4230D2C7, 0xD8EC2F25, 0x24D2C9EE, 0xE81D2BF9, 0xECE9F4D5,
+0xE51219F0, 0xE6F534D2, 0x0CCDD24A, 0x38CD173C, 0xE5CD23B9, 0x29E2E233, 0xDDD5A136, 0x13FECE2F,
+0x41DE4323, 0x34DC37CF, 0x22D50526, 0xC5E2CD3E, 0x3F003144, 0x2719DA49, 0xDFACC831, 0xCF11D936,
+0x3DC9C006, 0xB0D8B9C9, 0xD5304536, 0xE7BC0A1E, 0x3EC1491C, 0xF31B162F, 0xC7403F20, 0x3CDE2D37,
+0x262EEDD7, 0xD822433C, 0xE2A72C0A, 0xC43927D8, 0x30B8DCDA, 0xCE16C8BD, 0x1EB72B1E, 0x0C28073C,
+0x35211A11, 0xD0E9D2AC, 0x2832E21C, 0x382BD133, 0x0751DE0A, 0x2DFDB82F, 0xCBE3463A, 0x42D32730,
+0xCCCA32DE, 0xE02C3748, 0x27E3C933, 0x40E0DB15, 0xE025F727, 0x241930D2, 0xD32020DD, 0xD8F2C4B8,
+0x3019EADD, 0xE71C2315, 0xE9E6D5DF, 0xC5CD5126, 0xB41CA746, 0x2FB83CCD, 0x35C6BED8, 0x3331471E,
+0xCC3FBDC3, 0xA8ECCC3A, 0x3526C0CF, 0xD62B39C6, 0x122EA623, 0x20CF2ECA, 0xB2CED000, 0x08C2313B,
+0x3D264ED3, 0x45D4C0F3, 0x36D6C4D7, 0x21D8B505, 0x15DDD3BE, 0x2619D840, 0x3ADAFFD0, 0xCA46DDBE,
+0x15E20E1B, 0xAFC03D27, 0xC409C8DA, 0xB12904C4, 0xAD3F51C9, 0xBB341C56, 0xDCD205E5, 0x281ECDDB,
+0x3FD11FC7, 0xBB49D632, 0xC1BD1CC2, 0xE12ED2C6, 0xDAE04719, 0xDDC54F21, 0x00CF332B, 0xE745DC2E,
+0x51C42D2C, 0xCF5AE21E, 0x0F39D514, 0xD623D246, 0xE2173C2C, 0xD341EF30, 0x291E2929, 0xEE2837BE,
+0x1ECC31C0, 0xD13ADA1E, 0x16CA2DF4, 0x18E636DB, 0x113914E1, 0x3BC2F5CF, 0xDDE01DC3, 0x5225F8D6,
+0xD9CBE9C0, 0x2BEBC7C0, 0x31E1CD29, 0xAC2AD33A, 0xC8CE5831, 0x1E48E62D, 0xF62E37CA, 0xD800B9F0,
+0x3033ED3E, 0xE4BEBFBA, 0xCACA26FC, 0xF133DE3D, 0xEC2CE33F, 0x48BACFA5, 0xC9B7CD46, 0xD4CF1FC1,
+0x4B24C2D8, 0xDAAB3B15, 0xC7F0D93F, 0xE9293C25, 0xC0F0B11F, 0xD7BDCAD2, 0xDD114C1F, 0x27200223,
+0xCD442EC6, 0x2FE9BD19, 0xCDDA27B0, 0xCF322DD8, 0xF7C734E5, 0xDCAFAFDF, 0xDD38CAC5, 0x10CE13D0,
+0x2E1B00E8, 0xE5F444D6, 0x465230CA, 0xD9DCF1CF, 0x35BC2ED4, 0x3CEBCDBD, 0xBA452E2D, 0x07C6C33F,
+0xE3F11B42, 0xC9E136DA, 0x3FCE0135, 0x35D9C7BF, 0x31C732CA, 0x4E33D2BF, 0xDB4B2526, 0xD4BC33C3,
+0x20E1C120, 0x1A301A40, 0xCFCADFBC, 0xEFE357E2, 0xAB3C2ED1, 0x37DB0C3A, 0xE2EDE232, 0x283DEAF5,
+0xCC443B2F, 0x1C365400, 0xD6DFC328, 0x234926B4, 0xC52EC63E, 0x0A38CA47, 0x2EEBD55C, 0xD1DA421F,
+0x462BC4E2, 0x1DEDE743, 0x3BD3EBF5, 0x2B4F422E, 0xE3E80C30, 0x3F3CADC7, 0x2444CA30, 0xC4091AC0,
+0x222DBB15, 0xCC2AFDD6, 0xD4352CCD, 0x03291233, 0xA73EDC22, 0x33D6CAD0, 0x2ED742D9, 0xC117CE2F,
+0x2C1221EF, 0x00C812DC, 0x4CE0CFD6, 0x17F234C3, 0xC9DCB32B, 0xCCCC1BA5, 0x2322D42E, 0xBED82250,
+0xD2CA5031, 0x2EE92411, 0x2F30DCD0, 0xCADA2925, 0xB42529A2, 0xD526E4D6, 0x2F171BC8, 0x322A2837,
+0xD6DD47D4, 0x172D12E7, 0xCCC526CA, 0xDEF43720, 0x28DDB219, 0x025BD0DD, 0x3CD7C7E3, 0xECC42AD4,
+0x342B34E7, 0xE329C1E5, 0xE700EB32, 0xD1ECAE41, 0x2ADACA0B, 0x1CC215E3, 0x29D5CF28, 0xD719D642,
+0xF9DAD2D2, 0xD3E4EA4E, 0xE03B1BC5, 0xEF31D23B, 0xE22B23F9, 0x2FD43443, 0xA9E228F8, 0x283C2EC0,
+0xED2A11C7, 0xECF1BE2B, 0xE3C5390D, 0x2D43EBD8, 0xE0222A44, 0x34D1D9DB, 0xBD1FCDCF, 0x28101F2B,
+0xC42BC3CF, 0x19DBEAC1, 0x47D72F45, 0xB5174435, 0xD4CCEB24, 0xE356E022, 0x38B333BB, 0x3BC73927,
+0xDFE3C627, 0xECC720CF, 0x1BE122FC, 0xFAC539C8, 0xD934D60E, 0xFF3BB81E, 0x32F7E51D, 0xF3FEEA40,
+0xD523F02A, 0xCACAD52C, 0xEB4330BB, 0x372B0FBE, 0xDD11353E, 0x1E24D0D8, 0xD83CCBD6, 0xCAD63818,
+0x120D2ACC, 0xCCA7C93F, 0xC53310B6, 0xFE222AC6, 0x3D26C300, 0x20C72923, 0xD06724CF, 0x34D8CE24,
+0x42AE08C9, 0x3C3DDDD7, 0xF2363225, 0x32CC3332, 0x2213CCC0, 0x27D0E22D, 0xD9D22517, 0x41B5D21A,
+0x3BFD1CDA, 0xD1D8CAC7, 0xD51CD8C2, 0xCE42D334, 0x3FC3E60D, 0xD63BD519, 0xC320CD2E, 0x35BDC63B,
+0xC21BE5D5, 0xCD324024, 0xD9C43FCE, 0x5CC2C1D5, 0x00E03011, 0xD923D9D3, 0xEEB92931, 0x24E536DC,
+0xCAB72344, 0x1E21B8DD, 0xD1D210BB, 0x2ED3EF2F, 0x3BE7DF27, 0xD5DDECCD, 0xCFE7D32D, 0x3CCE4F27,
+0xC512C9D5, 0x1B36F9CD, 0x1EE6C1D5, 0x402EB534, 0x1F1A2621, 0x482F35E7, 0x3B303031, 0xD8DC1EB6,
+0xCCC23338, 0xD92E14D8, 0xE818B353, 0xB2FAE6CC, 0x41D9382F, 0xCB00E0D2, 0xFF002A3E, 0xB9CAC8B5,
+0xA9F53F2B, 0xC7D6C336, 0x2641243B, 0xDC3D1038, 0xB8C2C6CE, 0x3637201D, 0xD03D2F25, 0x33B92EE7,
+0x2DD6CE2F, 0xDD56D31F, 0x29BB3F15, 0xE449CA35, 0x1CCBECD5, 0xC2C2CBC4, 0xE2412244, 0x30B6D42F,
+0x673B341F, 0x2321CF50, 0xC7C7EDC0, 0xC9F63F26, 0xD6D12C14, 0x2BDD30DA, 0x38C000D5, 0x17DA48CC,
+0xC2E2B83E, 0xD73ED9C1, 0xE131C12C, 0xC2FFBF31, 0x27D4DC39, 0x4828341C, 0xCCD5CD3E, 0xD4EEA83F,
+0xC446C5BE, 0x2E1C33C7, 0xEDCFC616, 0x2008DD37, 0x453CC9BE, 0x3538D42D, 0xCB3ACAE1, 0xC7D621C3,
+0xD0E5B6D2, 0x40461624, 0xE420D3C3, 0xC71D39F5, 0x2031D7F9, 0xAFF0D352, 0x3EB8B707, 0xD22D3000,
+0x33E02A28, 0x4026D2B6, 0xCED02235, 0xC3E1CD37, 0xDC3FCB3A, 0x31B3CFDC, 0x212DC7B5, 0xDFB236DD,
+0xBDE2C9EE, 0x2434312F, 0x372F359B, 0xE1AC3532, 0x3311EBBF, 0xB744CCD7, 0x2FC3BD6C, 0xC50537CB,
+0x1DBD2721, 0xA9C82DE8, 0x28CAC0CC, 0x5116211D, 0x3E331439, 0xDCDB10E8, 0x31CAD4B7, 0x00D5B32C,
+0x2BCAAFD9, 0xF54CCBCD, 0xE22BF32C, 0xE9D3354E, 0xC31444C9, 0xCB2F322F, 0xDD36CAEB, 0x1D2627D2,
+0x3DC022E3, 0xDEC3C9DD, 0x431B39D0, 0xF30A373D, 0x15C9F1E8, 0x2AD4D84B, 0x36504241, 0x36C203CB,
+0xCB15E43E, 0xDFF4C8C9, 0x17DD22D7, 0xBC2547CA, 0x24CB26D9, 0x3DE9D021, 0x39A921F0, 0xE0DC14E6,
+0xC500B423, 0x0CC318E5, 0x24DABDC0, 0x49B12C37, 0x20F2D523, 0x2F6924B9, 0x271935BA, 0xE3D6B1E2,
+0xFDC3E606, 0xC3E10A5C, 0xCC50C136, 0x25C4323E, 0x383BE3CF, 0x39E8D1C7, 0xD9342B2F, 0x9EED4137,
+0x2C2B1325, 0x31B5CAB0, 0xD1D6472D, 0xD924DC3C, 0x418EE537, 0x1B140B46, 0xBCDB1806, 0xD7C4B8CC,
+0x37EDCB1F, 0x28C0E1E6, 0xE124413D, 0x29D52CC8, 0xD7BDDF14, 0xB7D020FF, 0xD2DAE61C, 0x3F2D26DB,
+0xCEDB0ECF, 0xDA46EAEA, 0x26E31F2A, 0x0DDADD2C, 0xDFCDDE2F, 0x44BC2F30, 0x3C3CE9DC, 0x24B6DFC3,
+0xDFDA3729, 0x33EBF92C, 0xE620E3E2, 0x10A822E1, 0x28D12CD5, 0xC83ADFC9, 0xB746E025, 0xC23A3128,
+0xCA2AD4E4, 0x202CD518, 0xD51DCD00, 0xE8C517D9, 0xCFBFE2CD, 0xCCDD39DE, 0x1AC9C0E1, 0x18152622,
+0xF5283AB4, 0x223F33E2, 0xE72B1608, 0xD0CF27D7, 0x2D32BC29, 0x28C4CAD8, 0x303130D8, 0x3F15C2E2,
+0xBBE6303B, 0x25CC2EF5, 0x19D62458, 0xEDD21331, 0xCAE5D442, 0xE2C9322D, 0xCC3137CD, 0x2EA6D820,
+0x54C213CF, 0xDAD4DAC5, 0x0015E2F1, 0x2F453615, 0x4ECF1B3D, 0x1AC9CC3C, 0xD1D7AE26, 0xC72EF8C9,
+0x2CCB3C29, 0xCAD0D82C, 0x06533040, 0xB64DD6D5, 0xDC49E628, 0x44E2CCC3, 0xC940CF26, 0x372EE24D,
+0xBBE02948, 0x2A37CA35, 0xEA38E82A, 0x1BC9D0C6, 0xC4422BCC, 0x24C63E2E, 0xE3C3C22A, 0xDADD055F,
+0x3B39C61A, 0x13EFB4C3, 0xCECD3AD6, 0xD0002B22, 0x291A43D1, 0x12D5BCAF, 0x47E8272C, 0x23D21741,
+0x3E332E32, 0x3023ADB6, 0xD7D8D12D, 0xBA164DCB, 0xCCD4DBB5, 0x04232D2D, 0x4CC332BE, 0xD33FB819,
+0x31D02BDE, 0xC8163418, 0x402829CD, 0x373D1D26, 0xCB3439CB, 0xC129CF21, 0xC42E323E, 0x16C74614,
+0xCDD0DD3A, 0xF0C9D5F7, 0x21D938B9, 0x36C52327, 0xD3AA00C8, 0xCE26DD29, 0xD74DE03C, 0xC32BBB25,
+0xDEBB25CD, 0x4A483843, 0x2A35BFD9, 0x3B1940C8, 0xCBC71C2E, 0x47DF1DBE, 0x4437FA22, 0x36CDC148,
+0xC7D3D8E7, 0x33C6AF39, 0xD61DCCD1, 0x4C3D12EB, 0x20C5C5DA, 0x351A2C23, 0x36EB1A17, 0x3134C42F,
+0xF9B2E72F, 0xC64837DF, 0x464438CF, 0x1214D6D8, 0x10EA2F22, 0x9EB95900, 0x1B21C1E0, 0xCBD22E34,
+0x3137C536, 0x27B900EB, 0xDAC60E17, 0xC6BAC5CC, 0xE5D21DE2, 0x2ADDD132, 0x311342DA, 0xBFC4AC3E,
+0x0BD62C3E, 0xDF49CDDE, 0xE021E247, 0xCC2111C4, 0xD72DCD2B, 0xC4BABDBA, 0xE0C8082E, 0x171E30D5,
+0x1E44BD23, 0xB2D824E0, 0xE5D5CA1B, 0x1B26B917, 0x31EB173C, 0x001CEF39, 0x36C63F34, 0xD4EB14D9,
+0xC4251BBC, 0xBF3FB720, 0x3F4DEC00, 0xC6203232, 0xF741D825, 0x1BC31ED8, 0xBE30BF29, 0x2B2C21B7,
+0x2BC8B2D6, 0x1A3AE0DE, 0x3031253D, 0xF10929A3, 0x222EE535, 0xBE1521D6, 0x3734C4EC, 0x262A46EC,
+0x3B4211CF, 0xB429F148, 0xE03E342B, 0x24D2C612, 0x412D2233, 0xAF3BE02D, 0x2F00FA33, 0xCFC2D3C9,
+0x154AB434, 0xE2CEC811, 0xDF37CE34, 0xBF1B43AB, 0x49353E28, 0x3F330B1E, 0x33CC48E7, 0xA7D2DC58,
+0xCBD24C0A, 0xEC1038D8, 0x172DBFD9, 0x4DD51F56, 0xD14930C9, 0x1ECECDDE, 0x113E3649, 0x2D29BB20,
+0xCAD4D519, 0xC2CDD82F, 0xAA0E3BC3, 0xB42220C3, 0x3036F5B5, 0x2A12CB33, 0xD9FE2840, 0x3D2E13BB,
+0xD6BE30C2, 0x2C352ACB, 0xD9282D47, 0xDFDE40D8, 0xACDCDDCF, 0x13EB27CE, 0x45CBCBFA, 0xDF2D322B,
+0xEABC3C44, 0x04C6D9D6, 0x18CB1415, 0xCDDD1F52, 0xC0C7DE3C, 0x19393AD8, 0x39DF28B5, 0xC2DBFBDD,
+0x4E152DE9, 0x312D25D4, 0xECD1DF49, 0xC7C2DDC5, 0x1B3A2A3E, 0xD51FE8C6, 0xD827DDC9, 0xE0C934C7,
+0xBBD10000, 0xDAC6D9D2, 0xF92D1E42, 0x1E65CE2E, 0x3EE8C7F4, 0xD1D3DCC2, 0x17CA3BE0, 0x332A323E,
+0xD7362F0D, 0xE333CBCA, 0x24C750CD, 0xE22E2638, 0xD0BDCBCE, 0x18E12CD3, 0x442DD5BB, 0x362C33F1,
+0x3E152DBD, 0xD2D7E3DF, 0xD8354028, 0x35E533A8, 0xDC123432, 0xEBCE2326, 0xD035D2D0, 0xF4CA28C6,
+0x2BDD42D9, 0x23D82E1F, 0xBC3ACB33, 0xD43902CD, 0x1A293643, 0xB0B9020D, 0x37BECB29, 0x20423725,
+0xC6DC1635, 0xDD2116C7, 0x5612C503, 0x3843D9CE, 0xCD20DA2F, 0xE6D2C5E2, 0x33EB3E30, 0x391C183A,
+0xEECCD2D9, 0x50D0F3E9, 0x3428122A, 0x1D272C3E, 0x1DD0232A, 0xD3E340CB, 0xEA2AD333, 0xEE2422D6,
+0x25B624CC, 0x0000E237, 0xD4E3A330, 0x2C48F4E0, 0xD2B6D6C8, 0x2E2328C0, 0xBDBFE127, 0x3FE21830,
+0xB6360B23, 0xE2CECAE7, 0xDB26CACB, 0xF610C63D, 0xB9B7373D, 0x3DD2DC2D, 0xCC2E27BE, 0xE9EB30E5,
+0x4E3B4EDB, 0xD221E9F0, 0x40EABE42, 0xCAD019D8, 0xCFED3E3F, 0x233F37E0, 0x21BBBA29, 0x2BC205CE,
+0x220F4126, 0x1F33DCCA, 0x42C9FA44, 0x08D13533, 0xCE261FD2, 0x18F21A24, 0xBF39C732, 0x49362925,
+0x31C5EDDE, 0x1DCD12C8, 0x1EBECA2B, 0xDE4FC423, 0x2D24D73B, 0xE3CD2E29, 0x2F1D2114, 0x4D3ED124,
+0xDE264432, 0x3E1A4AC7, 0x1AE4D7E3, 0xCBB714D5, 0xE8C930D4, 0xDD4130DB, 0x3FF71706, 0xD21E380C,
+0xCF2821E7, 0xC4DCD6DC, 0xD4D12FD5, 0x0E2B0000, 0xB731D9E0, 0xD32E3CE0, 0x3F12D60F, 0x3ACC29C6,
+0x3F252128, 0xE3CD5139, 0x3033F445, 0xCFC424E3, 0xE824C624, 0xD641D523, 0x23DAD636, 0xD529F73D,
+0xCF524AB1, 0xC846CFD0, 0x3124EACA, 0xE2DED6E8, 0xE52DE303, 0xE61D33E1, 0x3AD8F00F, 0x24E4E32E,
+0x1BC81AD4, 0xCC1018E0, 0x24C4E826, 0xE033D93E, 0x09DADFE0, 0xDDCBD8CB, 0xD1D13ACF, 0xB816D348,
+0x30E0CAE9, 0x4EDF37A9, 0x0B0FCE1F, 0x49D1E3CD, 0xEF24DAFF, 0x34223BCA, 0xC9CBC641, 0xC1E3B3E5,
+0xCDEF2C3E, 0x3427DCD1, 0x532FDDD6, 0xB8F0F425, 0xDEE7C9C9, 0xC3DBD3C9, 0x26EB281F, 0x1310E0B8,
+0xC032EA30, 0x162A2E2C, 0x0DC7C131, 0x1AD81240, 0x0000E313, 0xDD1CF2DD, 0xDF2FC7EB, 0xD926C532,
+0xD2C31E0C, 0x3021CAC7, 0x3D3531D8, 0xCFCA272C, 0xAF17CFD0, 0x2EC91E4E, 0x483EC3D2, 0x26D1BE1B,
+0x01C832FF, 0xF8DB2BD5, 0x16272CD7, 0xCB3F46F9, 0xD6A43316, 0x1BCCF4E3, 0xC6D42546, 0xD7453106,
+0x11C336AC, 0x30F6B221, 0x34481FD0, 0xDC4CD91D, 0x4E40CE22, 0x3D26C421, 0x21EECCCD, 0xBD3219CC,
+0xEC25E136, 0xF6C7E4C4, 0xFF37E71C, 0x1827EACC, 0x190B3AB7, 0xD12F2ECA, 0x3E26DE25, 0xD1DA1C28,
+0xD4D7BDBC, 0xBB1D23E8, 0x2BAD1624, 0xE4CCDB33, 0x1A3AC8D6, 0x2E2F37D3, 0xCBCF3253, 0xE92F2E28,
+0x2E2E4FD8, 0xDB1A35D7, 0x2DF01EBB, 0x4AE9C6D4, 0xD007E02C, 0x1444C6D5, 0x2E0C0000, 0xC4DBEDAE,
+0x2FCEBFEA, 0x2C3B40BA, 0x142F47BC, 0x1CF00BD6, 0xE0DC27C4, 0xDDE239D5, 0xF9B5DF3A, 0xB5C82FC8,
+0xE0D93618, 0xD8E941CB, 0xDF27E3D2, 0x3CF4D533, 0x31CAE4D7, 0x24E8C738, 0xDA29D1D8, 0xF4ED30CB,
+0xC41C4434, 0xEC35D1D3, 0x231756D0, 0xE9C2272A, 0xD137CAE6, 0xCEBC2836, 0xD3E1D1DD, 0xABCF0B3B,
+0x41CC23B1, 0xD63B4C32, 0x171BDFC6, 0x4FD5CFEA, 0x2E4E50D9, 0xDEECB2DD, 0x233FE437, 0xB01B32D0,
+0x22252EF6, 0xCD2B1C3B, 0x28CDCE3E, 0xC5D82D2A, 0x33C7AA9C, 0xE3E8CE26, 0x591EDF30, 0x21C21ED5,
+0x2A34E8C5, 0xD22A24C1, 0xE0402F3E, 0xCFC0FBCA, 0x33164123, 0x203E3C1A, 0x3CBECCBD, 0x0000D237,
+0xD61ECBCF, 0x1DDFE3F7, 0xDAFC2A29, 0xCA2F2B0F, 0xAEACD72C, 0x3017D4BF, 0xC74F1EB4, 0x2E3FCB3C,
+0xD927BC18, 0xC43922D5, 0xDDEB13C4, 0xA32437B9, 0xEFE81FF9, 0xBAE82C0D, 0xC7E6C9DD, 0xB921D0AE,
+0x39D1E5D5, 0x2E361F3B, 0x2043C9D3, 0xC2011AD6, 0xB3133928, 0x31BCC938, 0xD2D7B6C4, 0x25C04D1C,
+0xC729CEC3, 0x22383E2E, 0x2EDF3323, 0xDBC4DDCC, 0xDFDFD551, 0xE531CA1F, 0xCAD1DFE9, 0x3EBACB2A,
+0x38CF3BDA, 0xDEEC142A, 0x0CDFDA28, 0x071ABBD2, 0x422557D2, 0x1D334039, 0xC5331AB2, 0x21E1D4C6,
+0xB630392A, 0xB6D8C0F2, 0x322E2548, 0xD8C7C3C1, 0xC2E4C6EE, 0xE6E8D3D3, 0xE019314C, 0xE9CC51E4,
+0xBD2EE4C2, 0xDFCC0000, 0xD9EEC634, 0xC137BECB, 0x263C3ADC, 0x11CB4ED2, 0xBB302CA8, 0x3347262A,
+0x2732ED40, 0x3126D9DB, 0xBE391CC2, 0x2B14B7E9, 0x19DBDBC1, 0x23D22EBF, 0xCD23C2BF, 0xB13D392A,
+0x4825ECD8, 0xB620E4F9, 0x373E38CA, 0xBE2FC3D7, 0x3AC1D32A, 0xCF26452F, 0x3B01D1CA, 0x44DA41BC,
+0xBE2EDDF4, 0x4ADECBD7, 0x08D9223E, 0x3BDCDCDF, 0xBDC336D6, 0xC8D7C237, 0x2ABED6C3, 0xEF38AF11,
+0xD5EDD5C9, 0x333A3D29, 0xEAD4DABE, 0x01F2BBDA, 0x3FD8CCEE, 0x3BDBBDBB, 0xC535E822, 0xD5E031C7,
+0xCD1E31CE, 0x30C04919, 0xC8D33AD3, 0xC71F3639, 0xCB2D2910, 0xC442B5BC, 0xC24110A5, 0x2430DD27,
+0xEE3D12DD, 0x2AE45124, 0xD4CA4C3B, 0x2ACC31D6, 0x3941E4BA, 0x39DAF13C, 0xAA98D351, 0xB1DDC0BD,
+0xDED4CBD2, 0x4C2DDBB5, 0xDACFF1DC, 0xDB24DC4F, 0xD3E3E033, 0x1CBF3DBC, 0xB8BB1C16, 0x293E26B5,
+0x223A2A34, 0x2AC5CE13, 0xD7C84002, 0xBF33C0B3, 0xE815D02B, 0xD7CF2DD8, 0xF20DC0CA, 0x3725CCDD,
+0x44C4E4B8, 0x2AC918B4, 0xD7EC4025, 0xD1C53EC6, 0xC0DADFC2, 0xE8C0DD45, 0xD3344C19, 0xDEC741E6,
+0x05302D55, 0xC128D64B, 0x2CB7E53B, 0xDC02E1BC, 0xFDC74612, 0x1F4B1521, 0x3CE9E219, 0x07C633D2,
+0x2836D0B1, 0x27E6D0D7, 0xDDDC3027, 0xEA3A2F16, 0xD226313A, 0xDCDD19E0, 0xCC5CD1DA, 0x412B2FDE,
+0x0E30C7C6, 0xD755DAEF, 0xC62DC85A, 0x40213CD1, 0x42CC0000, 0xE43230C4, 0xC43D22D7, 0x36CB31C2,
+0x3B2E2429, 0xD9D73DC0, 0x43DFD2E5, 0x41B9E2CA, 0x12C7E32D, 0xC6DE9BDF, 0xCBC136E5, 0x24262DE8,
+0x2D1AB81B, 0x0B31BDD9, 0x3EBA1A39, 0x0D322ABA, 0xCCD9B31C, 0xDBD1DE54, 0xDBE3F33E, 0xD3BD38E5,
+0x28272330, 0xCFDCC3E2, 0x153DB3C0, 0x2E2227C9, 0xF5CDCBCD, 0x2338C0B8, 0x2C30C92E, 0x2B4AEA32,
+0xE4E5BA42, 0x45C2F21B, 0xEFFD2D04, 0x3FF63A44, 0xED3DD7DA, 0x2BE4262B, 0x0D3AE8D9, 0xDAEDF922,
+0x263F4E45, 0x1DD0D5F2, 0x4039D7EA, 0x3DDFE309, 0xD021CD37, 0xEA4FC829, 0xDADDC4B0, 0x26E6E2D5,
+0xABDAC00C, 0xDF3945E4, 0x32E6223F, 0xD5D709DE, 0xEC3BECBD, 0x0000DDA5, 0xCB49E8C8, 0xD0F72E2E,
+0x2DE4451C, 0xCB35C4E1, 0xC929D024, 0xE0A839DA, 0x2018BE30, 0xD51E252D, 0x1DE218BB, 0xD4EF9DC5,
+0xC1D6CF15, 0xC6EC202F, 0xDEE0243A, 0xD0CB2437, 0xDB4137C8, 0x1FCCD0CB, 0x494BDCE4, 0x21DDEC3E,
+0x32BFC82D, 0xE312CCD4, 0x24E9E03A, 0x2A25D026, 0x4238E8B8, 0xC53CD824, 0x35CC2CD3, 0x30360D33,
+0x31441C1F, 0x3BC2BB37, 0xBEBFD8B1, 0xBED4432D, 0x15DF3817, 0x0F552C4C, 0x2C3229CF, 0x093131DE,
+0xEADAD0CA, 0x20DB1DE4, 0x36CA19D7, 0x452EC9E3, 0xFAC8F1DB, 0x2FD72035, 0x3ED2E34D, 0x2924363D,
+0xC038C2E9, 0x3AD83425, 0x12D730D9, 0x272326B8, 0xC51F36DE, 0xE8E92A3C, 0x31EACEDB, 0xCB190000,
+0x2C3D1DE1, 0x000029D7, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x6D6C0FC7, 0x695E19CA, 0x7EB05A2B, 0x097E1C19, 0xF638B020, 0x434867BF, 0xB2F7A7F9, 0xD5E4675F,
+0x1484C629, 0x6D2398C9, 0x2E9D9825, 0xF77207AB, 0x2298BE4E, 0x9F0348E7, 0x63F5E6D9, 0xFCED9D5F,
+0xC3156E03, 0x3DDED87F, 0x82A04AD8, 0x46830814, 0x0ABC6AF6, 0x8460B3FA, 0xA125DB70, 0xFD2E5A73,
+0xCCA0D482, 0xD24F74B2, 0xA165BF2D, 0x7AEB7769, 0xD2E8E792, 0x8074937C, 0x304C10C8, 0x04D042E6,
+0x6F6FB346, 0x3F0DF322, 0xC33CCB51, 0x945F718B, 0xDFFAED2E, 0xC6256C5D, 0xEC4EC0B3, 0x6D158698,
+0xFAF192F1, 0x1C1B11DE, 0x1E0516AC, 0xA3EA4F89, 0xB3160AED, 0xB8F5B07F, 0x83DA2542, 0xED25300F,
+0xE72E3F2A, 0x4D65C154, 0x4A4A5AB2, 0x8750C7C7, 0x9186FAF5, 0x40340A94, 0xC5051EB6, 0x9D817A5E,
+0x20FA4764, 0x9B9785E9, 0xAB3A74A7, 0x24780C31, 0x72E2728C, 0x4281C451, 0xC58214EE, 0x17A374BA,
+0xB32FB444, 0x5CEB53DF, 0xA4F9F01A, 0xE040A0D2, 0x5C8387C6, 0xC402D081, 0xEE12B765, 0x66DBDE72,
+0x57768125, 0xA622CA43, 0xE27FC00D, 0x813CCAE8, 0x6250F3BE, 0xBA33C25D, 0x066FA4BB, 0x5D45B957,
+0x693C22DC, 0x2F92B6BA, 0xED8195FF, 0x1A8FA7A2, 0xAA901FC3, 0x5D3D3B01, 0xF9B29B46, 0x264EC79D,
+0x626D3F38, 0x026FC327, 0xC3F162F6, 0x0764E575, 0x64434EDD, 0xB4005E0F, 0xC0C5887B, 0xFC61AFB1,
+0x051E5849, 0x7256EF9E
+
+e =
+4914
+
+k =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..f765d99
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
@@ -0,0 +1,1034 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x21000000, 0x2b3bd538, 0xb93735b8, 0xc7df202c, 0xdb3827e4, 0x24403757, 0xbb23e931, 0x4dc9d04b,
+0x33e84c40, 0xe7dac343, 0xc33ad6fe, 0x0937db31, 0xc1f1e52f, 0xca46d5da, 0xd1b8fcf8, 0xc552c5e4,
+0xffcbddc1, 0x34c414db, 0xcf233f19, 0x1a23d12b, 0xc01539e6, 0x1c2a3654, 0xb9fb1fdb, 0xce2e3d5a,
+0xd64d38cf, 0x4331dd33, 0x1fd1b830, 0x272ac0af, 0x2ec74548, 0x39edde48, 0xdce0e533, 0x162a281a,
+0xb026112f, 0xcee2ec3d, 0xccdad2d5, 0x1c252f15, 0xf4cec5c9, 0xf7d8dec4, 0x343a39f2, 0xbe37130a,
+0xd2d0df43, 0x09202c38, 0xde253c1d, 0x352c2f19, 0xd2e03824, 0x0f430bd3, 0x3ff526bb, 0xcac0483d,
+0x00c8cac9, 0xecd7e347, 0xce280821, 0x27561f27, 0x413c34ae, 0xdde745b6, 0x4030d24e, 0xe115e1cf,
+0xddd54dd7, 0xd147c5ce, 0xd01a2746, 0xd6c12942, 0xc92642af, 0xee28b81a, 0x37222933, 0xe4e121f8,
+0xd8c2211e, 0x43cac91b, 0xdacfc2d3, 0x3acfcbc6, 0xebbecbcd, 0x1c1af2c5, 0x39c0de3a, 0x3237e446,
+0x3d3e3f13, 0x24393bcc, 0xd13c19bc, 0x1dcd53d3, 0xaf14bcc6, 0xc13a3f22, 0xe2c1e6c7, 0xd118c932,
+0xb2152926, 0x1e21ce29, 0xcf2ac6d8, 0xc8232b0b, 0xba22d6d5, 0x25e2e6be, 0x35dcc72e, 0x3adddcc7,
+0x34c422f2, 0xb023bcc7, 0xcd13df34, 0x43c2262f, 0x1b0ccdc9, 0xcd2b1022, 0x25d8323e, 0xd5d9441f,
+0xeb29393a, 0xd2c5ed00, 0xcf13a7cc, 0x10c539e9, 0xf83a3d31, 0xd5d5e3d6, 0xd4dd2cd5, 0xc8cb0cbe,
+0x1c1418c9, 0x35c5112d, 0x2028ebce, 0xd93ac6ca, 0x4042ced9, 0xd7d232bb, 0xccccf528, 0xd522d3b9,
+0x15242128, 0xbf51d1d9, 0x22103826, 0x3a0325b7, 0xcf3ae830, 0x394510c1, 0xe0334744, 0xebf12b2c,
+0x57bb0fa8, 0xcb0f303d, 0xe5f3062e, 0xdf323a0b, 0x1d34bed2, 0x2a1be5b6, 0xc53bcbd9, 0xb04f2fc7,
+0xe736bf1f, 0x0fe9b6ce, 0x37222b25, 0xaae9ce1b, 0xb62fe0e8, 0xc13adc2d, 0xd23c2740, 0xa93de410,
+0x2eafdc3b, 0x2454f134, 0x23d63f45, 0xb1edbf0b, 0x44e83847, 0xcc40e231, 0x05d133c0, 0x08bccf24,
+0xcf49dece, 0xf12c0023, 0x19c8d6d9, 0xd8d03644, 0x4748c0cd, 0x20d03322, 0x1ce62bdb, 0xd02e1ad9,
+0x46391416, 0x30e9ea35, 0xd63ec7cc, 0x3fc9d4cc, 0x41e1c3bb, 0x1920ba18, 0x2d2d1317, 0x2a1bde1f,
+0x1fe1d4c7, 0xc638b2da, 0x2adce33d, 0xb6c6dec7, 0x9fdec6c6, 0x1f3d1add, 0x46192041, 0x38e44c34,
+0x2d2323e3, 0xc9e83ed4, 0xc1cfaac7, 0xc70fc918, 0x2b2bc3ef, 0x21c133d4, 0xc5f10a34, 0xbdc51620,
+0x3bc4383f, 0x3d2fd731, 0x3429caae, 0xd4c5e4cf, 0xd41f451d, 0x2a2837c5, 0x46e1d6d6, 0xd0cb2f2a,
+0xf616d434, 0xbe13293a, 0xcefac92d, 0xc1badc29, 0x1c2b1e37, 0xbd173ac9, 0x3332bfc8, 0xd3cf49d7,
+0xc7e9d0e1, 0xd60037f8, 0x32cf332b, 0xd8412ebd, 0xd9da3fca, 0x2220bb12, 0xc1e316d1, 0x2f4dc224,
+0x3840dc1d, 0x202adb3f, 0x36cdbfc2, 0x23c5d5e3, 0xbb41c025, 0xddcbae17, 0xdbd9c2c2, 0x462d1045,
+0xc3ccd03f, 0x2232312b, 0xcc25d2d4, 0xc90bcdd8, 0xc6d6dc48, 0xd95f28c3, 0xe02a26f1, 0xe125ded9,
+0xd9c049ee, 0x33283431, 0xd23c2dbe, 0xd4d826c9, 0xdb14f123, 0x3fcb3e4a, 0x3fc7c4cb, 0x2fede31c,
+0x372cd243, 0xb7c608e4, 0x33cd371a, 0xd84632b2, 0x3239c2c3, 0xd525f2d8, 0x17b724d9, 0x3f3729d6,
+0x39e3e125, 0x21db42bd, 0x1cb6bb3a, 0x38303a26, 0x3632e32f, 0x2e28ccbd, 0x321bcdd3, 0xca1cbab3,
+0xd636e535, 0x403d2d31, 0x2c262b49, 0xe0d25442, 0xc230e5f3, 0x292523ca, 0x260fe3dc, 0xc81420fa,
+0x0b2541fb, 0xddd95bd9, 0x3e3a48de, 0x212128c2, 0x44e02e30, 0x47d2d83d, 0xc92149c8, 0xd520cad6,
+0x3cc467ea, 0x3f31ebde, 0xe12bd8c1, 0xd8cb2dc4, 0xa6461a2d, 0x16be0dcb, 0x35d82bba, 0xce3653de,
+0xc7db1d20, 0x30b817c0, 0x2746e3c8, 0xdb12302f, 0xd0b93824, 0xdbd0d455, 0xd4d63b1f, 0x2fd0cb3a,
+0x3e26dfea, 0xe0521ec6, 0x3ddac146, 0xdd2b29c9, 0x3f0938d0, 0x3fc713c7, 0x261b21d9, 0xbfc8d3c2,
+0x35de3d34, 0x03fb0fbb, 0xd24bd619, 0xd0283634, 0xdd3add4f, 0x38dce12c, 0x5cd149b0, 0x3e51263d,
+0xb7e2d5cc, 0xca3222e1, 0x222b4f00, 0x46cf1837, 0x333021c6, 0xc33b331a, 0x303724d5, 0x2c4cbbdd,
+0x29e4d615, 0x58c7cc42, 0x3d44dd4a, 0xd010d4bf, 0x26291fd9, 0xb930f3b0, 0xce30ea39, 0x1bd74df1,
+0x23d82bd4, 0xcd25504b, 0xcfcae618, 0x3b351d3e, 0xba37c7d5, 0x33bcd7d0, 0xb4293adb, 0xd71dc6e7,
+0xe1222636, 0xcfee25b7, 0xadc44668, 0x26d332db, 0xce2c1440, 0xc5acbf1a, 0xb6d4d7df, 0x303c26cb,
+0xbd55d341, 0xd3cef3e0, 0xbb44a629, 0x2a36bba1, 0x0d37c70b, 0xd1e734d0, 0xc8cd33db, 0x273d4534,
+0xc5e33d0c, 0x323c21f3, 0x37c5c137, 0xd624c207, 0xeac5c828, 0x1618e022, 0xc332dccb, 0x133ccf40,
+0xb6d7b5ca, 0x275ccd30, 0xc0f40061, 0xc2dede26, 0x22d61ad2, 0xe224c231, 0x2334e63e, 0x13c7e2e0,
+0x33dbcddf, 0x3941b31b, 0x4924cc27, 0x3bd0ed2b, 0xddd91bc2, 0x402c2a17, 0x31373e49, 0xc4e433c9,
+0xde0a3e33, 0x48bcbec7, 0xb3de19de, 0x4c561f3a, 0xc8d9d020, 0xdc3128fb, 0x2e25d437, 0xe62833da,
+0x4fdbd815, 0xe734c0ea, 0x142c22e4, 0x4e37c5ee, 0xe9d7d042, 0xd9d4c623, 0xa4f929d8, 0x2a1f2e3c,
+0x65433a47, 0xc9d8ca3d, 0xf01cd531, 0x4dcbbc22, 0xc5d4e1f3, 0xd33f34c2, 0xc60d1f2f, 0xe1ba2312,
+0xefead314, 0xebbef445, 0xd2d32426, 0x1a41dd2d, 0xd4e3cdc9, 0xefcfd2dc, 0x25cc292e, 0xc3ecd0ca,
+0xf4cc2d28, 0x4de2c525, 0x3100334a, 0x3e12daee, 0xdfef340b, 0xc74938e4, 0xb228d1d3, 0x1348413e,
+0x1529c8f0, 0x482b2cc7, 0x04d8bf1e, 0x3e3bd637, 0xdae0cb50, 0x3334e20f, 0xd4c5e035, 0x52d33734,
+0xed3b2fcc, 0x30e62321, 0xd02633ed, 0x19d5e3de, 0x3821c3c5, 0xd309c7e4, 0xc3e430d7, 0xcb2b22d4,
+0xc6341bd6, 0xd5282638, 0xde2a2a1e, 0x3b3ce023, 0xdd48bdb8, 0x32272ada, 0xd84ae4df, 0xca2d48d0,
+0xd33dc931, 0xb53ed0de, 0x23cd35d6, 0xb216112b, 0xd4c83a41, 0xe9dd4fea, 0xc9d14bff, 0xeba82816,
+0x4ed62d13, 0x37eef1d6, 0xa4dc3110, 0xbcbe2c15, 0xdc354bc3, 0x2ed20d25, 0x131fcac3, 0x25e1dc30,
+0x24c3c416, 0x3035c527, 0x0020001b, 0xeee141df, 0x16ca2fc6, 0x1b2bbe34, 0xd60b322b, 0xee09d023,
+0x3243c423, 0x52c42eba, 0x242fe8c9, 0xe9d5b925, 0xb9211244, 0x272e13c4, 0xe9cdca16, 0xc1ddeb0f,
+0x1cb2252f, 0xc3ec48d7, 0x07ae39d1, 0xcfdbd1d6, 0xd0efd937, 0xdf44ce24, 0x1b1e153f, 0x12cfc6c8,
+0x382dbfc7, 0xcd39c4dd, 0xda1b2528, 0xbe1cd5d2, 0x39d94147, 0xba3a39a1, 0x4a17f0bf, 0xbcea2ade,
+0x063927c0, 0x29122abc, 0x360cd8df, 0xd0ebdfc3, 0x2a313cc2, 0xc7b241dc, 0xcc282ad0, 0xda5334dd,
+0xe848e2c4, 0x2ebb2f3d, 0xcd5bcd1c, 0x2e201eee, 0xcd2dcdbd, 0x2f3152d5, 0xe0160ec5, 0x493ac035,
+0xdf174427, 0xead72f3c, 0xd8cb2f37, 0xc8d72d00, 0x2fe6e039, 0xe8e32d1d, 0x2ec4dbc8, 0xe23a454d,
+0x3351bfd6, 0x09da3acd, 0xd1d7dcd0, 0xcb45cc4a, 0xd51a10d0, 0xd2c3aada, 0xcfbcd530, 0x27cebe26,
+0x3abed442, 0xd126d93a, 0x1d3fcb2a, 0xe247bfdf, 0xad3e1434, 0xcd4ab1b5, 0xdb38212c, 0xcb291f27,
+0x0adfc2ea, 0xd236d7d6, 0x4d3423eb, 0xccded207, 0x362ad71c, 0xe2ca2041, 0xc72cd2a5, 0xdad9cbfb,
+0x4f29da19, 0xf23826ba, 0xb6d0291d, 0xd23bd0e0, 0xdd16d02d, 0x41111a3b, 0xc6c83351, 0x30bdc934,
+0xd721ef3c, 0xd1152cb7, 0x2023be12, 0x07c2ece3, 0xd2be45ef, 0xd1d1d9d2, 0x2a432327, 0xd0c6ddc1,
+0x1def40b5, 0x263f1f2d, 0xdbd8e325, 0x1fd30014, 0xd5daeae0, 0x14d9cac2, 0x3fd23919, 0xecdad1e1,
+0xe829d3e7, 0x3a29551f, 0xee2f35e1, 0xcad018db, 0xe6cc4239, 0x2959d2d6, 0x2530d2d9, 0xd9c54744,
+0x23e7d0cf, 0x4d37dfd1, 0x0f2439c0, 0x402a3319, 0xc232d5c9, 0x1816d9ed, 0xdee5aedd, 0x3fd7dfe7,
+0xe02fb85d, 0x04d4bbe2, 0x1933c820, 0xee2630b8, 0xd831132c, 0x0fd71f24, 0xc0f234d6, 0x234c36ca,
+0x1f27143e, 0x2b2e284f, 0x4f3c2a21, 0x38dedc3c, 0x1e2f2ccb, 0xbc26444d, 0xc43e1d26, 0xd2371f1d,
+0xe4f1e3c7, 0xcdc452cd, 0xd52141cd, 0xc627d418, 0xbe330bd4, 0x43c24b40, 0x33ac4128, 0xb9cabdc4,
+0xbd2defb9, 0xe9043be2, 0x38cb27c6, 0xcc004247, 0x27c62b22, 0x33ccdb23, 0xbab84cd5, 0xb9d938e2,
+0xbb2e332f, 0x4fed3932, 0x50d5cebc, 0xc7e84425, 0xdcca2b2e, 0x2c3729d0, 0xd247dd28, 0x2cdf09cf,
+0xe12352d1, 0xd2372c51, 0xd517da26, 0xdce63bd7, 0xca3926d7, 0x0bd144c5, 0xef37d830, 0x38b73a22,
+0xe03f2936, 0x33c8d7b2, 0xbc2adac1, 0x3650c52c, 0xc84d2317, 0xdec2ef28, 0xdb29df20, 0x2bced846,
+0x2e452fde, 0xdf1c3ebd, 0x482d203e, 0x2537efb8, 0x2235e42f, 0xc3bb2ad6, 0xc4fe2f29, 0xd324313d,
+0x38bfddf5, 0xd6de3a2b, 0xda3a272f, 0x2bd6bbd3, 0x2c35bcc2, 0xcf2fd248, 0x4551b9e2, 0xadf0b1d0,
+0x4038c4db, 0xc71427f0, 0xe1e32f40, 0xe71b3dd8, 0xc73810dd, 0x3d4d223d, 0x3116e9d9, 0x44b0c7ca,
+0x5037ccd0, 0xe5d52a0e, 0xc644111e, 0x35272fd3, 0x361421d5, 0xc9cad2cd, 0xdd360cc9, 0xaddd2ce7,
+0x2aee4aeb, 0xbd0713b3, 0xf5f3c02e, 0xeec531cd, 0x20da0841, 0x2f09e526, 0x332e2628, 0x3bc81726,
+0x111bf6dc, 0xc0c4c718, 0xea2d49df, 0xe3ce2d40, 0x242640ea, 0x0ae5cd37, 0x3f39e1d5, 0x5031edd7,
+0x3018322b, 0xc7d6ccbd, 0xc94429f1, 0xc93a1f33, 0xd32dceb2, 0xdf3317d7, 0x2fd5c1c5, 0xd02f4130,
+0x42aebc06, 0xda2bdab4, 0x47c5c033, 0xdf2ed3e1, 0xbace19ce, 0xda1feac1, 0xe04a1821, 0xe7d6b9d5,
+0x10d2a41f, 0xe0e330c3, 0xc7ea3f34, 0xbccb22d2, 0xce2e1a00, 0x27c43a0e, 0x3321ef35, 0xf6cb3437,
+0xcd41d1da, 0x36eec4c7, 0xd93b5aed, 0x152125e5, 0x41ca3bdc, 0xc1eceac8, 0xc8ca0601, 0xd32dc440,
+0xbebe2042, 0x3039cec9, 0xc4371645, 0xd529cadf, 0x423ee1ea, 0xe2dc1bf1, 0xdbbbd443, 0x3ceefff0,
+0xc0362841, 0xe3dc26e7, 0x272de1fd, 0x58d2441e, 0x1820f554, 0x3acacd0c, 0x3fccc9d2, 0x22332dd4,
+0x32d6b939, 0xc4d03dd8, 0xb03ebfcd, 0xe6beecaa, 0xc95528c5, 0xd2e131d1, 0x34373842, 0x44da4bbb,
+0x431e3ac8, 0x26ccc93a, 0xd8dab0b0, 0x42dfc643, 0xd2d8d6df, 0x4132c042, 0x2935cf22, 0x2921bb02,
+0xe8e73e2d, 0xdfd829b8, 0xe4233637, 0x2cdccbd9, 0x212e003c, 0x1943c2ee, 0xddd5c0c4, 0x30ccd4d6,
+0xb42613c8, 0xd5c92440, 0xf24edec6, 0xd7d51d2a, 0x1dd0dd42, 0x2915e7b4, 0x4dddd445, 0xb1e636ce,
+0x17cf1c3d, 0xdb2dd7e0, 0xc438c118, 0xda4aeb25, 0xec24d04b, 0x27d4402e, 0x2eeee6da, 0x3aca41e4,
+0xd9d53824, 0xbd4735dc, 0xc9323fe1, 0xd2d0c02b, 0x2fe82c34, 0x47cf34e4, 0xed23523f, 0xc5223e12,
+0xea47b7e3, 0xcaca2b47, 0xd95c32ca, 0xdad423e5, 0x21c2b832, 0x3cdfcb31, 0x2ec5b3ef, 0x16d429ec,
+0xc5c7c93a, 0x3edacc1f, 0xd137dbaa, 0xbbd6d1df, 0xef3b3a19, 0xc0dd2bc2, 0x3c2430e1, 0x454ec7cc,
+0xc23ce234, 0xf3382a2c, 0x32e13f12, 0xcae6c4b6, 0x2900b70f, 0x2d1dca3e, 0xca20cde4, 0x2f3aead4,
+0xc53ecb3d, 0xe348c2ed, 0x3e43d9cd, 0xd4b21cca, 0x31d6d9da, 0x1cc2c936, 0x2537d5cb, 0xd2e5e7de,
+0x1b423012, 0xe537c5d5, 0x332bdb1e, 0xe41dd0ce, 0x3dcce6ed, 0xc3dcbed3, 0x3046e2d2, 0x2e193ad1,
+0x1e6549bc, 0x3820d03a, 0xf8d0affa, 0x371c211a, 0xdbe4d2d8, 0x24cc2134, 0xcd1ae0d8, 0x3913ce3a,
+0x281f3a4a, 0x22c53152, 0x3a11fd2d, 0xd82a33f3, 0xdbe91a46, 0xc71a1d20, 0xcbeabe1d, 0xc7c54632,
+0x344fcfbd, 0xc831211c, 0x19a227bc, 0x49c83ec8, 0xe02242bf, 0x40efbabc, 0xc94039dc, 0x22263acb,
+0x2b2634e7, 0xdf391d36, 0x49ce3038, 0x20152fe7, 0x003ff136, 0xd5231029, 0xc9232f1b, 0x22c7d42e,
+0xeb0ac538, 0x2fdcdd4c, 0xd7402336, 0xcae1d2d3, 0x16d1ba27, 0x4f263c40, 0xda203a35, 0x2b162ad4,
+0xcdd9281c, 0x362a28bd, 0x39c5a4d7, 0x27e9cfcc, 0x30231e21, 0xbac94dd4, 0x39341723, 0xbae563e0,
+0xbd1134c3, 0xec0f33ab, 0xcb2936dd, 0xf92d2ee0, 0x34dcc04e, 0xc5ef1b12, 0x1d3aeebe, 0x1af4e6e9,
+0x23dcd858, 0xc01f40d1, 0xc9c9c4d9, 0xd63e143e, 0x04bad9e5, 0x4bdecd22, 0xc042cccc, 0x285118e4,
+0xd548d326, 0xf5c5c224, 0x46afe1bd, 0x41d02d31, 0x3961433a, 0x392345d4, 0x30cb3c2c, 0xd5d00dcd,
+0xf22a2100, 0x14d2333e, 0x22bcd334, 0x3a2dcfa5, 0xe80bc1c5, 0x264b1f00, 0x13d12bbf, 0xc8d9442c,
+0x353b382a, 0x234341ca, 0x2d352ebf, 0x41cfde43, 0xd63120cf, 0x3cc734e8, 0xd036e825, 0x3d3c1fce,
+0x041e373b, 0x091e2c30, 0xbc29e235, 0xc0e42cc7, 0xa7252b39, 0xc63b25cb, 0xc23b1a2a, 0x2936c337,
+0x3f2ac9cc, 0x0a1cd9ae, 0x1dd233e0, 0x2bc21dc0, 0xa6e2c62c, 0xdee544df, 0xca3329c0, 0xe0c43942,
+0x1ca739d2, 0x241633d6, 0xb826de18, 0x33cb1935, 0x1a37ca2d, 0xc90fd1e3, 0x20262fc7, 0xc34cd3c4,
+0xcb4fcbb4, 0xe5d32f2d, 0xe1c3331b, 0xd0c1c833, 0xd52e33ba, 0x33d8352a, 0xe3472a24, 0xd01a31e3,
+0x4026f4c7, 0x1dcc1dc4, 0x36ca47c2, 0x41bee407, 0x02e33a39, 0xefcd00b8, 0x08cdb333, 0xde2d2528,
+0xbf2038e1, 0x27d9c636, 0x2c9e2620, 0x311fefb4, 0xddc0e2da, 0xf0ec291a, 0x47ca3ae8, 0xe9e8b8bd,
+0xc7341ec8, 0xcbdb2f4f, 0x2efe005b, 0x3338db40, 0x313ec7e8, 0x1cceeb2d, 0x372b3cd9, 0x39d5d1d4,
+0xc9b22450, 0x265e2325, 0xb6bedbee, 0x2c2e07cd, 0x1dcb29ce, 0x2539b7c9, 0xcdb263d4, 0x4fced731,
+0xdee0c2d7, 0xfe2e49af, 0xc82eefb4, 0x4be5d6b9, 0xf0eb13f8, 0xe6ceaedd, 0xafe21fcd, 0xe52ac125,
+0x2ee00523, 0x30db3fda, 0xd0e6fd14, 0xc51e4f33, 0xe0fd0fd5, 0x3c194ae6, 0x241ea923, 0x343e1f21,
+0x22d5dcc8, 0xd2411033, 0xbbe939e4, 0xb5dc40cb, 0xc3ddf617, 0xe800ca33, 0xd03cce1c, 0x2fcb2def,
+0xd1cdd3f2, 0x113ec74c, 0x3d10373f, 0xec2538d9, 0x28c3d733, 0xe74916f3, 0x37cef6f5, 0x3532bc0d,
+0xdec3cc2f, 0xdcdcf4dd, 0xdbe1c3d4, 0xc32e212b, 0xc12155cb, 0xed5ad9b2, 0xb43847ab, 0xc2dc4acc,
+0xd2223b28, 0xcd25dd31, 0x3fd7b6d9, 0xdee1f8e5, 0x3cb337eb, 0xdf19d333, 0x3344ebd3, 0x32eb22f0,
+0xdfb3262e, 0xaedc41bb, 0x25d7dfd6, 0xaa13401f, 0x2eceedc6, 0xc02e36c9, 0x28da38df, 0xc41c34d1,
+0xc8442bdb, 0x48c9332a, 0x3acae6ec, 0x271bbe3f, 0xf121e2c7, 0x3edc1edd, 0x2bbe35b0, 0xe03c42cd,
+0xcbe84331, 0x1428cf17, 0x1cdce821, 0xe4351ad8, 0x38284ed8, 0x263e19bb, 0x182bbc10, 0xf438d2da,
+0xe4f3b8ed, 0xd63bfb1d, 0xc1cae51e, 0x36194bcb, 0x19cd21fc, 0xea322e41, 0xd5146635, 0xc8f9e1e7,
+0x48423123, 0x42c4331c, 0xe1d04141, 0xdac0e12d, 0xdce73f25, 0xbec6d0cf, 0xe52a41d2, 0x452ae9d2,
+0xc9e7bfd5, 0x3f033022, 0x21d21b44, 0xe335332e, 0x40ebbd29, 0x2bdf2cdd, 0xf336e53f, 0xe54b2b13,
+0x4d12243c, 0x31b9c5db, 0x111ccc18, 0xd5d31315, 0xd2f9dfb7, 0x3f4b1ecc, 0xe5e3db46, 0x27cd2c59,
+0xbfd10ac0, 0x25c33252, 0xe1293553, 0xdb1635c2, 0xd62db8bd, 0xd8daca35, 0x49d8daec, 0xc951ded1,
+0x2e2ce7e3, 0x1321d4d8, 0x33ee3a37, 0xe1ef3d2a, 0x12932fd0, 0xcad0de3c, 0x20c3e300, 0x36ed3adb,
+0xddcdbb39, 0xe7184dde, 0x564cb8b1, 0x41ea2ae8, 0x3ad6c619, 0xc722d34a, 0x4bc52c36, 0x27df1bda,
+0xc9e2bb64, 0xd5394036, 0x1b3b30d7, 0x12d71cca, 0x233d432d, 0x2ec6d2c1, 0xeb26242f, 0xd2ffe5c7,
+0xc6d9dbcf, 0xea3329d2, 0xd129ebbc, 0x1e39193d, 0xc6ecdcd6, 0xe64ac331, 0xdfd6c413, 0xc8c8eb1b,
+0x26bfc3ea, 0x2bea33d7, 0xecd10bd8, 0xba3c27d4, 0xacdadcd2, 0x2bcd2ddc, 0xd141dbe1, 0x2ecec0dc,
+0x272fd8f9, 0x0bc3e8e1, 0x47e5e91a, 0x24152c15, 0x2927d5d8, 0x28b8dc2e, 0x28e4c5de, 0x26202ed3,
+0xc734eb0f, 0x2e53cdd7, 0xce2b1f48, 0xc11ae321, 0xbb343531, 0x3f2128d1, 0x2c4a001e, 0x23d13c12,
+0xf4d3432e, 0xd62a3d30, 0xfdac20d6, 0xc32d1fd9, 0x3bcfc9e2, 0xc2d50dab, 0x310c46b9, 0xd12eb92a,
+0x3739c436, 0xdbd3e6cb, 0x39d52cd3, 0xccbb3e28, 0x47ec4326, 0x5fe1d645, 0xdb15d716, 0x223b3dc9,
+0x25de3d2d, 0xdfe4e244, 0x3b2daf28, 0xd62acb34, 0x1c42f1d5, 0xbece4217, 0xc3d03928, 0x4dbdd6d2,
+0x2eeb1617, 0x32bbd2e9, 0xc2bcdadc, 0xebc424d1, 0xcba8c820, 0x2ae6533b, 0xee3f1ee8, 0x30d4dd2a,
+0xdb3120c9, 0xced82d2e, 0x35e32f1f, 0x1031d711, 0xcec5d3ca, 0x3400dedc, 0xc32c342a, 0x3ae2d43f,
+0xb2c9b4f7, 0x4ec7ffda, 0x281e43ea, 0xf12641c7, 0x33474ebc, 0xc414372d, 0xc9003ba5, 0xe949ca30,
+0xc82fe4cb, 0xd222cd1d, 0xdddce1de, 0x3ccd2530, 0x44273c36, 0xdbedc2c4, 0x352e3ece, 0xb5d641be,
+0xc9cbe347, 0xdf282fe4, 0x1b232338, 0x26c4ecc6, 0x2fcccb1c, 0xcc391cd5, 0xcc46ffe9, 0x3d28b724,
+0xc949cb0c, 0xc03deb26, 0xc9c01f28, 0x24ca3cd3, 0x2f1acf47, 0x4fd72ad5, 0xd339cf1f, 0xd7d4be34,
+0x3d1f0abc, 0xe5373935, 0x3a2b3219, 0x3cc9dab7, 0x1eafc313, 0xe53cd2ee, 0x18d2e8cd, 0xe5d3c519,
+0xe9dfcc3e, 0x2836c6c6, 0xd8ebe638, 0x3ed9dadc, 0x2a45d3c0, 0xc3263bcb, 0xc428dec1, 0xd6dbdf28,
+0xd517272a, 0xbb26bd0d, 0x3814da33, 0xd8d0ca31, 0xc00fc5dd, 0x28d49e21, 0x00401518, 0xafcece36,
+0x383ce72d, 0xdb131a2d, 0x3327da10, 0xdac2a82c, 0xd8302d18, 0x39c4212c, 0x1a352fc9, 0xdfbf2332,
+0x21331428, 0x170145be, 0x29ee1dc9, 0x3233a2c2, 0xc9d7b43f, 0xdd4129c1, 0x27c91bd5, 0x1925173c,
+0xb0e3023a, 0x48e63bca, 0x37c000e6, 0x132c23c6, 0x2e24d22d, 0xd7c2ce3d, 0xce4213f8, 0xbed82ede,
+0x1cdcd6e4, 0xcccc1033, 0x27cf1120, 0x29dd37b8, 0xc7e53bc1, 0xbf2f3849, 0x443845e0, 0xdaac1c26,
+0xce093720, 0x422c4036, 0xccfb38e1, 0x1fd425bb, 0xc733ea10, 0xec1534d4, 0xded22ac4, 0xe42c1d25,
+0xca28d7b8, 0xc14bd845, 0x341bccb8, 0xbd1e2230, 0xf3d9d631, 0x1dd9d921, 0xca23d50a, 0x22343f00,
+0x35e0c7ad, 0x22d522dd, 0x342cdac0, 0x315c0a19, 0xde5634b8, 0xd5b8b5d0, 0xd24135b2, 0xbfbecc29,
+0x3dd12bd0, 0x2fc2ee29, 0x3ed4dfca, 0xcc0cc3f3, 0xdd3a23ca, 0x2fc316c4, 0x343036f1, 0x14db430b,
+0x35d6c2cc, 0x37bfdae3, 0x2d19c4f5, 0xbdd03129, 0xd42fc7b8, 0xe9d6deb7, 0xf12fd3ed, 0xcada19cf,
+0x1bace9d9, 0xcdbecacb, 0xd2d5273a, 0x40c63522, 0x3628d34a, 0x36e803c2, 0x332c42c7, 0x2eb1352c,
+0xbed4c3eb, 0xc21d42d2, 0xd430c85a, 0x2bd538d1, 0x21de45d1, 0x1bdbc34c, 0xd9ce3dc1, 0x1b46bdb5,
+0x3ad92c22, 0xbd2b202a, 0xc342eaec, 0xdabd561e, 0xd52ec801, 0xb3211923, 0xd825360e, 0x37130018,
+0xe7f04ed0, 0xcdd8ea30, 0xe230c7af, 0x38134f36, 0x2dd93139, 0x36c549d4, 0x1ed2e5d9, 0x3c2d39f4,
+0x23cad716, 0x3f03371c, 0xf61ed0c9, 0xdd25c83a, 0x2320d52a, 0x4a22313c, 0xedc43d2b, 0xce492bbd,
+0xd0ce2b4c, 0x3b1933e1, 0xdfd02940, 0x3dcbda3b, 0xcfcdbf2d, 0xe0b1b5bb, 0x1a2aee5d, 0x441c1e44,
+0x313a2c3e, 0xdfdcdc3f, 0xd72349e9, 0x261e3619, 0xda05ca32, 0xe6e12ddd, 0x47371f2a, 0xc3e2bcd3,
+0x4934c1db, 0x0f331e30, 0xbcf02906, 0x553ec733, 0xdc29203f, 0xca37cc47, 0xd3d93c3b, 0xdfbae42e,
+0x3dd31c1d, 0xe6da2a2b, 0xdcbcc234, 0x37f3c6dd, 0xce152725, 0x1b2b2ce4, 0xe4e64c39, 0x390046ce,
+0xba3730d4, 0x2e3224c7, 0x36cf3aaf, 0x31cc184d, 0x3e5cec43, 0x28391a31, 0xcfe4ce20, 0x2cc22918,
+0xf0e611c7, 0x48fa302f, 0x1edd2ad1, 0xe1b6caf2, 0x3b1fd815, 0x2a26d9ce, 0xc1ce2ec8, 0x3e3d1dcf,
+0xc246dec8, 0xd3f839c3, 0xdbedbf19, 0xd8eac1bf, 0xd5d71add, 0x283eb4dc, 0xe331cccd, 0xcdb8c1eb,
+0x372526cb, 0x2e281436, 0x2f2e39ca, 0x49bac623, 0x28dee328, 0x3431c4cd, 0x2fdf4d45, 0x353ce7c0,
+0xc82edb47, 0xb8193e35, 0x2ada22d9, 0xdbcd3fd6, 0x1e19e43f, 0x13c3c5f3, 0xd9d53b47, 0xe62531d5,
+0xb91b21d9, 0xdb4ba1c9, 0xd036e20d, 0x23171eec, 0x2e3e53d3, 0xe4e9cc1a, 0xf0d3412e, 0x31c1292b,
+0x24bbe2d9, 0xc527d531, 0xd4c04149, 0x09e038dd, 0xd3cfe3bf, 0xde3d442d, 0x2af1c438, 0x213328c6,
+0xd616342a, 0xdbd2e5d5, 0x21cb393c, 0x2d331e47, 0xbcd5e436, 0x20d2dbb5, 0x2b2f2fde, 0x412fd5c7,
+0x2f2422c2, 0x3de9dcc2, 0x5cbf2816, 0xbdda1f25, 0x2c483930, 0xecd0c7da, 0xeec5e2d3, 0x23d4d325,
+0x6e282d24, 0x38173029, 0x2b222f1f, 0xdbe2edcd, 0xd71018c7, 0xdbe3c9b7, 0xce42d837, 0x18d33d37,
+0x2eb6f515, 0xceccf822, 0x4cd63db8, 0xf5e3c7d6, 0x361819e1, 0xd6bfbd0f, 0xe1c2e1cb, 0x3d3b33e6,
+0xcbd34c20, 0x0640369e, 0x39c82c17, 0x3eb542c5, 0xd52e3dc3, 0xdd26cfce, 0xae29d138, 0x38b4c0dc,
+0x1d350000, 0x162eea1f, 0x21432923, 0xd534dcb6, 0xe4eada29, 0xecced02b, 0x2a2c30da, 0x2dc735fd,
+0xcac1cecb, 0x23c93eca, 0xd73d2037, 0xe80c43bf, 0x522824ba, 0x17ce1e26, 0x5e33e53f, 0xd5e9d4ba,
+0xe5cb1ecb, 0xd737d255, 0xb7e3db38, 0x410a2eb4, 0x3be4253d, 0xdffd4216, 0xbf18f018, 0xced2d9d3,
+0x4a23d0d3, 0xe4ebcf39, 0x1bd0cc2a, 0x39c7da35, 0xe24128d4, 0xe2cd313a, 0xdc20ea53, 0x2df0cd26,
+0xc7db42f5, 0xccd4d9c6, 0xe5dcdb34, 0x3b2909ce, 0x4218e450, 0xbdd5cd2e, 0x421ae9c3, 0x40262fe6,
+0x3800d33b, 0xd5c5c52e, 0xd6dc3727, 0x4cdb2ccf, 0xcbaabada, 0xc2d125c2, 0x41e236d8, 0x36ba20e2,
+0x2bd2ce3b, 0xb9e401e3, 0x073ac323, 0xcdda311c, 0x35c1b7c6, 0x31e54930, 0x33315330, 0x47403db6,
+0x0dc9ddb9, 0xd7cc1fc2, 0x35ea4532, 0x252915e4, 0x4f13d9a4, 0x1d22f3dd, 0xe8c3c2b1, 0xe9b336fc,
+0x0b231ad2, 0xc532c7e3, 0xcc0fc31d, 0xc1d6ea13, 0xe4193daf, 0x46d3da14, 0xc310da46, 0x36140ecd,
+0xf9b521cd, 0x3dd2bd13, 0xd539f7c5, 0x093f3ce3, 0x0f352cdf, 0x29412fe2, 0xccd4d732, 0x1e35b5e8,
+0xd8d250df, 0xda32242d, 0xdecaf62b, 0xbd53b43e, 0x024d2b2b, 0xd4e3d434, 0xbcd33334, 0xcc19340e,
+0xdd212a38, 0xd62b432f, 0x3fcdc4d2, 0xda4d4ad1, 0xf3d6dc2b, 0xa4d72fdf, 0xd0c5392d, 0x2d29b8d3,
+0x0000273c, 0xd73f08cd, 0x202ad7e8, 0x3fcbe634, 0x25c6cec6, 0x3b5815cd, 0xc82ad7d2, 0x28e5e6c3,
+0x260e451f, 0x49d830eb, 0xd2cf4cc7, 0xd122d1b4, 0x0bc82b33, 0xcc2fe53e, 0x41d5d9ec, 0xd0d0cd31,
+0x4c39d7c7, 0x163c23cf, 0xd53639de, 0xc352cfd3, 0xe0e323c2, 0xd1423716, 0x302b1c3b, 0x29d02fec,
+0xeaccddd5, 0xc13137d4, 0xd4bd394a, 0xc11ae6c5, 0x4dd5bea1, 0xd5df323b, 0x3b26a74b, 0xabd7402a,
+0x2cb4301e, 0x2027f735, 0x2713f5df, 0xe3d3b327, 0xddee3124, 0xce23bf32, 0xb3c9260e, 0x3e46da32,
+0xcc3cd5e0, 0x392dd02a, 0xd5d52822, 0x3235b2c6, 0x36e0f522, 0x202bcbcb, 0xc6dd54be, 0x2b3b39d8,
+0x311fd9e5, 0x32c7dcd1, 0xd81bbdd3, 0x26434fce, 0xc6ba392c, 0x212ee515, 0xc5d8efdf, 0xdfe62930,
+0x1c1a2f4f, 0xc91a2e32, 0x30d01357, 0xf02e1c20, 0x5bb93a20, 0xf0e9bd31, 0x243ee036, 0xe139c7b9,
+0x21463b1f, 0x412bec29, 0x3015c6e0, 0x3925d411, 0xbb13d939, 0x2b50c1c9, 0xc92ae71e, 0xc0d61a49,
+0x20d2e542, 0x0f3216d4, 0xc8d4da44, 0x4cee380e, 0xb5b8ce1a, 0x4731353c, 0x413fe1e0, 0x0ac939d9,
+0xe109c4d0, 0x3534c019, 0xcd213bc9, 0x1729f730, 0x252b4955, 0x02d01f33, 0x2536d123, 0xb3b3e947,
+0x4ba9c924, 0xba1d2440, 0x2d29b910, 0x21294ab9, 0xf124cd2d, 0x2ed723c6, 0xc01ebe31, 0x1da6cbad,
+0xce2ad830, 0xc32b0000, 0x15ebe1da, 0xdf2c3852, 0x3218262d, 0xd0a3e05d, 0xd6b8c3b8, 0xd421c622,
+0x0fe039cb, 0x2314d7c2, 0xcbe02dec, 0xd9d11424, 0xd03dc750, 0xd12a3835, 0x09ed00ba, 0x20281dc2,
+0xdddcbc3c, 0xe3c05037, 0x043ac03c, 0x480de436, 0x229eebba, 0x42193947, 0xd02ed3db, 0x123ccbfe,
+0xc8372d41, 0x222b49ca, 0x1128d9e7, 0xb2d04637, 0xbb1ce931, 0xd4d04226, 0x2f3cb534, 0x642fdef4,
+0x1923f02b, 0x50b22619, 0xd3b84031, 0xcb412737, 0x1ec9e227, 0x26dd1430, 0x3831211c, 0x32d043c7,
+0x2ee6bca5, 0xd33629c9, 0xf5282b1e, 0xc73c2d18, 0xcad52336, 0x31dee3c0, 0x2025d231, 0x4321cf47,
+0x24c7c0cc, 0x410dbfce, 0x4502cfcf, 0x2d41182a, 0xf01e1bb8, 0x37c94512, 0xd32a4fbb, 0x23b0cae9,
+0x29f52adf, 0xd02729c0, 0xb71ef6bc, 0x2a1f1633, 0xc64aba1e, 0x322fb9f4, 0x09242ff5, 0x20dcd9cb,
+0x35c0e12d, 0xc2d2ca21, 0x20a2bfd3, 0xb5d82cd9, 0x37e7d642, 0x2ae639c2, 0xe1364a3e, 0x2615d12c,
+0xd62c2127, 0x2304b12d, 0xd21cedec, 0xdf34d829, 0x2d1acde7, 0xe01e2534, 0xd333c8d2, 0xe2e0d410,
+0xd0df4930, 0xd231293b, 0xd4d33617, 0x1d4344bb, 0xddd1de20, 0xcaf4272e, 0xb72f46dd, 0x172e2920,
+0x2a27c742, 0xd4e01a30, 0xca35b7e8, 0xdc1d0c3b, 0xd02fc71c, 0x3ee13ee3, 0xd53db622, 0x4bd33127,
+0x4ad7c6f2, 0x0000d9ef, 0x14161a3f, 0x28e8dfc4, 0x2c1e38d1, 0x23b91206, 0x22d8dcd2, 0xcecc3a15,
+0x1bb4f5b1, 0x3cd0e3cf, 0xfdc3dbe4, 0x54300b36, 0x09c8e2df, 0xc7ec1bfd, 0x1d0fae40, 0xcf343bd5,
+0xb929d337, 0xd4c224f9, 0xac2a3437, 0xde261ebe, 0x2e20c032, 0xd3c1c0c5, 0x18e0cad5, 0xe417ebc0,
+0xef2a4ddb, 0xbde4e334, 0x2d32cdc6, 0xbd1ee8c1, 0xd834c3d5, 0x46e327f0, 0x353cc5b3, 0x3c20c1af,
+0x00000000, 0x00000000, 0x42dd3028, 0xd8c424d5, 0xe9d54729, 0xb325de29, 0x00000000, 0x00000000,
+0x44d5bdbe, 0x45c0bff4, 0x2219c22a, 0xcf30dce3, 0x00000000, 0x00000000, 0x2ed822fa, 0x3220d4cb,
+0xd437be3f, 0xcfd452e2, 0x00000000, 0x00000000, 0xc72e411a, 0xe923cbcd, 0x15e1dd36, 0x28cbe3d2,
+0x00000000, 0x00000000, 0x2225b73b, 0xd92bcb1f, 0x23bbd2dc, 0x3f34b0e5, 0x00000000, 0x00000000,
+0xdb44d7d4, 0x1ceb4040, 0x0cd3cfa8, 0x36d41d28, 0x00000000, 0x00000000, 0xc8091dcf, 0x2544de1d,
+0xc81c2e43, 0xe317252b, 0x00000000, 0x00000000, 0x22c6cfe0, 0x2a461c3b, 0x51dda630, 0x233f20ee,
+0x00000000, 0x00000000, 0xb9bd2c27, 0x23d5202c, 0xe23ac304, 0x4a3ddd1d, 0x00000000, 0x00000000,
+0x301b35e2, 0x0efb413f, 0x3c2d1cc2, 0xaedb2a24, 0x00000000, 0x00000000, 0xe7dbda13, 0x3cbbcbf6,
+0xafc1c830, 0xe7433323, 0x00000000, 0x00000000, 0xc7e80000, 0x292b33d8, 0xc4322cd3, 0x31163946,
+0x0000e2cb, 0x00000000, 0x253c0000, 0xfd30e7e6, 0x04c04dd7, 0x3fc918e0, 0x0000d2da, 0x00000000,
+0xcda70000, 0xe3d730c1, 0xc533d624, 0x1834d633, 0x0000eae3, 0x00000000, 0xb4bb0000, 0xe5d0dc2b,
+0x1c272b33, 0xef243c2d, 0x00002948, 0x00000000, 0x20210000, 0xcbfb1e42, 0x3749cf29, 0x442f1b10,
+0x0000b944, 0x00000000, 0x43dc0000, 0x42d9282f, 0x10cebc35, 0x3ed42cd5, 0x00002336, 0x00000000,
+0xe3e20000, 0xc230d923, 0x33ccc61a, 0x27e22ad2, 0x00003ed4, 0x00000000, 0x2bc10000, 0x051d0432,
+0xd310d9dc, 0xba331c3f, 0x00003030, 0x00000000, 0x20430000, 0x45b8cdce, 0xe515231c, 0xe9cc1931,
+0x00002b23, 0x00000000, 0x42140000, 0xd2dd2fcb, 0xee2eb7f9, 0x3e493028, 0x00002a2c, 0x00000000,
+0x20340000, 0x3d02491c, 0xe231a8ec, 0x0a270727, 0x000029c2, 0x00000000, 0xdbb90000, 0xc7dccd2c,
+0x0f203d37, 0xcbda00c2, 0x00002319, 0x00000000, 0xe51b0000, 0xd943d3c9, 0xbe1fd6d5, 0x423b53c7,
+0x0000d9e9, 0x00000000, 0xcebf0000, 0x19393427, 0xc3223fb8, 0xf431c6c5, 0x0000f5d5, 0x00000000,
+0xeb310000, 0x21f4e3c8, 0xb7d826ca, 0xae06b824, 0x00002345, 0x00000000, 0x562c0000, 0x21c33209,
+0xbf40c6dc, 0xe73dddd3, 0x000045f5, 0x00000000, 0x00000000, 0x27e31bee, 0xd02d24b8, 0x26e4cdc8,
+0xd331c72f, 0x00000000, 0x00000000, 0xd4261e28, 0xd337d4da, 0x3fdb2432, 0x1e474dc4, 0x00000000
+
+input1 =
+0x00000000, 0x48ddd534, 0x31cecfbf, 0x32e44edc, 0xb121dfdf, 0x00000000, 0x00000000, 0xf2232324,
+0xdb26cdde, 0x2cec2011, 0x2b2421d4, 0x00000000, 0x00000000, 0x19c71129, 0x55d50bd3, 0x2fd2ce41,
+0x3abeefd0, 0x00000000, 0x00000000, 0x1bef29c6, 0xd2d5d9ec, 0xe4b51b34, 0x2529d5e3, 0x00000000,
+0x00000000, 0x0cd1c825, 0x13d5ddd3, 0xbe252dbd, 0xb7434ed2, 0x00000000, 0x00000000, 0x46c82c33,
+0x1a171fcf, 0xc3c32fd4, 0xe64d2dd4, 0x00000000, 0x00000000, 0x37af330f, 0xd0e8f326, 0x59201fdf,
+0x19e9c153, 0x00000000, 0x00000000, 0x1bf81fb7, 0xbd19bbd9, 0x3043cd22, 0x39cdb9cc, 0x00000000,
+0x00000000, 0x1dc5de57, 0xd5c8f118, 0xcca7dc2f, 0x45da1c24, 0x00000000, 0x00000000, 0xe42f4036,
+0xf22de61c, 0xdfd4353c, 0xdb1c2fbf, 0x00000000, 0x00000000, 0x2722b4f6, 0x123f3cc7, 0x43cc37da,
+0x23d949be, 0x00000000, 0x00000000, 0x3233cf48, 0x34d4c8d4, 0x1b2c352c, 0xdfb7fa3c, 0x00000000,
+0x00000000, 0x343d28cc, 0xc1ca2dab, 0xd8330d32, 0xcab1b4e2, 0x00000000, 0x00000000, 0x1acf3435,
+0xfceddc39, 0xd7d5112b, 0x13ceec3f, 0x00000000, 0x00000000, 0xc32b0000, 0x45e24430, 0xc916ca3e,
+0x32132dd3, 0x0000d9dd, 0x00000000, 0xe1e60000, 0xce060018, 0x38401be2, 0x0ec83821, 0x0000ee52,
+0x00000000, 0xe4c90000, 0x1a313f14, 0x26dfc4e7, 0x23eb4df9, 0x0000e1bc, 0x00000000, 0xd4190000,
+0x37e5d4ae, 0x33cdcd50, 0x39d64a48, 0x0000e51a, 0x00000000, 0xc82d0000, 0xc6cc40bc, 0x501bbb22,
+0x2b293dd4, 0x00002f38, 0x00000000, 0xbbc10000, 0x2b3fc838, 0xce29dd5a, 0xd7de23e4, 0x0000d42b,
+0x00000000, 0x14d50000, 0xfac320fd, 0x35eccdc1, 0x1c3239b8, 0x0000bfb9, 0x00000000, 0x39e80000,
+0x0c21cdef, 0xbddad53b, 0x4b6337cf, 0x0000d03e, 0x00000000, 0x1e2c0000, 0xbfe6d50e, 0x1d1ebffb,
+0x50d734d1, 0x00004fe1, 0x00000000, 0x10280000, 0xb8d62f29, 0xb3b4d82f, 0x22cfc836, 0x0000df2d,
+0x00000000, 0x2f300000, 0xc7ced138, 0xbb3c46d6, 0xc71fe43b, 0x0000dddc, 0x00000000, 0xbcc60000,
+0x191937ca, 0x432fcae9, 0xdef5d12d, 0x00004e2e, 0x00000000, 0x2d580000, 0x4bcc26fe, 0xb6cd39ec,
+0x27c0c8df, 0x00003e2f, 0x00000000, 0x44b60000, 0x26bfb03c, 0xf1b7d523, 0xcec82ff6, 0x0000240e,
+0x00000000, 0xb1d20000, 0x21383bc5, 0x29282c14, 0xc9bcc2d8, 0x000012ed, 0x00000000, 0xdcbf0000,
+0xc125d023, 0x4b40d936, 0xd6e9d1f9, 0x00002ffe, 0x00000000, 0xc6290000, 0x1be1deda, 0x25cdd3e7,
+0x432acc2e, 0x0000ccd9, 0x00000000, 0x35d30000, 0xd7d623dc, 0xd328cec8, 0xe92144d4, 0x000033db,
+0x00000000, 0xd8440000, 0xd5c3c213, 0xd8f1d240, 0x37ce13ca, 0x0000aa3d, 0x00000000, 0x3ecf0000,
+0x311e42dc, 0xe7e33237, 0x2dcd3aa5, 0x0000342b, 0x00000000, 0x24c40000, 0xd2374134, 0xe2bd141c,
+0x2e4d2ab1, 0x0000c54d, 0x00000000, 0xf22e0000, 0x291c3f12, 0xe738d61f, 0xcf38d12c, 0x0000252c,
+0x00000000, 0x1d490000, 0xd12fccc7, 0xbed13c4a, 0x3d2f3624, 0x0000072a, 0x00000000, 0x12c60000,
+0x3fd6a7b8, 0xb5ea2830, 0x54d813b8, 0x000029dd, 0x00000000, 0x48d10000, 0xefd138e6, 0xe5e1dbe5,
+0xd72a2dda, 0x00004b34, 0x00000000, 0xca370000, 0xb6d540e2, 0x0fd1cec1, 0x31ac46b1, 0x00003adf,
+0x00000000, 0xb6d80000, 0x202716cb, 0x162c23c3, 0x44ecfec8, 0x0000c4eb, 0x00000000, 0x16ab0000,
+0x2fd72645, 0x41c038cc, 0xd9d334c9, 0x00002832, 0x00000000, 0x12cc0000, 0x34ce26f8, 0xd22bc6d0,
+0xb5594315, 0x0000c636, 0x00000000, 0x102e0000, 0xcbd3291c, 0xdfdce5dd, 0x22e422ac, 0x0000c411,
+0x00000000, 0xddc80000, 0xd3d4bff9, 0x331f3ee1, 0x1dd9132e, 0x0000e30f, 0x00000000, 0x20e90000,
+0xd53ad8bc, 0x293941d0, 0x19e1db28, 0x0000e33c, 0x00000000, 0x00000000, 0xcc16bb42, 0xc2dbfadc,
+0xd7c7262c, 0xd932d13c, 0x00000000, 0x00000000, 0xd3c91ebe, 0xbed241db, 0x483820eb, 0xbd1b30da,
+0x00000000, 0x00000000, 0xd31fc61b, 0x352938ef, 0xcc1bcc16, 0x1dc12300, 0x00000000, 0x00000000,
+0xc626c507, 0x45e6d739, 0x261abb29, 0x2833cb2e, 0x00000000, 0x00000000, 0x2db1cdce, 0xdd4a3cf3,
+0xd229d6b8, 0x381ad738, 0x00000000, 0x00000000, 0x14183f43, 0xc6ed2eda, 0xcdafcada, 0x38e5e2c2,
+0x00000000, 0x00000000, 0xbb52c63f, 0xd7fe3add, 0x3935cee8, 0x34c6c82f, 0x00000000, 0x00000000,
+0x363113d9, 0xcde61f44, 0x2f29d3ee, 0xddf6d1c1, 0x00000000, 0x00000000, 0xeb253223, 0xc8de3553,
+0xbbdbdd47, 0x44d23e38, 0x00000000, 0x00000000, 0x0ad82cca, 0x34c3c94a, 0x2e35fbe0, 0x2145d82c,
+0x00000000, 0x00000000, 0xd72bea45, 0xcb1720df, 0xc5c537fa, 0x1c0cd6d8, 0x00000000, 0x00000000,
+0xe7d9d145, 0xd14fd1c9, 0x3a153154, 0x3bccc8c6, 0x00000000, 0x00000000, 0xbc28262c, 0x32dbc8ca,
+0x2924eac8, 0xff21cfdf, 0x00000000, 0x00000000, 0xe8ddc921, 0xc1cc2507, 0xccdbc728, 0x2b10332e,
+0x00000000, 0x00000000, 0xd81eee18, 0x3223452b, 0x292dd7b9, 0xb8c3dbab, 0x00000000, 0x00000000,
+0x4615243f, 0xd23425dc, 0xe6c73815, 0xe9e43dd3, 0x00000000, 0x00000000, 0xd8250000, 0xd14b591a,
+0xe52bd2c7, 0xe548e0c4, 0x0000c9d5, 0x00000000, 0xfbd20000, 0x1ee1e71a, 0xc2c23913, 0x44cee6d3,
+0x0000d906, 0x00000000, 0x24cc0000, 0x5ef4c337, 0x12beb725, 0x493fd6de, 0x00001e2b, 0x00000000,
+0x2ec50000, 0xd1e1c6ca, 0xcbc93015, 0xd5442622, 0x0000d202, 0x00000000, 0xd3230000, 0x44b61729,
+0x12c524d2, 0x1f343811, 0x0000c4c4, 0x00000000, 0xc9e00000, 0xe3be23b0, 0x42133425, 0x28d8b3d7,
+0x0000bc49, 0x00000000, 0xcde70000, 0x3be1d9fd, 0x37a805f8, 0x2ff92839, 0x0000bb33, 0x00000000,
+0x52420000, 0x311fefd8, 0xc8ab1ec3, 0x23ddc7ca, 0x00004011, 0x00000000, 0xb4500000, 0x21324929,
+0xe03d38c8, 0x152b2acb, 0x00001edb, 0x00000000, 0x05340000, 0x2d3e3e49, 0xcfd0c9cf, 0x1528d6f2,
+0x000024a6, 0x00000000, 0xc5b70000, 0xd9d2becf, 0x282f1ed9, 0x36b72133, 0x00004b05, 0x00000000,
+0xca400000, 0xd7cae8d2, 0x30ef28da, 0x26c1d730, 0x000051d5, 0x00000000, 0x22170000, 0x421edd28,
+0xddc5421e, 0x1ed93420, 0x00002825, 0x00000000, 0x33280000, 0x45ce3eec, 0xddf6313b, 0x2ad6cec1,
+0x00001f1c, 0x00000000, 0xd9e60000, 0xd7dbe937, 0x283029eb, 0x0bdfbe3c, 0x0000c92d, 0x00000000,
+0x5de40000, 0x154ad3d6, 0xcc3c2f1e, 0xf039caf8, 0x000032d3, 0x00000000, 0x00000000, 0x49c4dfec,
+0x33c05518, 0x37d8261b, 0xdbf8c6cc, 0x00000000, 0x00000000, 0xd7efe223, 0x1b38d73a, 0x24cdd342,
+0xe4280843, 0x00000000, 0x00000000, 0x22c41232, 0xc0374543, 0x402ec542, 0xb53312e6, 0x00000000,
+0x00000000, 0xd8e0f726, 0xa62e3fd9, 0x1d12c749, 0xef413c47, 0x00000000, 0x00000000, 0xc7353e27,
+0x2844c82b, 0x0330c2cc, 0x27e035fa, 0x00000000, 0x00000000, 0x40d732bc, 0xd62cd8cc, 0x2e35ee39,
+0xf11dd413, 0x00000000, 0x00000000, 0xd3ddcec2, 0xeabf1ce9, 0x27beb0dd, 0xd2ccdc0a, 0x00000000,
+0x00000000, 0xe92c43c3, 0xddc143e2, 0x36bfef1b, 0xe4b8b936, 0x00000000, 0x00000000, 0xb1e3ecd6,
+0xc1183ae6, 0xab443ee5, 0x20d126c9, 0x00000000, 0x00000000, 0xa1e9cee0, 0x33363f4f, 0x45d51612,
+0x4cf81238, 0x00000000, 0x00000000, 0x1b1abfd6, 0xd1cb4336, 0xc747b939, 0xe0e4ce24, 0x00000000,
+0x00000000, 0xcec6b8de, 0x32d89d25, 0xeb2ebfcd, 0x39e7e23e, 0x00000000, 0x00000000, 0xe224c8d7,
+0xc035ebbf, 0xd4d5d52c, 0xbb15bab0, 0x00000000, 0x00000000, 0xcb2a23c0, 0x3831eadb, 0x4c3dd83d,
+0x2ddb13d7, 0x00000000, 0x00000000, 0x41cb4c30, 0xbed5be10, 0xddda3f25, 0x240e4233, 0x00000000,
+0x00000000, 0xf136323b, 0x17cce231, 0x4bd3aac5, 0xc7d9e340, 0x00000000, 0x00000000, 0x3f230000,
+0x36d327d8, 0xc1d3d9dc, 0xd5dcdc1e, 0x000038ec, 0x00000000, 0xac1e0000, 0xc44224e2, 0xdbb32b28,
+0xcc621fe4, 0x00004ce6, 0x00000000, 0x2f2e0000, 0x2cd748d6, 0xd0c5e1c2, 0xd7dfdccb, 0x00002acb,
+0x00000000, 0xc0d90000, 0x152d1dbb, 0x2822c117, 0xf335192b, 0x00003fae, 0x00000000, 0xc2e60000,
+0xd3cf3a2e, 0x38e7dfe1, 0xc6c54e21, 0x0000edd6, 0x00000000, 0x38cc0000, 0xc53a0ec4, 0xe04628cf,
+0x353f3716, 0x00003bec, 0x00000000, 0x3b310000, 0x3df3d535, 0xcac7cfd8, 0x431f42c1, 0x0000d434,
+0x00000000, 0x223e0000, 0x45302bd5, 0x41c32b1b, 0x3a22bc1f, 0x0000b938, 0x00000000, 0x281a0000,
+0x3fccdb1f, 0xf4c3d6d7, 0x3f1f34e3, 0x00002bc8, 0x00000000, 0xe9e50000, 0x2dd63d2c, 0xd9e6ddea,
+0xd8ec412d, 0x00003921, 0x00000000, 0xc6d70000, 0xc8332913, 0xe4e1e742, 0xcec43fd8, 0x0000c9c3,
+0x00000000, 0xfcd80000, 0xbedc2cdb, 0x3bd2e3e5, 0xbacf190d, 0x0000cdc0, 0x00000000, 0xbeb50000,
+0x53e82f31, 0xdc2e20c3, 0x320e3ad4, 0x0000393b, 0x00000000, 0x31cc0000, 0x43251346, 0xd3a8ef2f,
+0xddb735d3, 0x0000ea1d, 0x00000000, 0xcbb80000, 0x2ca9c6b7, 0xd1203c22, 0x20e3b523, 0x0000d92d,
+0x00000000, 0x25d70000, 0x1d283e31, 0xecdcd0d5, 0x376321d7, 0x0000a8e1, 0x00000000, 0x00000000,
+0xdfdc094a, 0x45ee2238, 0x173edc18, 0x5327b7d1, 0x00000000, 0x00000000, 0x2be32c21, 0x2fbdfcc5,
+0x4729c6c6, 0xdf31c632, 0x00000000, 0x00000000, 0x463fcf17, 0x3d30eaf4, 0x503f2a3b, 0x20d3e211,
+0x00000000, 0x00000000, 0xddda3410, 0xdc40211c, 0xba4a33fc, 0x38dc2d2d, 0x00000000, 0x00000000,
+0xcbd04829, 0x44db2828, 0xd7401dbd, 0xfb2ee3b5, 0x00000000, 0x00000000, 0x203ae222, 0x2e5f33d4,
+0x35c29e1b, 0xebd8473a, 0x00000000, 0x00000000, 0x392d2c3b, 0xeee31727, 0xbce82a29, 0xc8d64ad1,
+0x00000000, 0x00000000, 0xc72638bb, 0x0f1d2e48, 0xd1d6d041, 0xe52b3429, 0x00000000, 0x00000000,
+0xdf2054d2, 0xce124a32, 0xc7ce2337, 0x2d1c3e5b, 0x00000000, 0x00000000, 0xa2373ec9, 0xe5d42730,
+0x1b37ae20, 0x34e63823, 0x00000000, 0x00000000, 0xb8152f30, 0x14cf3128, 0x1fcb3323, 0xaf10c72a,
+0x00000000, 0x00000000, 0x14c3cde0, 0x06c0c833, 0x39edda0e, 0xe1242f02, 0x00000000, 0x00000000,
+0xd92b2b3b, 0xccdd2d2d, 0xdf48bf0c, 0x6524211d, 0x00000000, 0x00000000, 0x42dac1b9, 0xebd43232,
+0xe8f3b63c, 0xf1c03acc, 0x00000000, 0x00000000, 0xcbbec923, 0xf835cc24, 0x27ced912, 0xb736df3b,
+0x00000000, 0x00000000, 0x3b26c92a, 0x203b26cb, 0xb041211b, 0x20cc2d3c, 0x00000000, 0x00000000,
+0x1a220000, 0x3d2a37e1, 0xd8ddd54b, 0x16dcc63f, 0x000022d0, 0x00000000, 0xd0e00000, 0x42e8c7d9,
+0x2c1cdae0, 0x363bb432, 0x0000bfd3, 0x00000000, 0xd5eb0000, 0xce42e5be, 0x0834241c, 0xe41d3047,
+0x000021b6, 0x00000000, 0xf5240000, 0xd6ceba2c, 0x451c1c1d, 0x58134d20, 0x00002c2f, 0x00000000,
+0xcd3f0000, 0x25e7201b, 0x1fcb46b5, 0xf2d1352d, 0x0000b01c, 0x00000000, 0xd7490000, 0xd4e7dfb8,
+0xb5d0dfe3, 0x2cd6c4cf, 0x0000dc2f, 0x00000000, 0xe64a0000, 0xdec73927, 0x2c36c4f5, 0x304722d4,
+0x0000cae8, 0x00000000, 0xc3d00000, 0x5215dd30, 0x30c9c0df, 0xb42cd90e, 0x0000f4f7, 0x00000000,
+0xc0cb0000, 0xb0334857, 0xee45d220, 0xbdc7e815, 0x0000e3e1, 0x00000000, 0x3f140000, 0xcee8db3b,
+0xea42d02c, 0x161f24c4, 0x0000cabd, 0x00000000, 0x1ab80000, 0xd52f3130, 0xd7ece6e9, 0xdac9fbd0,
+0x0000ecc5, 0x00000000, 0xc6ec0000, 0xe327cc44, 0x53b01d36, 0xdad6c725, 0x00001d26, 0x00000000,
+0x23c90000, 0xb4d0d227, 0x3c43ebd9, 0x3141d2da, 0x00004130, 0x00000000, 0x1a2d0000, 0xc82e120f,
+0x2ce6d836, 0x2fe3f239, 0x000047d2, 0x00000000, 0xadbe0000, 0x4ed1d9dc, 0x3ad3cf2a, 0xbbe6e340,
+0x000034d6, 0x00000000, 0xd5c20000, 0x35d51ee3, 0xe424e3c9, 0x20db2a18, 0x00002106, 0x00000000,
+0x00000000, 0x33d035bf, 0x2c2bc0d1, 0x26cd2dbe, 0xd5fa3cb2, 0x00000000, 0x00000000, 0x17413ef1,
+0x492e20da, 0xcae7092d, 0xd723cab9, 0x00000000, 0x00000000, 0x24dacb26, 0xec0dd6c3, 0x1aeee31e,
+0x5fc3da15, 0x00000000, 0x00000000, 0xd70b66b3, 0xdc26d42b, 0x3bc544e5, 0x0335e832, 0x00000000,
+0x00000000, 0x333a362a, 0x38dfbc05, 0xdad50ec0, 0x4dcb44af, 0x00000000, 0x00000000, 0xe3afb626,
+0x0ee4e8bd, 0x082d16e1, 0xdad9bb2d, 0x00000000, 0x00000000, 0x37cfbeca, 0xe9c8282d, 0xc8322bb4,
+0x46ec2618, 0x00000000, 0x00000000, 0x2b47bdca, 0xc724cae7, 0xcdd25cc4, 0x1f1ec6ce, 0x00000000,
+0x00000000, 0x2c3e38ac, 0xca3728c5, 0x3801ebc2, 0x19e62637, 0x00000000, 0x00000000, 0x34c5dc2b,
+0x191b2f16, 0xaf352fbc, 0xe3d5b7c5, 0x00000000, 0x00000000, 0x1c242dd5, 0xd6db38c6, 0x2bc32535,
+0x26e13a09, 0x00000000, 0x00000000, 0xf4b630b9, 0xe4d6dc3b, 0xec2024d3, 0xabd226d4, 0x00000000,
+0x00000000, 0xdca0cdd0, 0xd939df53, 0x1f2721b9, 0x3aba0714, 0x00000000, 0x00000000, 0x233d334e,
+0x4cacbb25, 0xd618330e, 0x2fca3a19, 0x00000000, 0x00000000, 0xccb1294a, 0x2224dc38, 0xc53ce349,
+0x17e2df49, 0x00000000, 0x00000000, 0x44f8d61c, 0xea28e21d, 0x39bea820, 0x32d5d143, 0x00000000,
+0x00000000, 0x1943081c, 0xded6d128, 0x4b06c5c2, 0x35e0263e, 0x00000000, 0x00000000, 0xdd30d723,
+0x50d024e3, 0x40cf5315, 0x39c8d92e, 0x00000000, 0x00000000, 0x23d3d9e3, 0xbacb3154, 0x2cd720db,
+0xd7da3d40, 0x00000000, 0x00000000, 0xb2be1611, 0x4006db40, 0x311f361b, 0xd42e2e36, 0x00000000,
+0x00000000, 0x17c4b2d2, 0x3bceed46, 0x18443a33, 0xe4ce27f6, 0x00000000, 0x00000000, 0xe6e206e1,
+0xde2826d2, 0x4ed8c805, 0x1de1cdc6, 0x00000000, 0x00000000, 0xde34e7d3, 0xc83dc5e5, 0xe1132742,
+0xd5bf41d9, 0x00000000, 0x00000000, 0x34441a3f, 0x40e249b9, 0xf3381e30, 0x26e5c517, 0x00000000,
+0x00000000, 0xd9dcc9ef, 0x402f37d4, 0xc3273ce4, 0xc9cfd8e6, 0x00000000, 0x00000000, 0x2fb806f1,
+0x2130decf, 0x0cc0312d, 0x29452842, 0x00000000, 0x00000000, 0x2ed7c130, 0xdf3bf23f, 0x38dab6b2,
+0xd3444746, 0x00000000, 0x00000000, 0x3c0bd01f, 0xc833e8cd, 0x4824403e, 0xaee34927, 0x00000000,
+0x00000000, 0xdcf1cfc2, 0xd534ce26, 0xc8c32a1f, 0xc242c923, 0x00000000, 0x00000000, 0x1ad2cc2d,
+0x0d2223d1, 0x32253641, 0x1c35c4cd, 0x00000000, 0x00000000, 0x1ddc1dbd, 0xde3cc0dc, 0x0b2c2325,
+0x3eeb3621, 0x00000000, 0x00000000, 0xd3d7db33, 0xcb16d0ed, 0xdf1af232, 0x3132042d, 0x00000000,
+0x00000000, 0xe6420000, 0x252ecc43, 0x443aa42b, 0xd5db293e, 0x0000e632, 0x00000000, 0x1ec00000,
+0x0d25cb24, 0xd4ebcfc6, 0x14030ab1, 0x0000d8ba, 0x00000000, 0x13340000, 0x1b31df31, 0xcb301e44,
+0x564920cc, 0x000049d9, 0x00000000, 0x34250000, 0xebf121f5, 0xd2cab33b, 0xc926cec9, 0x00002b21,
+0x00000000, 0xb62a0000, 0x11ededbd, 0x10e246c8, 0xbbd63e1d, 0x0000d840, 0x00000000, 0xca4f0000,
+0xcdbb4044, 0x3320e6dd, 0xcee3cbea, 0x0000f048, 0x00000000, 0xf3270000, 0xc545c8ca, 0xd91b4240,
+0xdf1dc4c8, 0x000044b6, 0x00000000, 0xe4380000, 0x34c7d2c3, 0xccd9e522, 0x37d4e4e7, 0x0000b4cf,
+0x00000000, 0x44da0000, 0x44e03cd8, 0xd5533017, 0xfbd838ed, 0x0000c037, 0x00000000, 0x3d2e0000,
+0x1ad632dc, 0xf6f84de8, 0x2ab01bcf, 0x0000c5ce, 0x00000000, 0x33e00000, 0xbf242f42, 0xfb2605c2,
+0x3cdd23c0, 0x0000ef39, 0x00000000, 0xd6dc0000, 0xde2a1323, 0xcd30bf30, 0xd43b1ae3, 0x0000c714,
+0x00000000, 0xd6d40000, 0x18c0ca3e, 0xc01c1bc0, 0xdeb1b836, 0x00002dd2, 0x00000000, 0xe9450000,
+0x35d31c42, 0xdd381b15, 0xbf3cdd15, 0x00002428, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x62ea8129, 0xc91aa231, 0xbb44af54, 0xefaed019, 0xf253b128, 0x31da7d4f, 0x222e8558, 0x3c649282,
+0xb08f0fd5, 0xd6fdf6e9, 0xd44465e1, 0x91f63859, 0x28e43bd0, 0x552b2bbc, 0x22cd876f, 0x663ac13f,
+0xe8218f45, 0x278584b0, 0xad13a4f4, 0x2b82f157, 0xd0a6245e, 0x2a4586cd, 0xd08f9e08, 0x4527b024,
+0x1e4358b3, 0x8c24f783, 0x77f1991c, 0x5c7afd54, 0x5b15252b, 0x664d25ba, 0x3c897601, 0x88364e8c,
+0xe86430ca, 0x6ad0d1a5, 0xc3cc3e08, 0x9bffbd0f, 0x703ae95e, 0xa0a91cfd, 0xe0c26f76, 0xee9de372,
+0xd70ebb79, 0x4012352d, 0xf9edae2d, 0xb851949a, 0x89e5b526, 0x52753020, 0x07d12a87, 0x9ef89ae9,
+0x65dd3a22, 0x7be8ada4, 0x22de9d16, 0x3acc1377, 0x24e3ecdc, 0x051faabb, 0x2710ddd0, 0xe10cd952,
+0x0769aae0, 0x04565d9a, 0xeeaaec2c, 0xcb9f12ed, 0x93f32d65, 0x10740ff9, 0x9b424cd6, 0xca25ec6c,
+0x4662ab6e, 0x9af71ed2, 0x6e99e78b, 0xa6081e2d, 0x98f414c1, 0x3af017d5, 0xfb846775, 0xeb7eb09b,
+0xcddf798f, 0x8a029645, 0xadbc2b4f, 0xa699505f, 0xfdf5d3ca, 0xf99b0e86, 0xa958a001, 0x3c33c3bb,
+0x3fdc4b11, 0x0ad413a8, 0x4246342f, 0x745971ce, 0x56b03202, 0x7bf76e9c, 0x78fd9536, 0x346b743d,
+0xb6ca3ef5, 0x1bfcd131, 0xc132b053, 0x37c6b1da, 0x40bd5ab1, 0x0417ccc6, 0xe472551b, 0x431854f8,
+0x8b5d2f2d, 0xa2d9f0a3, 0xc547fbcb, 0x8703550a, 0xcdadb145, 0xe5c89707, 0x0328ce29, 0xd8e29825,
+0x7eab16cd, 0x94167a25, 0xfda9fc22, 0xc34be08d, 0x6aeba18a, 0x7e465273, 0xe53732fa, 0x08f5e8d3,
+0x874ba296, 0x40ef331f, 0x43d92943, 0x5ed88d8f, 0x9f0df290, 0xdc350034, 0x5d94cbbd, 0x4d89b9fd,
+0xd2610a7f, 0x984557e9, 0x40c4a3d7, 0x0d5a1007, 0xc70fc77e, 0x46f623c7, 0x54b1a106, 0xf886e71d,
+0x72c4ecab, 0x5e4b9028, 0xf73869ff, 0x93c759df, 0x4e1f3f63, 0x4ce818a5, 0x81073d1c, 0xcd2e5f51,
+0x86fecfb3, 0xe0d383f0, 0x028ed120, 0x0a10c677, 0x5b6dd641, 0xbc9b2c97, 0xc188fd1a, 0x1f541bd6,
+0x4bbdab31, 0x2cee799b, 0xad70c922, 0xa6e51b28, 0xe60e2e44, 0x7f9a5de4, 0x2c55e1b8, 0x133f269d,
+0xa92bd0f5, 0xf84f575e, 0x6ecde27e, 0x819756b2, 0x1977a95d, 0xf2fe95b5, 0x49205968, 0x33e83acd,
+0x1e12bf67, 0xb877646f, 0x20ac05cc, 0xc9c32771, 0x931503be, 0xab5cb678, 0x04376062, 0x8b036000,
+0xb673afef, 0x912ba442, 0x4cb7f1c3, 0x55475211, 0x7b5b51a7, 0x19b28678, 0xb0e113e0, 0x362468b2,
+0x3022a822, 0xe2b47894, 0xe4e3b327, 0xa942f3e4, 0x4002151b, 0x75efe93c, 0xfd99131d, 0x03100e6a,
+0xc4fec172, 0xe542c4c2, 0xab841397, 0xca3689ed, 0xf4bea8b6, 0xd56568bc, 0x9209be50, 0x4f144878
+
+soft_output0 =
+0x7f817f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x817f7f7f,
+0x81817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x7f818181, 0x81818181, 0x7f818181, 0x81818181,
+0x817f8181, 0x7f7f7f7f, 0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f7f8181, 0x7f7f7f7f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x81818181,
+0x8181817f, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f7f, 0x81817f7f, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x81817f7f,
+0x7f81817f, 0x81818181, 0x7f818181, 0x81818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x81818181, 0x817f817f, 0x817f7f7f,
+0x7f7f817f, 0x817f8181, 0x817f7f7f, 0x817f8181, 0x7f818181, 0x7f81817f, 0x7f818181, 0x7f817f81,
+0x817f8181, 0x817f817f, 0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f7f,
+0x81818181, 0x81817f81, 0x7f7f817f, 0x81817f7f, 0x81818181, 0x8181817f, 0x8181817f, 0x7f7f7f7f,
+0x817f817f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x81818181, 0x7f817f81, 0x817f7f7f,
+0x7f817f81, 0x817f7f7f, 0x7f7f817f, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f817f7f, 0x81817f81,
+0x7f7f8181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x7f817f81,
+0x8181817f, 0x7f7f7f81, 0x81818181, 0x7f7f7f7f, 0x7f817f81, 0x7f817f81, 0x7f7f817f, 0x817f7f7f,
+0x81817f81, 0x8181817f, 0x81817f81, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x81817f7f, 0x81817f81,
+0x817f817f, 0x81817f81, 0x81818181, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f817f7f,
+0x81818181, 0x817f8181, 0x8181817f, 0x7f817f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81,
+0x81817f7f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f817f,
+0x817f817f, 0x817f8181, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x7f817f7f, 0x81818181, 0x7f818181,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f81, 0x81818181, 0x7f7f7f81, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x7f818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f7f81, 0x8181817f, 0x81817f7f, 0x7f817f7f, 0x8181817f,
+0x817f7f81, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x817f8181, 0x7f7f817f, 0x81817f7f, 0x817f817f,
+0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f8181, 0x817f817f,
+0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x7f7f817f, 0x7f818181, 0x817f8181, 0x7f81817f,
+0x7f81817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f7f817f, 0x817f7f81, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x81817f81, 0x7f81817f, 0x7f7f817f,
+0x81817f81, 0x7f7f817f, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f7f81, 0x817f817f,
+0x7f817f7f, 0x7f7f7f81, 0x7f817f81, 0x81817f81, 0x817f817f, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181,
+0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f81817f, 0x7f81817f,
+0x7f7f817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f81, 0x817f7f7f,
+0x8181817f, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f7f7f, 0x81817f81,
+0x81817f7f, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x81818181, 0x7f7f7f81, 0x817f817f, 0x81818181,
+0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x817f817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f, 0x81818181, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f81817f, 0x81817f7f, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x7f817f7f, 0x817f7f81, 0x7f817f7f, 0x817f8181, 0x81817f81,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x81818181, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f818181,
+0x7f817f81, 0x817f8181, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x7f81817f, 0x817f7f81, 0x81818181, 0x7f818181, 0x817f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x81817f7f, 0x7f7f7f7f, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f7f,
+0x817f7f81, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x8181817f, 0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f817f, 0x81817f7f, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x8181817f, 0x7f81817f,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x817f7f7f, 0x817f7f81, 0x817f7f81, 0x817f7f7f,
+0x817f817f, 0x817f8181, 0x7f817f7f, 0x817f7f7f, 0x7f817f81, 0x7f817f81, 0x817f817f, 0x7f81817f,
+0x81817f7f, 0x7f7f7f81, 0x7f7f8181, 0x81817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x817f8181,
+0x81818181, 0x81817f81, 0x7f817f81, 0x7f7f7f81, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f817f, 0x7f818181, 0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x7f81817f,
+0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f7f81, 0x7f817f7f,
+0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f7f, 0x817f7f81, 0x817f7f81,
+0x81817f81, 0x7f81817f, 0x81817f7f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x81818181,
+0x817f817f, 0x817f8181, 0x81818181, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x7f7f817f,
+0x817f8181, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x81818181, 0x7f7f817f, 0x817f7f81, 0x81817f7f,
+0x817f8181, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x817f7f81, 0x7f7f817f,
+0x7f818181, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f7f7f7f, 0x8181817f,
+0x817f817f, 0x81818181, 0x7f7f8181, 0x817f817f, 0x81818181, 0x7f817f81, 0x817f7f7f, 0x81817f7f,
+0x7f81817f, 0x8181817f, 0x817f7f81, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x817f7f81, 0x81818181, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x817f7f81,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x81817f7f, 0x81818181, 0x8181817f, 0x7f817f7f,
+0x81817f81, 0x7f817f7f, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f817f81, 0x7f818181, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f7f817f, 0x817f817f, 0x7f81817f,
+0x7f818181, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f81, 0x8181817f, 0x81817f81, 0x817f817f,
+0x7f7f7f7f, 0x817f817f, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x81817f7f,
+0x817f7f7f, 0x7f817f7f, 0x7f7f8181, 0x7f7f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f8181, 0x8181817f,
+0x81817f81, 0x817f7f7f, 0x8181817f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x7f7f817f, 0x7f818181,
+0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f81817f,
+0x7f817f7f, 0x81817f7f, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f7f7f7f, 0x81817f81, 0x817f7f7f, 0x7f818181, 0x7f7f817f,
+0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f7f817f,
+0x8181817f, 0x7f81817f, 0x8181817f, 0x7f7f7f81, 0x817f817f, 0x81817f81, 0x817f817f, 0x81817f81,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x817f7f7f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x7f7f8181,
+0x817f817f, 0x8181817f, 0x817f7f81, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f818181,
+0x7f818181, 0x817f817f, 0x81817f81, 0x817f8181, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f7f, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f817f, 0x7f818181, 0x81818181,
+0x7f7f8181, 0x817f8181, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x81817f7f, 0x8181817f, 0x81817f81,
+0x8181817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f7f7f81, 0x81818181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x81817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x817f817f, 0x817f817f,
+0x817f817f, 0x7f817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x8181817f,
+0x7f817f7f, 0x7f817f81, 0x817f7f7f, 0x817f7f7f, 0x817f8181, 0x81817f7f, 0x817f7f81, 0x81817f81,
+0x7f81817f, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x8181817f, 0x7f81817f, 0x817f8181, 0x81818181,
+0x817f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f7f, 0x81818181,
+0x7f7f817f, 0x817f7f81, 0x81817f81, 0x7f7f7f81, 0x81817f81, 0x81817f81, 0x817f7f81, 0x8181817f,
+0x7f7f8181, 0x817f8181, 0x817f7f81, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x817f7f81, 0x7f818181, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x7f817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f817f, 0x817f7f7f, 0x7f817f7f,
+0x7f81817f, 0x7f817f7f, 0x7f818181, 0x8181817f, 0x7f7f7f81, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x81817f7f, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x817f7f81, 0x817f817f, 0x7f7f7f81, 0x8181817f, 0x817f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x81817f7f, 0x81817f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f8181, 0x7f817f7f, 0x7f818181, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x817f817f,
+0x7f7f7f81, 0x81818181, 0x81817f7f, 0x817f7f81, 0x7f817f81, 0x8181817f, 0x7f7f8181, 0x8181817f,
+0x817f7f81, 0x81817f81, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f7f8181, 0x7f7f817f, 0x817f7f81, 0x81817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f817f7f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x817f817f, 0x81817f7f,
+0x817f8181, 0x7f7f8181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f817f7f, 0x817f7f81, 0x7f817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f7f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f818181, 0x817f817f, 0x817f817f, 0x81817f7f, 0x817f7f7f,
+0x8181817f, 0x7f81817f, 0x817f7f7f, 0x817f7f81, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181,
+0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f81, 0x81817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181,
+0x7f81817f, 0x7f7f7f81, 0x7f818181, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f8181, 0x81817f81, 0x7f81817f, 0x81818181, 0x817f7f81, 0x817f8181, 0x7f818181, 0x81817f81,
+0x81818181, 0x81817f81, 0x817f817f, 0x7f817f7f, 0x7f817f81, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f7f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x7f817f7f, 0x817f8181,
+0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x81818181, 0x7f818181, 0x81817f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x81818181, 0x7f7f817f,
+0x81817f81, 0x817f7f81, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x81817f7f, 0x817f8181,
+0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f8181, 0x817f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x7f817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x7f818181, 0x7f817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81818181, 0x81817f7f, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f8181,
+0x7f7f817f, 0x7f817f81, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x8181817f, 0x81817f81,
+0x7f7f7f7f, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x7f817f81,
+0x81818181, 0x817f8181, 0x81817f81, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x8181817f, 0x7f7f817f,
+0x81818181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x8181817f, 0x7f817f7f, 0x817f7f81, 0x817f7f81,
+0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f817f, 0x817f8181, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f818181, 0x8181817f, 0x7f818181,
+0x81817f81, 0x8181817f, 0x81817f81, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f7f7f,
+0x81817f81, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x7f7f7f7f, 0x817f817f, 0x7f7f817f, 0x7f81817f,
+0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x81818181, 0x817f817f,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x8181817f, 0x817f8181, 0x817f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x81817f7f, 0x7f817f81, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x817f7f81, 0x81818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x817f8181, 0x81817f81, 0x817f7f81,
+0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f7f81, 0x7f817f7f, 0x8181817f, 0x81818181,
+0x7f7f7f7f, 0x81817f81, 0x8181817f, 0x81818181, 0x7f7f817f, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x817f8181, 0x817f817f, 0x817f8181, 0x817f817f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x81818181,
+0x7f7f7f81, 0x81817f81, 0x8181817f, 0x817f7f81, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f7f81,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f8181,
+0x7f818181, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x8181817f, 0x7f818181, 0x7f7f8181, 0x817f7f81,
+0x817f8181, 0x8181817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f81817f,
+0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x817f817f,
+0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x817f817f, 0x7f7f7f81, 0x81818181, 0x81817f7f,
+0x7f7f817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x817f8181, 0x7f7f7f7f, 0x7f7f7f81, 0x7f818181,
+0x81817f7f, 0x8181817f, 0x7f7f8181, 0x7f81817f, 0x817f817f, 0x817f817f, 0x7f81817f, 0x81817f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f81817f, 0x817f7f7f, 0x8181817f, 0x7f7f817f, 0x81817f81, 0x81817f7f,
+0x7f81817f, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f818181,
+0x817f817f, 0x7f818181, 0x817f7f81, 0x81817f81, 0x81817f81, 0x7f81817f, 0x7f81817f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81818181, 0x8181817f, 0x81818181,
+0x7f81817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f817f81, 0x817f7f81, 0x7f817f81,
+0x81818181, 0x7f7f7f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f817f, 0x81818181, 0x7f7f817f, 0x7f7f817f,
+0x7f7f817f, 0x817f817f, 0x81817f81, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x817f817f, 0x8181817f,
+0x7f7f817f, 0x81817f7f, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f817f81, 0x7f7f7f7f, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f8181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x81818181, 0x7f817f81,
+0x7f7f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81,
+0x81817f81, 0x817f7f81, 0x817f7f7f, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x7f7f7f7f, 0x8181817f,
+0x7f817f7f, 0x81817f81, 0x7f817f7f, 0x7f817f81, 0x81818181, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x7f818181, 0x81817f7f,
+0x817f7f81, 0x817f7f81, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x8181817f, 0x81817f7f,
+0x7f817f7f, 0x7f818181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x81818181,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f81, 0x81818181, 0x817f817f,
+0x7f817f7f, 0x7f81817f, 0x8181817f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181,
+0x7f7f7f81, 0x81817f7f, 0x7f7f7f81, 0x7f817f7f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x7f818181, 0x817f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x817f817f, 0x817f8181, 0x7f818181, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f818181, 0x817f8181, 0x817f817f, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x817f817f, 0x8181817f,
+0x81818181, 0x817f7f7f, 0x817f8181, 0x817f7f81, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f,
+0x7f817f81, 0x81818181, 0x817f8181, 0x7f818181, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f,
+0x817f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f818181, 0x81817f81, 0x7f818181, 0x7f818181, 0x7f817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f,
+0x81817f7f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f7f, 0x81817f7f, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81817f7f, 0x817f817f, 0x817f817f, 0x7f818181, 0x817f817f, 0x817f7f81, 0x7f81817f,
+0x7f817f7f, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x81818181,
+0x7f817f7f, 0x7f7f8181, 0x817f817f, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f7f817f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x81818181,
+0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x7f7f7f81, 0x817f8181, 0x7f818181,
+0x7f7f7f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f817f7f, 0x817f817f, 0x7f818181, 0x8181817f,
+0x7f7f8181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x81817f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f81,
+0x81818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x7f818181, 0x81817f7f, 0x7f7f817f, 0x81817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x8181817f, 0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f7f817f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f, 0x81818181, 0x81817f7f,
+0x7f7f7f7f, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f, 0x817f8181,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x817f817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x8181817f,
+0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x817f7f7f, 0x81818181, 0x817f8181, 0x7f81817f,
+0x81817f81, 0x7f817f7f, 0x7f7f8181, 0x817f8181, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f7f7f,
+0x7f7f8181, 0x817f8181, 0x817f7f7f, 0x81817f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x7f7f7f7f,
+0x7f81817f, 0x81817f7f, 0x7f7f7f7f, 0x817f8181, 0x7f7f817f, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f, 0x81817f81,
+0x7f817f81, 0x7f7f817f, 0x7f7f817f, 0x7f7f817f, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x8181817f, 0x7f817f81,
+0x7f817f81, 0x8181817f, 0x7f7f817f, 0x817f7f7f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x817f7f81, 0x81818181, 0x7f817f81, 0x817f8181, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x817f817f, 0x81817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x7f7f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x81817f81,
+0x81817f81, 0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f817f,
+0x81817f81, 0x817f7f7f, 0x817f7f81, 0x7f7f817f, 0x81818181, 0x7f818181, 0x817f8181, 0x817f7f81,
+0x8181817f, 0x7f7f8181, 0x817f8181, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f7f,
+0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x81817f7f, 0x817f817f, 0x7f818181, 0x7f7f817f, 0x7f818181,
+0x7f818181, 0x7f7f817f, 0x817f8181, 0x7f81817f, 0x7f7f7f81, 0x7f817f81, 0x7f7f8181, 0x817f817f,
+0x81817f81, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x7f818181, 0x817f7f81,
+0x7f7f817f, 0x7f7f817f, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181,
+0x7f817f7f, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x817f7f7f,
+0x817f7f7f, 0x817f8181, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f,
+0x7f7f8181, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f81, 0x81817f7f, 0x7f817f7f, 0x817f8181, 0x8181817f, 0x7f818181, 0x8181817f,
+0x817f7f7f, 0x81818181, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f817f, 0x81817f7f, 0x8181817f,
+0x7f7f7f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x81817f81, 0x81817f7f, 0x7f7f817f, 0x7f818181,
+0x817f8181, 0x817f817f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81,
+0x7f7f817f, 0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f817f81, 0x7f817f81, 0x8181817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f817f81,
+0x817f817f, 0x7f817f7f, 0x81818181, 0x7f7f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f7f, 0x7f817f81, 0x817f8181, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x81817f7f, 0x7f7f8181, 0x8181817f, 0x8181817f, 0x7f81817f, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x8181817f,
+0x7f817f81, 0x817f8181, 0x7f7f817f, 0x81817f81, 0x7f818181, 0x7f7f7f7f, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x817f817f, 0x817f8181,
+0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f818181, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f,
+0x7f7f7f81, 0x7f7f8181, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81817f81, 0x7f817f81, 0x81818181, 0x81817f7f, 0x7f7f8181, 0x7f7f817f, 0x817f8181, 0x7f81817f,
+0x7f818181, 0x817f7f81, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f817f7f, 0x8181817f, 0x7f7f7f81, 0x7f81817f, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f7f81, 0x7f81817f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f817f, 0x817f7f7f, 0x817f817f, 0x81817f7f,
+0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f817f81, 0x817f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x8181817f, 0x7f7f7f81,
+0x81817f81, 0x817f7f7f, 0x81818181, 0x7f7f8181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x817f817f, 0x7f7f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x8181817f, 0x7f7f7f81, 0x7f7f8181,
+0x81817f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f7f8181, 0x8181817f, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f,
+0x7f818181, 0x817f8181, 0x817f7f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x81818181, 0x7f817f81,
+0x81818181, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x81817f81, 0x81817f81, 0x817f7f7f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f817f81, 0x81818181,
+0x81817f81, 0x7f7f7f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f7f7f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f7f7f, 0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f7f, 0x7f818181,
+0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f,
+0x7f7f8181, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x81817f7f, 0x7f817f81,
+0x817f817f, 0x7f817f81, 0x81818181, 0x7f81817f, 0x7f81817f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f8181, 0x7f818181, 0x817f7f81, 0x7f7f817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f818181,
+0x7f7f7f81, 0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x81817f81,
+0x7f817f7f, 0x7f7f817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f, 0x8181817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f818181,
+0x7f817f81, 0x81818181, 0x7f81817f, 0x7f817f81, 0x81818181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f817f, 0x7f81817f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x7f818181,
+0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f81817f, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f81,
+0x7f7f8181, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x7f7f7f7f, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f81, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f81817f, 0x817f7f7f,
+0x817f7f81, 0x81817f7f, 0x81817f81, 0x817f817f, 0x81818181, 0x81817f7f, 0x817f817f, 0x7f817f81,
+0x81817f7f, 0x81817f81, 0x81817f81, 0x7f7f7f81, 0x817f7f81, 0x8181817f, 0x7f7f817f, 0x817f817f,
+0x7f7f7f81, 0x817f817f, 0x7f817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x7f818181, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x817f8181,
+0x7f817f81, 0x7f7f7f7f, 0x81817f81, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f81, 0x817f7f7f, 0x7f7f7f81, 0x81817f7f, 0x7f7f8181,
+0x81818181, 0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x8181817f, 0x7f817f7f, 0x81818181,
+0x817f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x817f817f,
+0x817f7f81, 0x81817f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x8181817f, 0x817f8181, 0x7f7f7f7f,
+0x7f818181, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x817f8181, 0x7f81817f,
+0x7f7f7f81, 0x8181817f, 0x81817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x81817f81, 0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x8181817f, 0x7f7f817f,
+0x81817f81, 0x817f8181, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181,
+0x817f817f, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x81818181,
+0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x81817f7f, 0x817f7f81, 0x81817f7f, 0x7f817f7f, 0x81818181,
+0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f7f,
+0x817f8181, 0x7f7f7f7f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x8181817f, 0x81818181, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x8181817f, 0x7f818181, 0x817f7f81,
+0x7f817f81, 0x7f81817f, 0x81818181, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x7f81817f,
+0x7f7f8181, 0x7f817f7f, 0x7f7f7f81, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x817f8181,
+0x7f818181, 0x817f7f7f, 0x817f7f81, 0x7f817f7f, 0x7f81817f, 0x81817f81, 0x7f7f7f7f, 0x8181817f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x7f818181, 0x7f817f7f, 0x7f817f7f, 0x81818181, 0x817f8181,
+0x7f81817f, 0x8181817f, 0x7f7f817f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f817f7f,
+0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f7f81, 0x817f8181, 0x8181817f, 0x817f7f81, 0x7f7f817f,
+0x817f7f7f, 0x7f7f7f81, 0x817f7f81, 0x817f7f7f, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x81817f7f,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f7f, 0x81818181,
+0x81817f81, 0x7f818181, 0x8181817f, 0x8181817f, 0x7f817f81, 0x817f7f81, 0x81817f81, 0x7f81817f,
+0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x817f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f817f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x817f817f, 0x7f7f8181,
+0x81817f7f, 0x817f817f, 0x8181817f, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f81817f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x8181817f, 0x817f8181, 0x817f8181, 0x8181817f, 0x817f8181, 0x7f7f8181,
+0x8181817f, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f817f7f,
+0x8181817f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x817f7f7f, 0x7f81817f, 0x7f818181,
+0x8181817f, 0x7f817f81, 0x817f7f81, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x7f818181, 0x817f8181,
+0x81818181, 0x7f81817f, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x817f7f81, 0x7f817f7f,
+0x81817f81, 0x81818181, 0x7f818181, 0x817f7f7f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f7f7f7f,
+0x7f81817f, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181, 0x7f7f7f81, 0x81818181, 0x817f7f81,
+0x7f81817f, 0x7f817f81, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x81817f81, 0x7f818181, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x817f817f, 0x81818181, 0x817f7f7f, 0x81817f81, 0x7f818181, 0x7f817f7f, 0x7f81817f,
+0x81817f7f, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f817f, 0x81817f81, 0x7f7f8181,
+0x817f817f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x81818181, 0x7f7f7f81,
+0x81818181, 0x7f7f817f, 0x7f81817f, 0x7f7f8181, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x81818181, 0x7f7f7f81, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x817f7f7f, 0x81818181, 0x81818181,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f81, 0x81817f7f, 0x7f818181,
+0x81817f7f, 0x817f817f, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f817f7f, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f81, 0x817f8181, 0x7f81817f,
+0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f81817f, 0x81817f7f, 0x7f7f817f, 0x817f7f7f, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x817f7f81, 0x7f7f7f7f, 0x8181817f,
+0x817f7f7f, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f7f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f81,
+0x7f81817f, 0x817f7f81, 0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f7f, 0x81817f7f, 0x817f817f, 0x7f7f7f7f, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x81817f7f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x817f7f7f, 0x8181817f,
+0x817f817f, 0x7f81817f, 0x817f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x817f7f7f,
+0x7f817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f81, 0x7f817f81,
+0x7f81817f, 0x81818181, 0x81817f81, 0x817f7f7f, 0x81817f7f, 0x81818181, 0x7f7f817f, 0x81818181,
+0x7f7f817f, 0x7f7f7f7f, 0x7f81817f, 0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x8181817f, 0x81818181, 0x81818181, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x81817f7f, 0x817f7f81,
+0x8181817f, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x817f817f, 0x817f817f, 0x81818181, 0x817f817f,
+0x7f7f817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x81817f7f, 0x817f7f7f, 0x81817f81, 0x7f7f7f81,
+0x8181817f, 0x81818181, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x7f7f817f, 0x817f7f81,
+0x7f7f8181, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81, 0x81818181, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f,
+0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x817f7f81, 0x7f817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f,
+0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f81, 0x817f8181,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f817f81, 0x81818181, 0x7f81817f,
+0x817f8181, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f817f7f, 0x817f7f81, 0x817f817f, 0x7f817f81,
+0x7f7f817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f, 0x81817f81, 0x7f817f81, 0x81817f81,
+0x7f818181, 0x8181817f, 0x7f818181, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f817f, 0x7f818181,
+0x81817f7f, 0x817f7f81, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x7f7f8181, 0x817f8181, 0x81817f81,
+0x7f7f8181, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f,
+0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x81817f81, 0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x817f7f81,
+0x81817f81, 0x7f818181, 0x81817f7f, 0x81818181, 0x817f817f, 0x7f7f7f81, 0x7f81817f, 0x7f817f7f,
+0x81818181, 0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f81817f, 0x817f817f, 0x7f81817f,
+0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f818181,
+0x81817f7f, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x7f817f81, 0x81817f7f, 0x7f7f817f, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x81817f7f, 0x7f818181, 0x7f81817f, 0x7f7f7f7f, 0x81817f81, 0x817f817f,
+0x817f8181, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x7f818181, 0x7f818181, 0x7f818181, 0x817f8181,
+0x817f8181, 0x817f7f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x81818181, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f817f7f, 0x7f7f7f7f, 0x81817f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f817f, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x817f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x817f8181, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x8181817f, 0x817f8181, 0x817f817f,
+0x7f7f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f7f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f81, 0x81817f7f, 0x7f818181, 0x81817f7f, 0x81817f7f, 0x8181817f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f817f7f, 0x7f818181, 0x817f8181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f817f, 0x7f817f7f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f817f7f,
+0x7f817f81, 0x7f7f817f, 0x81818181, 0x81817f7f, 0x817f8181, 0x81817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x8181817f, 0x7f81817f, 0x8181817f, 0x817f8181, 0x8181817f, 0x817f7f81, 0x81818181,
+0x81817f81, 0x81817f7f, 0x7f817f81, 0x7f817f81, 0x7f7f7f81, 0x7f81817f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f81, 0x81818181, 0x81818181, 0x7f7f7f81,
+0x7f81817f, 0x7f81817f, 0x817f7f81, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f81817f,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x7f7f817f
+
+e =
+12248
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
new file mode 100644
index 0000000..8ec0ec0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
@@ -0,0 +1,647 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7fb2e1, 0x467f05ef, 0x3cabba6a, 0x1f826cac, 0xbe817fe7, 0x584dab0f, 0xdcb55f81, 0xe47f915f,
+0x37b1a534, 0x4b478145, 0x9db5727f, 0x7fa6943f, 0x819550ea, 0xd18eb72a, 0xa0ba9c10, 0xcf7f817f,
+0x915a957f, 0x2c699d0a, 0x89815c0f, 0x7f569358, 0x1002587f, 0x54314130, 0x817f1b7e, 0x81a85e2a,
+0x5981bdf2, 0x0c81b00f, 0x6781be0e, 0x297fb17f, 0xfd811fb3, 0x7f077fdb, 0xd37fc2ab, 0x817f1024,
+0x81817f7f, 0x3d848ec6, 0x4486cd9c, 0x7f6d7f81, 0x1d7ffa93, 0x813648ca, 0xdc7f125e, 0xaa81a798,
+0x60838ef4, 0x815fcdbd, 0x81cb9d93, 0x817f8188, 0xc8c3d697, 0x817af2d6, 0x36888781, 0x818117ee,
+0x37a67fbf, 0x89f464b2, 0x7f1e7f81, 0x7fe5c17f, 0x8ca1effc, 0xed7f82cf, 0x4a7f5ac6, 0x7fffb8d6,
+0x427f7f73, 0x747f7f06, 0xdfcd22a9, 0x7fb99981, 0x76f77381, 0x2cd70f12, 0xd8b138e1, 0x81a4ea29,
+0x222db281, 0xc3a07fd2, 0x217f8177, 0xd1cd87c4, 0xd181679f, 0x7f7fdee2, 0x7c81a72f, 0x6e7f5a7f,
+0x77b0c96d, 0xff7f8110, 0xe8c6ad46, 0x376ade0a, 0x447f687f, 0x5916d238, 0x88816b81, 0xda7f6d88,
+0xe2b2b55f, 0x750f7fc8, 0xc624d47f, 0xc6837f79, 0x81de5272, 0xd0847f29, 0x81ad587f, 0x3e7f7f61,
+0xc803e070, 0x237ff600, 0x8c01815e, 0x814e0e81, 0x81657eef, 0xab2a62bc, 0x73d42cb4, 0xaaf03a8a,
+0x817fa57f, 0x5e7fe2c3, 0x6deda37f, 0x6e87818d, 0x767f6e4d, 0x5c76819a, 0x8182b6f0, 0xdcd3037f,
+0x81184c7f, 0x7ff1501c, 0x22c7f159, 0x45a6817f, 0x9b53c5e7, 0x57966a5e, 0x0a7f7f81, 0x4a5c155e,
+0xf37fff81, 0xad97f8f2, 0x052f397f, 0x79638181, 0x7f7f7f7f, 0x81e3fae4, 0x7659cf03, 0xbd7a5a81,
+0x46bcab7f, 0xa57f69a1, 0xba818186, 0x38a347a2, 0x91a88ec0, 0xd76087fc, 0x81818b8c, 0x7fa3424e,
+0x7f89ef7f, 0x81ac183d, 0x3aa8912a, 0xc4937da6, 0x7a4c136b, 0x81568e05, 0x8182812b, 0xebb17f1d,
+0x84b87f4c, 0xf4eab6c9, 0x81034197, 0x8183bd0a, 0xa1b92676, 0xceca2ef1, 0x9b7f7f7f, 0x5d813181,
+0x817fea35, 0x0a6c81b0, 0x9a559b4f, 0x93987691, 0xad819510, 0xa47ab324, 0xfa577f7f, 0xbba8ac3e,
+0x6694b753, 0xee63c4d7, 0x17b4ce81, 0x83c0dc81, 0x6a7f4481, 0x81d87fe0, 0x7f5cc5c0, 0xf828ea77,
+0xbb817fa3, 0x3e816619, 0x817f6aab, 0x26417f7f, 0x0c40817f, 0x9cf01834, 0x32b37f7f, 0xe74fd0a7,
+0x7f7f4167, 0x0e7f6ae0, 0x813d81b2, 0x8172027f, 0x4ea6c275, 0x814525de, 0x46817f7f, 0x7fcb2cd1,
+0x7f8198ca, 0x3d7f60aa, 0x8d7fac81, 0xe2c081ed, 0x656f8181, 0xb2ae9365, 0x6ddd8d81, 0x86e0be65,
+0x5495ec58, 0xcb981829, 0x429ee669, 0x81445fc5, 0xd3435724, 0xce51b323, 0x92b16972, 0xf0137f8e,
+0x7f199a7f, 0x81be813c, 0x8155817f, 0xd481037f, 0x167f8181, 0x5ad131d4, 0x7fbc4149, 0x81046d60,
+0x87174b9c, 0x94bc63ba, 0x68817c7f, 0x12ef7f8d, 0x7a81f4f6, 0x7f7f6db9, 0x4823417e, 0xa4989a48,
+0x7e4c787f, 0xa47f8123, 0x819afb20, 0xbf7f447f, 0x8d95af5c, 0x33a6812e, 0x07c75cd5, 0x337f8151,
+0xa2e5e15a, 0x847f7209, 0xf9f4b934, 0x72a77f2f, 0x1a9f2f7e, 0xac224bb2, 0x81467f0c, 0x3f8fd28d,
+0x4a78b07a, 0x5269a71e, 0x4fd57fb2, 0x0b5262bf, 0xea39ca0a, 0x577f3d1e, 0x509481d7, 0xb7816b48,
+0x35c31d7f, 0x818bdc1d, 0x24087fb9, 0x7fe27f07, 0x55866481, 0x7f9edd28, 0x07811ed1, 0x1b317fb2,
+0x8cb19dee, 0x396920a6, 0xd965dd85, 0x9ed5ff47, 0xc97f7f7f, 0x7f8c1d55, 0x06a69701, 0x9e348881,
+0x7f6cb281, 0x388181d1, 0xd07d61ac, 0x7fdef7f1, 0x08177f7f, 0xd87fa1c0, 0xfe9ebeb5, 0x813d3430,
+0x2181811e, 0xf4dab306, 0xa36bbb7f, 0x05e87f7f, 0x957ff3cd, 0xe4814219, 0x7fbf3f81, 0x818a7fab,
+0x43e081d9, 0x87c08729, 0x0db52785, 0x8181b0da, 0x4c94697e, 0x817fa9b2, 0x7f7f81d9, 0x8bda8193,
+0xb6811781, 0x81796220, 0xdb082ac1, 0x2c7f5d3b, 0x8c8103f3, 0x4dcbd01e, 0x7fc1a87f, 0x457f7f23,
+0x5e26bad6, 0x7f8174f3, 0x30109f08, 0xef8526cc, 0xe8690849, 0xd2b981b0, 0x7f7f7fb5, 0x8156ef7f,
+0x921a7f98, 0x7fe6681e, 0x244e497c, 0x5ef68149, 0xbfbcaa7f, 0xf5011204, 0xfe7f8163, 0x8cd08f31,
+0xc88a6b43, 0x7c8105b6, 0xf6d881aa, 0x074c2c2d, 0xd6815c7f, 0x1d15d265, 0xce816f0c, 0x14c77f2e,
+0x9a7f08c4, 0x1a8b8ed2, 0xbe9637ed, 0xb59fac5a, 0xa4d07f91, 0x7f847fab, 0xd981597f, 0x7328575d,
+0xb83af760, 0xb536b941, 0x81c1937f, 0x16b7814d, 0x3f7fb081, 0x7f41e102, 0x727f77ea, 0x9558c381,
+0x48ac819e, 0xa87f99f2, 0x819e7f05, 0x92816eb0, 0x59447f81, 0x4f6cb056, 0x818163a8, 0xe00a64e2,
+0x81bb7fa3, 0x7f816de7, 0x86ac6a50, 0x48a277b0, 0x8e37cd81, 0x7f88e646, 0x023351d8, 0x1ee7a64b,
+0x8145f239, 0x81810859, 0x557f7f7f, 0x6971d292, 0x813d7fdf, 0xe86cade7, 0xdab67f7f, 0x6d4f247f,
+0x9df2297f, 0x1e8172ec, 0x3f81a56d, 0x907f02d3, 0x45663970, 0x817f46a4, 0x817fd1ce, 0x9843b181,
+0x7fdf817f, 0x784881da, 0xd8a281c2, 0xd77f88d8, 0x8c81817f, 0xeb625633, 0x73fe4eae, 0x57787f19,
+0x7f81ea7f, 0xca8143c8, 0x767cbf1d, 0x7fbc81e1, 0x7f9bbeb5, 0x7fea8a12, 0x7f5c7fde, 0xb5fe1685,
+0xa4da81c8, 0x7f6b542e, 0x81814b7f, 0x6252f7d3, 0x55eebb81, 0x6a0824cf, 0x586128f0, 0xded58181,
+0xe32a819b, 0x79c67f20, 0xf2812781, 0x7f58c369, 0x7ffa2d7f, 0x817f81f4, 0x7ffc2c07, 0x457f9981,
+0xff4281c7, 0xd78e6955, 0x3e10e57f, 0x632b817f, 0x7f0197d1, 0x813e7feb, 0xf981ac81, 0x8f81317f,
+0xc37f137d, 0x01918101, 0x81b007a4, 0xaab059ad, 0x7f7f81f7, 0x6ac590a9, 0x817f81a0, 0x68816067,
+0x0ae08182, 0xb47fb268, 0x33d94a7f, 0xbf43d243, 0xccff8e4e, 0x44ebe23f, 0x0d4cfd2e, 0x7f81947f,
+0x81d1cee8, 0xda0e16a3, 0x34a74376, 0x117b81ae, 0x1d853f6b, 0x81d6d2ed, 0x8d7f5be6, 0xcf1fb4a0,
+0x3e1ec13a, 0x7fed0cf4, 0x65d3817f, 0x0a1fec83, 0x7fc4811f, 0x666381c1, 0x8147c754, 0xa9cf7f53,
+0xa076cf81, 0x4c7a4712, 0x1a814ff5, 0x9e7f8175, 0x8181698b, 0x7f1a7f63, 0x8191f19f, 0xb1037fa8,
+0x7f52aa2e, 0x42b65c09, 0x94afab7f, 0xbda37dda, 0x81f2d66b, 0x3e737f1f, 0xcb816031, 0xd56181ef,
+0x2c6ffb81, 0x44852329, 0x1b4b81cc, 0x055a7bb7, 0x4c6f2e1d, 0xb14ae1b7, 0x7f43c2c4, 0x2368b80d,
+0x7f7ffb9f, 0x990b0523, 0x74b33ea5, 0xd64c8199, 0x98ed81a2, 0x311bc8e9, 0x599963cf, 0xb0eeed4c,
+0x8181ed70, 0x42023428, 0xd00270bc, 0x812a7fd3, 0x7fc4101a, 0x3448d8db, 0x068814a8, 0xfeb5701c,
+0x46db1481, 0x3cc5b001, 0x8181c2b3, 0x9c3d7f7f, 0x7f13e346, 0x2b75819c, 0xf57fcfe1, 0xfdaac581,
+0x7f814c6f, 0x7f186b39, 0x7f818150, 0xea7f5b7f, 0x816776b0, 0xb8657f57, 0x7f447f5e, 0xc3628122,
+0x84849d7f, 0x7f8cb914, 0x92813dd5, 0x81557a3a, 0x6b4cbf7f, 0xc6818b94, 0x7fbb7f98, 0x3c88812d,
+0x8de4267f, 0x8dee81fd, 0x37f98131, 0x3d8164d2, 0xd97f8181, 0x3ccaebf9, 0x8165cb7f, 0x63cb81d3,
+0x817fea94, 0x48817fa1, 0x4ea0b16b, 0x3cb5ab6f, 0x3148f975, 0x8c7f1ab5, 0x7fae5a87, 0xad06c881,
+0x0681c187, 0x81a5a11b, 0xe29ea383, 0xf07f536d, 0x81b0e702, 0xc37fbb59, 0x9e6167e8, 0x3f55c9be,
+0x819a40a9, 0x6450b823, 0x15927b65, 0x72a149d4, 0x6c280b5c, 0x5d7fd8f3, 0x998d831a, 0xbb7f817f,
+0x10ab3f81, 0x96f65101, 0x257f743a, 0x7f04a024, 0xe0c981b4, 0x81163a22, 0x8e197481, 0x21addfdc,
+0x7f2dcdaa, 0x787f4407, 0x6b7f81ce, 0x9fd252c5, 0x85e8979b, 0xb049819d, 0x8f7f7f4d, 0xbe284c7f,
+0x78135181, 0x5d33db0a, 0x8123817f, 0x81496a7f, 0x81889281, 0x8145bf37, 0x2e9f7fdf, 0xe4543a2d,
+0x811e6024, 0x7f62e6ba, 0xaad07f1f, 0x4f73894f, 0x4c7f8181, 0x57817f06, 0xd27feb81, 0xcf1a815c,
+0xa57fbe7f, 0x684f7fdc, 0x81f6cbc0, 0xb72bf82f, 0xda6d448f, 0xc6157f36, 0x7f81407f, 0x9a8c4719,
+0x5fdf81dd, 0xaf817f0f, 0x813c11da, 0xd7ec1181, 0x570186e7, 0x8181f41e, 0xe5b8a2bb, 0x819051f3,
+0x2a7fd68f, 0x37a13ac3, 0x5b81fd38, 0x6342817f, 0x84697f6e, 0x7f5eddfa, 0x6abc81d1, 0x8151d9d8,
+0x3e5c6c53, 0x2b397fc6, 0x60d58548, 0xc540b213, 0x67815781, 0x89983030, 0x767c7f81, 0x71effe3a,
+0x817feb42, 0x05818897, 0x810ea318, 0x99bb0e8a, 0xf1dd4b7b, 0xae6dcbae, 0x8155adc0, 0x15b4c0c1,
+0x81ac9b14, 0x895057be, 0x9599d781, 0x38968fcd, 0x8171e981, 0x7a62d80c, 0x8681509a, 0x7f5d489b,
+0xa381467f, 0x7fa12952, 0xa07f8109, 0x5acd5d7f, 0xbb7fc77f, 0x531f3429, 0x7fb77f5a, 0x566d89f6,
+0x817d4c23, 0x406a81e6, 0x1381c99c, 0xad89d258, 0xa67f0cad, 0x510b916e, 0x7ffa81a1, 0x0b6a11e1,
+0x2be02284, 0x7f4e4338, 0x817fd023, 0x058174bf, 0x677f950a, 0x97a6a01d, 0x81817f81, 0x136881da,
+0x717f7f9a, 0xbf811404, 0x6714c965, 0x51828181, 0xcaf329a1, 0x8881bc0a, 0x7f7d8305, 0x2c7f5a7f,
+0x7f7f63e9, 0x797fced4, 0x818154f5, 0xf13681c4, 0xc04b1d81, 0x0e81d244, 0xbf3f66bf, 0x5a3f2d7f,
+0xfa931714, 0xce485844, 0x263ae55b, 0x7fd37f81, 0x79477ee4, 0x7f8187e0, 0x81ab8144, 0x7f8d7f7f,
+0x6f715068, 0x7f5577f6, 0x7f487f41, 0x81813b84, 0x33431981, 0x81a181c6, 0xca1b667f, 0xe75a7f71,
+0x168128b0, 0xe0a092d5, 0x6e8164de, 0x2e817f61, 0xc4b1818d, 0xea7f8a32, 0x1098817f, 0x14a18156,
+0xdd568862, 0xd3176a4b, 0x81308181, 0x697b3faa, 0xe256cecb, 0x697f1691, 0x4e228c05, 0x7fa6682a,
+0x7449816e, 0x4558a15f, 0x9f513638, 0x7f7f819c, 0x7fb77aa1, 0x5eaf4912, 0x14817f7f, 0x0853817c,
+0xa47fbe41, 0xdfd77f0e, 0x81371d7f, 0xc9cd7299, 0x81d0673a, 0xb133492f, 0xfd7f4003, 0x897f7f1c,
+0x1990d405, 0x9f3ee2bd, 0xc168817f, 0xc6f57fa4, 0x83ee483e, 0x90f781f6, 0x81dcb39d, 0xd37fe881,
+0x28819181, 0x83da81d4, 0x7251dc7a, 0x7928ffc3, 0x7bca8181, 0x7f7f817b, 0xf6fa907f, 0x37916bd4,
+0x0d3fbc7b, 0xde81bdd0, 0xa0147fdc, 0xbf0f7f0b, 0x25958132, 0x7f6c9931, 0x7f44812c, 0xd4868181,
+0x6d9622ad, 0x817f30b6, 0x3c7f817f, 0x81238823, 0x7f2d5c81, 0x6f81531b, 0x947faff2, 0xa5ea038c,
+0x4268817f, 0x814f8cfc, 0x81481809, 0x814d7f1a, 0x3c87507f, 0xa47f1219, 0x4f65f27f, 0x5d7f2c21,
+0x7f4631a5, 0x5a81475a, 0x7f81ef60, 0x73aaa890, 0x327f7f7f, 0x81b614c1, 0x7fc6477f, 0xe5b7a6be,
+0x55816e73, 0x7ffaffb1, 0xb93d1b81, 0x3ce80fe2, 0x37ec6194, 0xe681e2db, 0x81c1d37f, 0x33a2bad3,
+0x582b8181, 0x7fdc7f25, 0x81978169, 0x9733486f, 0x3de13ef3, 0x247fd5cf, 0xa91d817f, 0x606a7f56,
+0x817f8178, 0xe61d7b08, 0x7fa08181, 0x058bd29b, 0x28237fbf, 0x4f81b057, 0x488d8103, 0xe1817fa5,
+0x81666297, 0xfabc75c8, 0x7ff75edb, 0x4a62fab5, 0x687fad84, 0xa7221c28, 0x773a5a6e, 0xf27f8581,
+0x7f7f9569, 0xa31d812f, 0x81d48457, 0x7f88bcfe, 0xd743b981, 0x7f608102, 0x18de2185, 0x81d77fc4,
+0x937f337f, 0xe67fe52e, 0x95d481da, 0x887f6071, 0x81301872, 0xd9088132, 0x7f7f5a81, 0x8181aba8,
+0x7f9a7fcd, 0x7f7f4136, 0x3d87d3a8, 0xd581d381, 0x5d306ed0, 0x615b98dc, 0x812b3281, 0xdbe5c443,
+0x817f7fe9, 0x815462da, 0x8122da0a, 0xb5817d81, 0xe12bd56c, 0xfa819a68, 0x907f8183, 0x236aa83f,
+0x1b576c9b, 0x5b6424ab, 0x3f3e3953, 0xec81507f, 0xddb43aa9, 0x818134f1, 0x81c37fb0, 0xbf4a7fcf,
+0x810b7f7c, 0x705b81d5, 0x23636581, 0x3caf7f9d, 0xbe765d81, 0x189a11ae, 0x8194cabc, 0x6063c5b0,
+0x0e3c5353, 0x388235bb, 0x81904632, 0x2b9781d3, 0xd78db758, 0x953fe437, 0x7423f22d, 0x81ad9c95,
+0x7fd74748, 0x329b582d, 0xe0e07f7f, 0x7f81ae8e, 0x962fe50c, 0x3b7faf1d, 0xcaeb8e37, 0x7f54276a,
+0x927f6c9a, 0x828143c1, 0x90456105, 0x7f757ff6, 0x796681eb, 0x7478b225, 0x70d852bb, 0x7f280bdb,
+0x56597f47, 0x51e6fff8, 0x1e7f818d, 0xdc4a8175, 0x10712985, 0x2ee6daa1, 0x81c7d046, 0xa1a36e79,
+0x9adf7f7f, 0x812ee70d, 0x91bc1062, 0x443b7fa9, 0x818f47b3, 0x7f817f3b, 0x7981a09c, 0x7f9c817f,
+0x1b46d2cc, 0x786179de, 0xd97f61f2, 0x81b4f213, 0xd381874a, 0x7f4f7fc4, 0x9c81c3d5, 0x17d59842,
+0x7fc9a8fc, 0x996840b5, 0xd5a79281, 0x88378181, 0x7fd4ca81, 0x81ba7fee, 0x5dae297b, 0xc8fa0e5c,
+0x987a5757, 0x5debc016, 0xa64eb973, 0x61a51b81, 0x66509c7f, 0xeb7ad965, 0x7ada817f, 0x4d5bf7bc,
+0x8876b8a4, 0x7d73b4d0, 0x762cb5ad, 0x6ec14d66, 0x6bfdad7f, 0x7f7f810e, 0x81bc2b15, 0x0f817f9c,
+0xc72fe940, 0xc9168b0c, 0x7f6e8d79, 0x7f81fadd, 0x706181f6, 0x678181e7, 0x3f68c5e8, 0xa06d8195,
+0x78d73d7f, 0x7295109a, 0x05897f55, 0xbdc07281, 0x81817fe3, 0xcd157f30, 0x489ca757, 0x53468119,
+0x3f6a81b8, 0x03fe7c43, 0xb511cda3, 0xe581a17f, 0x5e3e3ec9, 0x7f507f96, 0xbe12a481, 0x81006ddd,
+0x49322cb4, 0x27f7a81e, 0xc6085618, 0x8148d270, 0x68668181, 0xec5ed498, 0xa011833a, 0x81475300,
+0x071d3a63, 0xa2c55142, 0x7fe9767f, 0x6e3c21fe, 0xeb63814a, 0x7fd57ffd, 0x9f91630b, 0x475f219f,
+0xbbb5c7bc, 0x686de142, 0xb652909f, 0x6b8e5a7f, 0x7f885858, 0x7f027ee1, 0x7f818191, 0x818881d4,
+0x1b7c017e, 0x8581aac9, 0x627fa790, 0xaf837f7f, 0x69064681, 0x311d32e9, 0x6f7f0ba1, 0x7b81a1c5,
+0x7f4f8144, 0x81e38144, 0x528daa3d, 0x1c098175, 0xba6b0ac7, 0x732614ab, 0x5b2c5d7f, 0x81815ce8,
+0xb37f7fbb, 0xc87f8ec5, 0x81b08181, 0x5bcb8136, 0x7f2524c5, 0xf5e881d8, 0x50ceaf7f, 0xf72387a1,
+0xd4c74e74, 0x663f7fe8, 0x26ae4a7f, 0x5d7f6358, 0x8178bbdb, 0x46f38102, 0xb0327f53, 0xa019f297,
+0xeff57f12, 0x7f7f79e2, 0x8120817f, 0x73e4b322, 0x999c6349, 0x92ba973e, 0x7f7fbc5c, 0x81946449,
+0xaf4b817f, 0xca523d00, 0x81817fbf, 0x3b145a81, 0xec54886e, 0x81cb173e, 0x5f02667f, 0x967a8181,
+0x8a817f81, 0x3cb93c41, 0xfa811336, 0x74feb5a9, 0x821b9081, 0xaea865af, 0xf17f4e71, 0x52810059,
+0xaebc3b36, 0x6a8f7fd2, 0x109de3eb, 0x4c555f48, 0x8166cc78, 0x7f4c7b48, 0xc7d1d381, 0x1381537f,
+0xa0ab5c1f, 0xa00d0039, 0x81157f81, 0x2f206f81, 0xacb45b81, 0x2ec382f3, 0x7ff0383e, 0x44dc5aeb,
+0xc37f81cd, 0x43553306, 0xa63d7f81, 0x7f7f8140, 0x7f7f818a, 0x7d82bd27, 0x817f8b7f, 0xa3579535,
+0xc2e47871, 0x81815a0b, 0x49977081, 0x724cc372, 0xc681c27f, 0x2b7cabf0, 0x3081a6ac, 0xec7f964e,
+0x7fda3ad3, 0x422671a4, 0x60008158, 0x7f738e7f, 0x538e6f81, 0xb73e0ab0, 0x796a6551, 0x81ad178b,
+0x19731c7f, 0x1bf8c26a, 0x4acb7fd4, 0x5121b547, 0xda547fff, 0x7e505ff7, 0x817fff48, 0xa0813934,
+0x3d4f77d1, 0x83f327ef, 0xc7937f6b, 0x357c4a84, 0xc183ca7f, 0xbd6081db, 0x30e0d783, 0x492aa57f,
+0xbba6671e, 0xb062baef, 0x7f817f20, 0x7f267f58, 0x7fb94b3f, 0x447f5b21, 0xb864997f, 0x7fb057f8,
+0xb1401a7f, 0x7fb57f9d, 0xefbb8175, 0x66892581, 0x7f06fa7f, 0x817a90f0, 0x7bd5793b, 0xc37ead24,
+0x6feaa4be, 0x3a548cde, 0x8e81f98c, 0x81b78199, 0xe6c11940, 0x4d647f2f, 0xbc5c8181, 0x8175fa91,
+0x8188864b, 0x85591890, 0x47ce5d57, 0x38a4efb7, 0xce5e739f, 0x81737fd4, 0x6d7f635e, 0x9c861774,
+0x89818262, 0x45bc8114, 0xd1552a89, 0xc68174f8, 0xaf9081d8, 0xcb08e35b, 0xf5c404b2, 0x2ce96576,
+0x11895a36, 0xcf20e0ea, 0x2548e7dc, 0x8f774c59, 0xf85a8f56, 0x7f81ddae, 0x7f7f627f, 0x1481491c,
+0x7f97661b, 0x787f81e0, 0xa2192f7f, 0x6cb37fb0, 0x8181ae27, 0x3f7fafec, 0xce7f5a86, 0xae067f7f,
+0x3c1c8181, 0x817eb443, 0x8e741041, 0x5a4ef2ba, 0x61029de4, 0x9d637e34, 0x819d7fca, 0x8181cd7f,
+0x8175b96c, 0xbc4f6ecf, 0xf826aead, 0x567fa36d, 0x81968197, 0x9f9dcf3e, 0x265c8131, 0x81d9deab,
+0xc21cf772, 0x7f6bd907, 0x313f795b, 0x817f197f, 0x09ecfe43, 0x6114402f, 0xe0995a81, 0x5f263281,
+0xbe7f8158, 0x7f7f26dd, 0xfd7f7f7f, 0x3da2c609, 0x6ce3810d, 0x7f81cd1b, 0x81d68809, 0x42be9c6c,
+0xf3d37f5c, 0x7f81e031, 0x774e0c30, 0x7f8f468f, 0x9ebb42b2, 0x7f817fc0, 0x1376817f, 0x25f78181,
+0x7f8eb3be, 0x20228505, 0x229fe181, 0x81ac277f, 0x4f308129, 0xb8818111, 0x81d47fc7, 0x818181f0,
+0xc27fd34a, 0x9dbc810a, 0x8481d981, 0x61817581, 0x8a2c817f, 0xe7815625, 0x96a7946f, 0x3a7f5d5d,
+0x835f2fc1, 0xb6082dd7, 0x567f687f, 0x838181b6, 0xc663e9ad, 0x517f7fbb, 0xa570adb0, 0x12cfc2b4,
+0xc1587f39, 0xbd8140ba, 0x7f814366, 0xd00981ec, 0xc27f217f, 0x5cd1b2ad, 0x81992c7f, 0xb1b57f62,
+0x3bb9b1de, 0x9213cd8a, 0x814f136e, 0xa5c27fc3, 0x947f7f59, 0x8ef30ddd, 0xd3f290e9, 0x39bc7f8c,
+0x7f814e81, 0x5381ff22, 0x7f81f04f, 0x0adde113, 0x5b93867f, 0x687f8111, 0x7f7f1c60, 0xb856814f,
+0x7f8e8196, 0x5cfb66fc, 0x20310ab4, 0xa2599964, 0x973f0065, 0x817f95d6, 0xa43b7f7f, 0x816bb1c3,
+0x7c7581e9, 0x521770cf, 0x81456be1, 0x5e26818d, 0x3b54057f, 0xd4e231d6, 0x977f0346, 0xe777814e,
+0x81b6095a, 0x7b337fd7, 0x18bb202b, 0x219b7cf9, 0x2bdeaa81, 0x55dcd1d2, 0x8123905c, 0xe463fd74,
+0xd16ec17b, 0xd90f4e3b, 0x817fd97f, 0x817f7f7f, 0x816afd35, 0x3dd87f51, 0xa62f0e5f, 0x9f4766ce,
+0xa933c505, 0x81049129, 0x627f3e7f, 0x025ea181, 0x7b5e4119, 0x0d11aff9, 0x817faaa2, 0xe3bc817f,
+0x7fb27f81, 0xc07bc500, 0x9451c181, 0x1fc6811e, 0x7f9f9e3b, 0x7f4c1a91, 0x7f1f7148, 0x8358819a,
+0x81119a81, 0x16d55f0c, 0xc07f7f2e, 0x467f9991, 0x237f8c7f, 0x81638101, 0x2aacb9ae, 0x4f439f32,
+0xc65e96aa, 0x7f826508, 0x7fa86ab6, 0x602ddbc4, 0xd07fd00a, 0xb0e381dd, 0xca81cc2e, 0x7f7b7f15,
+0x7f81b9bd, 0x21627f38, 0xa481ed5c, 0xeee8d79b, 0x64369481, 0xb97f81b1, 0xf443d7e8, 0x50a410b8,
+0xd87ffbbe, 0x18589760, 0x814998d5, 0xc1814b2f, 0x7fc33b7f, 0xd25b7335, 0xb6b2987f, 0x988a7f48,
+0x9aa4fb81, 0x597fd920, 0x7f4e7f9a, 0x7f819892, 0x81daeac9, 0x7f538fcf, 0xac7f8198, 0xd2529c90,
+0x0ff00ba8, 0x765cb53e, 0x7f0fd3ab, 0x0d81cb33, 0x81989961, 0xc13c7f25, 0x20d6a6bf, 0x7f817fd0,
+0x6f6594db, 0xec8c68eb, 0x638194a0, 0x3b89815c, 0x81734c65, 0xaeb69ec3, 0xd20b6440, 0x2f71b6dc,
+0xc990816e, 0xb6077fda, 0x7f4cc48a, 0x816aa8e8, 0x817f397a, 0xfb8181b7, 0xe64d11e2, 0xe97f1576,
+0x10706f7f, 0x9b935d4c, 0xaf7f3547, 0x7f175ec9, 0x7632a981, 0x2f61d4f4, 0x7a597f81, 0x499e7f00,
+0x7f81315e, 0x81c4230c, 0x8cb66a2e, 0xe76a8105, 0x81817fc6, 0x7f0e50bd, 0x83ba337f, 0x81009281,
+0xcac68465, 0x617fd326, 0x893981e4, 0x7f8ed9b3, 0x59467f7f, 0x0181e258, 0x7f81b281, 0xc9816629,
+0x7fbc8181, 0x08e1cadd, 0xa8328181, 0x76b6e071, 0xb36d7feb, 0x505490d7, 0x09d5dd31, 0xba81632d,
+0x7f7f6fd0, 0x9e45813c, 0x7c4c4f70, 0xd97f5090, 0x247f335c, 0x357fbb4d, 0x267fd5c8, 0x26d08181,
+0x51447fa8, 0x81358efb, 0xb9197f52, 0x40aadca1, 0x7f6781aa, 0xaf272a09, 0x8177a4b2, 0x497fb515,
+0x819b7f7f, 0x8b817f41, 0x257f7f92, 0xa8d2244e, 0x477af9ef, 0xa8817f36, 0x5ca681f5, 0x7f1a76cb,
+0x8181c5f1, 0xc4ddc7aa, 0x81a1c2bc, 0x7f466fa2, 0x625c237f, 0x3ddd1f44, 0x4f54fdde, 0xa281f2d5,
+0x95d14e95, 0xf26e7fd4, 0x9a813a90, 0x8154361c, 0x327f7f42, 0x7fa2983b, 0xd9c28197, 0xf00d1898,
+0xb95848d4, 0x387f81f0, 0x9f8e7f4a, 0x1c5cb9ec, 0x1f63b5fc, 0x187f7dcd, 0x7f1c7f05, 0xa855e2cc,
+0x5a747f98, 0x7fa1b4ee, 0xe8e51aaa, 0x7f81ec81, 0x38818175, 0x81815f07, 0x84888181, 0x81810852,
+0x316e0060, 0x819b1c6e, 0x3d814577, 0x5ecc5d81, 0x5e81814c, 0x7f76914d, 0xfc7f814b, 0xd2819d96,
+0x70a34ad0, 0x7fd544f3, 0x71e51581, 0x817d45a4, 0x7f479a68, 0x42447fae, 0x9a974f7f, 0x817fbbd2,
+0x989f367f, 0x78fa30c0, 0xbb902e75, 0x7fda7f02, 0x7f82c5b8, 0x33c325c4, 0xdf89815c, 0x81c37f33,
+0x52f37ffc, 0x7fcc4702, 0x81488124, 0x7f548196, 0x4214a4a3, 0xa034b302, 0x6a817e04, 0xc67f795e,
+0x17a98157, 0x7f7f7f5b, 0x7f7f4c56, 0x7fe0b181, 0x7f907fba, 0x42f82fd9, 0x223ea236, 0x3d2025d1,
+0x097f81b1, 0x81a35969, 0x373cb170, 0x44a57c3b, 0x26bc5a7f, 0x34657ff6, 0xc83b3d3f, 0x99be6c2c,
+0x1c811f7f, 0x5c7f81ac, 0x33fa49f6, 0xa5c38181, 0x81ed8144, 0xc88a652a, 0x7f817fe3, 0x953cfc91,
+0x466681d3, 0x366f16d6, 0x187f2ff5, 0x077ff351, 0xbe1b817f, 0x3884ec81, 0xb17f8181, 0x9a39437f,
+0x476fac61, 0x7f911514, 0x24b0038f, 0x5647567d, 0x8143c7ae, 0x81b03a31, 0xec7f085e, 0xc10d7f55,
+0x0a50b9f6, 0x7f1fd244, 0x7f81a1c7, 0xc48148ca, 0x877fc97f, 0x81115e37, 0x827ffdf3, 0x48b741c2,
+0x7f9fc5c0, 0xf87f81ce, 0x43a1029c, 0x2a78427f, 0xff9a164d, 0x7ff981f6, 0x1b7f81aa, 0x6f48ca6a,
+0x547f7f2a, 0xa9ce5cf0, 0xc07f7f7f, 0x7f6fa54d, 0x58817fbb, 0x7f96fa32, 0xfdc18381, 0x7abd7e7f,
+0xc604b981, 0x64217ffe, 0x8893bd7d, 0x7f140281, 0x7759b9e3, 0xcc648129, 0x81c981c6, 0xaf2ba351,
+0x9ecd819f, 0xac816ff2, 0xb516672e, 0x4157ab81, 0x81d21796, 0x35643433, 0xf13d5a7f, 0x9881d003,
+0x5081bbd0, 0x7d7fbdcc, 0x6ba50d3a, 0x8170677f, 0x85b29f81, 0x8aa72210, 0xfbaaa381, 0x7f0e8f34,
+0xcf367b7f, 0xe60399ab, 0x7f7f7f01, 0x817f7f11, 0x81818932, 0xe39a6e31, 0x8d3b8181, 0x107d2bc1,
+0x908164f7, 0xe41a7fc5, 0xe944503a, 0xeb4b6559, 0x22817f81, 0x816ea8ff, 0x1557e37f, 0xaa7f701c,
+0x817f828e, 0x738106c4, 0x7e0e7f05, 0xac768181, 0x17898158, 0xc081ea33, 0x827f9958, 0x3b7fd4fc,
+0x16181f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x0c7f3a86, 0x7750813d, 0xd2b385bc, 0x6f7f7f72, 0x7d487fa8, 0x7f7f8d65, 0xb6578196, 0x4d93815a,
+0xf9a54748, 0x317d6469, 0xe0466f8a, 0xef869693, 0x3da5a9e2, 0x7f7f05a1, 0x14c68157, 0xc2148135,
+0xad9ed181, 0x7a7f6081, 0xf10d659b, 0x4a38dce0, 0x114d7f2a, 0x2bc7f79f, 0x0f7881f1, 0x423e5553,
+0x9c2b817f, 0xde7ffb85, 0xe18117ca, 0x67fd7f7f, 0x3fbbf57f, 0x9b34ad7a, 0x487a543f, 0xf06322f8,
+0x9ce93023, 0x3581818a, 0x6a7f4d69, 0xad3d627f, 0xbd812c92, 0x8be4cc7f, 0x23b47fc4, 0xc87f819b,
+0x104d6e7f, 0xcfcb8134, 0x0d8152cf, 0x467f7f19, 0x113f1ec5, 0x589bff9e, 0x457fa8c8, 0x2a1246d0,
+0x731e257f, 0x40e460e8, 0x13d3057f, 0x817c8de1, 0xc09dc798, 0xab81d4f1, 0xa1a49d8c, 0xbf50df7f,
+0xbc8192f7, 0x73aa4d5a, 0x1c817f43, 0x428fd6fc, 0xc282884e, 0xb9f67fd8, 0xd7777f4d, 0x1aa2d89a,
+0xa5537f81, 0x8878b631, 0x4bdfd881, 0x7f21b57f, 0xcd7f7f7c, 0x4d2aa1d0, 0x3e138144, 0x3c7fe433,
+0x146e5fe3, 0xa53b7f85, 0xa9537ffd, 0x819eda1c, 0xf93e2881, 0xc3814f7f, 0x018d69b4, 0xf87fa19f,
+0xb09f9144, 0x6ec23f94, 0xdf7f39c6, 0x48087f7f, 0xfc818184, 0x18815bc3, 0xc764598b, 0x11ed68c7,
+0x81df81bd, 0x7feceb38, 0xc90a473a, 0x81817f81, 0xef3a537f, 0x7f4d3873, 0xf45c846f, 0xfeb68afc,
+0xd326d181, 0x7fe4ae7f, 0x3e817fb5, 0x81c95de9, 0xbebdcd7f, 0x23053726, 0xdd8d8181, 0x1d545233,
+0xe37c933d, 0x81e52c1d, 0xc0ab2d81, 0x81e2667f, 0xcf2e70db, 0x9370319c, 0x21add116, 0xe6c34081,
+0x076912e7, 0xa781aca0, 0xd6f5a5d0, 0xa9af5d7f, 0x2e817c77, 0x81e1661c, 0xd5308181, 0xae7f6ec4,
+0x45815295, 0x2dbc2581, 0x50bde53d, 0xcd8cb1bc, 0x2e67977f, 0x32fc789f, 0x2b81ca3f, 0xef7f7f61,
+0x19a7d611, 0x81427f81, 0xe98181fc, 0xd4397d7f, 0xd9ab7fb7, 0x819c8c92, 0xd5478339, 0xf0555aae,
+0xfe09f481, 0x8128527f, 0x337f1081, 0x6dae3aa2, 0xccb67f81, 0xb1d8d87f, 0xc2d3dd02, 0x97af814d,
+0x812f1c5a, 0xc50c8181, 0xcd70610a, 0x7f555df4, 0x567f7f23, 0x0a0d917f, 0x4b81815c, 0x184a5b8e,
+0x5054c67f, 0x7f7f8ced, 0xf0b31f7f, 0x11698131, 0xe0ac5442, 0x57ffc57f, 0xb681cc02, 0xb78c8193,
+0xa629b48c, 0xf2a8d43b, 0x59167d37, 0x81818bf2, 0xc87c817f, 0xbf7f8e7f, 0xcdbc2243, 0x2ed78e74,
+0xfe817d61, 0xa3613c01, 0x25e281af, 0xbd6a7f36, 0xe57f4b7f, 0x81898161, 0x2a415081, 0x50b07fb6,
+0xe77f9c72, 0xd43681aa, 0xd07fb648, 0x3c7fbd5b, 0xa555c475, 0x8169dc64, 0x09106247, 0xf9b660ab,
+0x389542ac, 0x7fa22c4e, 0x81304e71, 0x29208c90, 0x317fa43a, 0x8281819d, 0x7f212065, 0xc0682681,
+0x3f2b5dc7, 0x87d86d81, 0x5c7f4192, 0x7f54332b, 0xc564a449, 0x7f817f58, 0x3c6576aa, 0x147f816d,
+0x4957d091, 0xbdaba3a7, 0xa17fa381, 0x49628138, 0x372f815b, 0x81676748, 0x8dba817f, 0xc89e8129,
+0x866fc855, 0x43ba4a81, 0x8f4b7ec2, 0xa47f054d, 0xc3b07185, 0x7f8d3ad0, 0x2c7f9f8e, 0xc17f27d3,
+0x33956381, 0x8e12a081, 0x7be52e32, 0x44b28122, 0xe4947f6d, 0x6eae4f7f, 0x34df816a, 0xd7938168,
+0xa7a9528b, 0x7f81ec45, 0x41857f6f, 0xbc28817f, 0xcbd67c06, 0xaeb678d2, 0x529a547f, 0x44813b6e,
+0xd44f247f, 0xbe1b9879, 0x877f4996, 0x5b9a8dcd, 0x2e558281, 0x1d817f84, 0xda7f8186, 0xdda9f4a6,
+0xe698ae70, 0x7fb54c8a, 0x0aae8550, 0x857ff8fb, 0x1ac42e8e, 0x3f27814b, 0xe27fdc2d, 0x2db1eb81,
+0xca817e5a, 0xec7f62e2, 0xc7dea079, 0x7f7a7f26, 0x7fdfbf81, 0x7fe89da8, 0xa9187264, 0xf98192c9,
+0x6af88181, 0x667e3981, 0xf97f3c48, 0x7fdf817f, 0x3b9bbc81, 0x55bfbc81, 0x096fa6e1, 0x1b75a67f,
+0x357f83ed, 0x7f7f6f7f, 0xf3b43812, 0x9d4c0d92, 0xa8817f4d, 0xb96c877f, 0x34818178, 0x5d7f997f,
+0xdb7f5c7f, 0x39b056a4, 0x33bcffaf, 0xb398b57f, 0x285a4bf1, 0xb181574b, 0xc1e56d31, 0x4b717fd2,
+0x56337f81, 0xed938157, 0x7f4b7f47, 0x49a3812b, 0x2e667fcd, 0xcd817240, 0x8b5470e6, 0xf693814e,
+0xd3e07f7a, 0x7f7a4781, 0xf44cd60c, 0xfd546281, 0xef995981, 0x81e70628, 0xd3b97f47, 0x07819aa8,
+0x707f447f, 0x9181c079, 0x72ae8173, 0x988d2a78, 0x7f814478, 0xb57fa076, 0xde7fb260, 0x17817f3b,
+0xf045c31b, 0x7f7feb13, 0xbee5d07f, 0x5f8192ae, 0x0c9381f7, 0x28817f7b, 0x985964d5, 0x81817d81,
+0xb381b799, 0x38b0817f, 0x3a887f0f, 0xf353fe81, 0x53817fdb, 0x5c814d56, 0x39b415ff, 0xc9c78c59,
+0xb2817fad, 0x5884bec5, 0xd629b07f, 0xb67f81cb, 0xcb81abe9, 0xab7f9b7f, 0x35815781, 0x85878181,
+0xb0b2177f, 0x86223495, 0x32cd7f69, 0x3c664743, 0x1d7981c2, 0x817f817f, 0x16cadc06, 0x03786a7f,
+0x03818107, 0x5a8dd1d1, 0x58e57f20, 0x7f818152, 0x444c50f0, 0x3d81810c, 0x66ae7f62, 0x39d01614,
+0xbd817f81, 0x789b7fa6, 0xadcd819c, 0xd37f8171, 0x291ebf81, 0xd5923ac9, 0xc37f63bf, 0x1c7981ae,
+0xda5e969d, 0x248c5899, 0x8fbdc4b3, 0x6c50d2cb, 0x2a5fab0b, 0xc42d818d, 0xa4776781, 0xaa6281fd,
+0x20534bc6, 0xb729727f, 0x6481de5c, 0xffc8a5e9, 0x707f25f2, 0xc674ba57, 0xe2ff9cb8, 0x02433e79,
+0x108e223b, 0x617f9cd7, 0xb5507f81, 0xa6f63ee6, 0x09b45856, 0x7e7fe581, 0xe4f8417f, 0xe11d98be,
+0x44817f7f, 0xc9c581df, 0xf7817fb0, 0xac6da566, 0xc681ed7f, 0x3249810f, 0xab55b281, 0x35e64c81,
+0x61e9b982, 0x8d8c4781, 0x4eafd663, 0x7fb8302e, 0x40a9bcb1, 0x17b17f9e, 0x817f92c0, 0xe35d2fb3,
+0x4ca815dd, 0x817086b9, 0x389b817f, 0x3c0d955f, 0x447f7f1a, 0x7f11307f, 0xada0815a, 0xafca7f7f,
+0xce48b124, 0x7fd94e81, 0x2edc81a4, 0xaa098a97, 0x14030263, 0x97813a7f, 0x8181d97f, 0x2581c9e6,
+0xe57f7f05, 0x16880f81, 0xa6e88184, 0x818490a2, 0xd5a87f94, 0x8b81a081, 0x38813781, 0x14a59a5a,
+0x486b8c40, 0x893449c7, 0x1f03d659, 0x81bb2831, 0xe0d8c66b, 0xa1bb7066, 0x1b7f8c71, 0x07815581,
+0x3820cb84, 0x8d3926b5, 0x81f27fd2, 0x46ff3a84, 0xfddc057f, 0x16d21ad1, 0xdbc27852, 0xf9817f34,
+0x7f81397f, 0x6c0f8101, 0xf22a100c, 0x7c998171, 0x4b68bad6, 0x7f588114, 0xc3465c81, 0x439e037f,
+0xd9817f52, 0xf1bd5594, 0xf93f9f81, 0x39447f7f, 0x46dca006, 0x93f30f7f, 0x6e215e81, 0x092ffdc3,
+0xad49e8a0, 0x7f4e7fba, 0x9b9c4fc6, 0x8131f77f, 0x0700b27f, 0xf0de61ab, 0x258181fb, 0xd8e8bb56,
+0x36932155, 0x9c7f2981, 0xb2bfe055, 0x7f0095b9, 0xaf73327f, 0x70817fbb, 0xb3a281d6, 0xfac08a53,
+0x24e4727f, 0xcbb5dbbb, 0x38be99fa, 0xbcb94e7f, 0xdf2653d0, 0x93df5efe, 0xfcdc697f, 0xe754909d,
+0xc6810060, 0x7f0ce4d1, 0xaec4a5ca, 0x4a7f81bd, 0xc17f817a, 0x7feecc3f, 0x2981285d, 0x3e0e6e81,
+0xab81814f, 0xbf27187f, 0x12409322, 0x1c9dc451, 0xc48e03e7, 0x64013b81, 0xb5847aa7, 0x350a1b84,
+0x27458181, 0xa1237f61, 0x9714287f, 0x817f8170, 0x1a7f7f09, 0xf07fecc7, 0xd686d4c9, 0x9abd7fa9,
+0x449dc0bc, 0xc1177f9d, 0x7f547f9a, 0x7fbd7fe3, 0xcab19d2b, 0xc981b27f, 0xdc8ba548, 0xe95304a6,
+0x22225820, 0xd29262ec, 0xf27f9f78, 0x1b94427f, 0x4738a436, 0x7f814fe0, 0x52817f7f, 0x1d818181,
+0xf8d92d89, 0x24817fa3, 0x66d6aadb, 0x4e55b9ca, 0x7f81de8c, 0x7f814e64, 0x24141e31, 0xa5232778,
+0x34e27f81, 0xdc87c78f, 0xc016dfb1, 0xce91829c, 0xe662c230, 0xda74e681, 0xcfb57bb8, 0xf18179ff,
+0xcc818481, 0x4736ed45, 0xcc6ee881, 0x3a815a81, 0x81b77fb2, 0x56816f2f, 0xe82bcb89, 0x3875ad5f,
+0xe05197e1, 0x1a7bc17f, 0x31a3f841, 0x7f90a77f, 0x1df3b910, 0x583f815b, 0x257f814c, 0xee7f7f8e,
+0x7dbdc37f, 0xb6810a1c, 0xce816d85, 0x459bf72d, 0xd4fe0481, 0x0d49024c, 0xbfa3a055, 0xed9baf30,
+0xf27f7f7f, 0x7dd24f9b, 0xc481817e, 0x7f899052, 0x074d5bdb, 0x2335c3fe, 0x00759f7f, 0x251bacbb,
+0x147fc935, 0x0b180994, 0x9f7fa637, 0x387ff150, 0xcbac8967, 0xf37f60cb, 0xe4c216be, 0x7829816a,
+0xd7b89981, 0xf8ae2592, 0xbeca818c, 0xf3817a81, 0xc681017f, 0x2f2f2e8f, 0xfe577f1b, 0xd503d778,
+0x2d7f7f67, 0xb281c0f0, 0xf7d7812c, 0x817f9598, 0x1af6fb36, 0x157f3781, 0x5e31a27f, 0x038181ae,
+0xf9fb81ad, 0x7a8eec81, 0xc8652e7f, 0xc67ba487, 0xbfce7f7f, 0xdf02a27f, 0xf9c1813d, 0xcaac0f90,
+0xdc448181, 0xb17f921f, 0x99be8181, 0x7fc09993, 0x11ad1bc3, 0x5c7532bf, 0x25a8ce28, 0x0ab6a823,
+0xc3c29055, 0xad55b6ea, 0xed81e0dd, 0x8caa6553, 0xff817fc8, 0x7f70d513, 0x433671dc, 0x5db37f6d,
+0x7f318170, 0x55bd4dd5, 0x00c181b7, 0x41c3bb90, 0x441a818e, 0x84e78140, 0xad8a2c81, 0x2bc38158,
+0x82654c81, 0x29d6600e, 0x227f7fc8, 0xa43d577f, 0x2b8364a3, 0x144e2a57, 0x07817f1c, 0x4a8171cd,
+0x47d5a981, 0x3c7d0781, 0xba636c7f, 0x2c7a7f7f, 0x90cf187a, 0x6b4c3671, 0x3a2c436d, 0xef81de81,
+0x4a828117, 0x814dabc0, 0xf930e17f, 0x4c3265c0, 0xe5ef7a7f, 0x819b8504, 0xd5427f81, 0xd881e992,
+0x946a45fe, 0x310162a7, 0x14819c81, 0x7f817f4a, 0x552fcf42, 0x7f707f18, 0xb9dc4881, 0xa17f81c2,
+0x9e476d98, 0x7f7f7ff0, 0x37662d4e, 0xdb7f99cc, 0xf9fe8cc1, 0x1f4c7fd1, 0x3588817f, 0x547abea9,
+0x356e7f7f, 0xab1e857f, 0xda0e7f5c, 0x9d777f7f, 0x451f1bb6, 0xa82e087f, 0xb71d347f, 0x0916d881,
+0x177e817e, 0x7f5a66a4, 0x237f2e6e, 0x816dafde, 0x2f8124c1, 0xcee67158, 0x067f667f, 0xe1258187,
+0x3a3165f7, 0x1f7fac81, 0xf636364d, 0xf2818e36, 0x0b9e207f, 0xed2d7e81, 0xaa6e2281, 0xcb50b6a3,
+0x237f72c6, 0x95819fa0, 0xd7d0c888, 0x39988141, 0xc8b07f8d, 0x5a43c942, 0xf3cd687f, 0xa2e77aec,
+0x9909bb1b, 0x7ff8e681, 0x5d39837c, 0x5625817f, 0xa9738110, 0x8b604bb2, 0xf3ffa881, 0x5f359eb5,
+0x07bf7f49, 0x7f63c67f, 0xc9db7fcb, 0xa65881c5, 0xf2818130, 0xa5817f81, 0x26b4174f, 0xc06f817f,
+0x3b8181c2, 0xbfeb4d6f, 0x9e857f91, 0x58a9a1b7, 0x67147fdc, 0xcd257081, 0xb78d4081, 0x3749ebb8,
+0x22ac7f89, 0x4af84134, 0xe3f97943, 0x2d8187c6, 0x027c8181, 0x81c1bfef, 0xc32b2267, 0x42257f81,
+0xb49b3eb3, 0xa3d47fc2, 0x27ff4d81, 0x69b4a46e, 0x81818181, 0x7fd5817f, 0x00a97d91, 0x10897f7f,
+0xd87f0d3b, 0xcbec8b7f, 0x7f814de6, 0x8286209d, 0x06e2bf7c, 0x81e28881, 0xae64afdd, 0xabc5667f,
+0xee22bee0, 0xe157d171, 0xb39a5bd6, 0xabb6d1c0, 0x53c19d81, 0x447fdb81, 0xfc086996, 0xd65f0481,
+0xc87f4d35, 0x313a12db, 0x5d81a1a0, 0x01231072, 0x327f81d6, 0x7eb1ba7b, 0xe9485dad, 0x5781767f,
+0x047f2481, 0x817f5b50, 0xda064bd7, 0x7ff07b3c, 0xfde4a68a, 0x7f83816b, 0xe67f7f34, 0x1a56f181,
+0xe2bbb681, 0xe4687f74, 0xd5a20bd8, 0x81d581a6, 0xb2395342, 0x977f0fa3, 0x81e3b5dd, 0xf1cd8147,
+0xe34f48a1, 0x258142c3, 0xe24d510b, 0x46d6816a, 0x2a608ae6, 0x5781ef81, 0xcce97f0d, 0x677f7f81
+
+input1 =
+0xaa2381bc, 0xbde77f4d, 0xefa38185, 0x81a67f75, 0x6cceb856, 0x4976bb25, 0x3efc977f, 0x86cdf691,
+0x13497f81, 0x7fe7730a, 0xd71d8163, 0x8c7f7fbd, 0x1bec817a, 0x8154b897, 0xc71e45b6, 0xbed568c3,
+0x256c6514, 0xd481af7f, 0x19ad697f, 0x817f745f, 0xd27fa187, 0xd5e769d9, 0xd816cf7f, 0x1aa4815b,
+0x035e7ff6, 0x85de810b, 0x3ea73657, 0x216281b2, 0xe48144b7, 0x3277dfe8, 0xf8c57f20, 0x907f5091,
+0xf481b081, 0x9d8152cf, 0x0e6a81c0, 0x7fff7f06, 0xf8884d81, 0x687f81b3, 0x2657ba35, 0x527fc24c,
+0x9945694c, 0x1faa4e5b, 0x37819334, 0x57f52a7f, 0xec7f817f, 0x817fa0a8, 0xe3a8818a, 0x16beacdb,
+0x2ad2b97f, 0xb981245b, 0x359a8181, 0x7f97265e, 0x9de4387f, 0xed7f058a, 0x0e817f81, 0x4e69bdb5,
+0xc5e38552, 0x77482e81, 0x6c817542, 0x447f2990, 0x07b1f9dc, 0xc4247f82, 0x077f7f81, 0xe58bdca6,
+0x55e07f74, 0x0e7fe47f, 0x04883e81, 0x4981f87f, 0x7d7fce29, 0xe07f7d7f, 0xee817fa6, 0x7262da81,
+0xe158813b, 0xe35e41b9, 0xf17f6d65, 0xef7560ea, 0xae408493, 0x97812300, 0xf29f816e, 0x557fd5aa,
+0x328bb778, 0xa27f7f25, 0xde7fb5cb, 0x03577f0b, 0x577f18a5, 0xb9816d20, 0xe28d2a7f, 0x248c7fb9,
+0xff5fb965, 0x93b27f9c, 0x2d817581, 0x41958195, 0x3a7ff044, 0x7f7f6faa, 0xdb81b784, 0x5081603d,
+0x363ff38d, 0xc747d8b3, 0x537f812b, 0x8176a97f, 0x1d8181d3, 0x81811929, 0xe893d4c7, 0x3c7fcf7f,
+0xf6385c81, 0xaa63b42e, 0x81c3a781, 0x488142a7, 0xcbef89be, 0x3f748159, 0x50c52932, 0x298198d7,
+0x14c68e7f, 0x7fd8a798, 0x085a632f, 0x7f1d7f7f, 0xb2e34289, 0x88c3b262, 0xb044817b, 0xbf7f238a,
+0x5ae6b554, 0x9e833081, 0x607f985d, 0x0203226c, 0x333f63fb, 0xc77f8181, 0xe8297f7f, 0x9dea7f33,
+0x6f2e1f54, 0x2e41327f, 0xff0f7f81, 0x7ffa7f30, 0x343f74a6, 0x81f59f81, 0xaac67dbb, 0x6f81da1f,
+0x79ec8153, 0x78eae674, 0xec7f6e71, 0xa46a48bf, 0xe5810efa, 0x0f41b9a7, 0x3a1124a5, 0x5ff97f7f,
+0x0bd5be75, 0x7f8181f0, 0x242f409e, 0xf47ac606, 0x1e96d94f, 0x43a66a81, 0x18fc815c, 0xa51a7f7f,
+0x1185d27f, 0xa00c810f, 0x078ae481, 0x71d7866c, 0xd47ff796, 0x813cf240, 0x45814d48, 0xbc6c3618,
+0xa8b937ea, 0x838e7f7d, 0x19b3817f, 0x7f73be95, 0x00fa46b3, 0x4c43655a, 0x20f67fc2, 0x98fdda7f,
+0xe879817f, 0x4c9e7f2d, 0xcd7fefc2, 0x9681a909, 0x1e59e7b3, 0x35818136, 0x9e3a977f, 0xaf7f207e,
+0x9633227f, 0x44450e81, 0xc2c25f7f, 0x7f1a3f81, 0x08acf783, 0xd083a838, 0xd2627f59, 0x6d327f32,
+0x362c2b5e, 0xee8e507f, 0x48b431c5, 0x00816381, 0x1e6c1150, 0x7df48149, 0x36f94f81, 0xc5667844,
+0xf7cbf52c, 0x520081b8, 0xc6967f7f, 0xc88981b8, 0x328181ee, 0x697fa9f2, 0xc99a7f81, 0xb5a08181,
+0x1d74dc89, 0x643ab5cb, 0xeb81f9be, 0x987f277f, 0xad38747f, 0x61778c52, 0x59817de7, 0x05ae8144,
+0x217aa1de, 0xc0817fe9, 0xa1a6b4dc, 0xece08189, 0x4118207f, 0x9a8181a8, 0xcf0f81c9, 0xba81d081,
+0x138181b8, 0xd537957f, 0xfc7f9b8e, 0x7fc9607f, 0x16c085fe, 0x81fa7fb6, 0xf7847f66, 0xc20ee0fd,
+0xf983ec97, 0xce209f7f, 0xe2815922, 0x39b07aa8, 0xd3a82353, 0x6ee38287, 0xc60d7f29, 0xcf478f57,
+0x594d731b, 0x0e8c42fc, 0x6a702ce3, 0x7b81b301, 0x3181a450, 0x7fe94481, 0xe581b66f, 0xd87f7f2a,
+0xc1b385ee, 0x81816964, 0xbb7f5093, 0x8151817f, 0x51e3547f, 0xb3fa7549, 0xca81b044, 0x258143bf,
+0xb18181c8, 0x7f54eb08, 0xd4c9db57, 0x68a981b2, 0x4ef17f69, 0x917f977f, 0xda38865e, 0xe97f3e5f,
+0x0bbc63dc, 0xec34daaf, 0x1dc38186, 0xb381810e, 0xcbacafd2, 0xdb3ec56a, 0x22817381, 0xbc44cc4d,
+0xd681d0b0, 0xe614c8a9, 0x53577f7f, 0xdabc3012, 0x353ecdc2, 0x81728179, 0xb660cf7f, 0xef49ca49,
+0xc645dd7f, 0xd16a7f81, 0x1fb99d7f, 0x7d36d57b, 0x04ce7f46, 0x602adede, 0x1142cbb1, 0x60de427f,
+0x29814ccb, 0xe9ad7d99, 0x127b2881, 0x5c5aa08f, 0x38c0db9f, 0x7f76d981, 0x63b32381, 0xdd41ce81,
+0xce14e57f, 0x74ed7398, 0xdd81e6eb, 0xb6f2d581, 0xa581b77f, 0x468c81d7, 0x5f2d88b8, 0xf481fd21,
+0x6ec1e381, 0x71568485, 0xcbfa7f6c, 0xa02e0c9b, 0xd9a09a7f, 0x813d8176, 0xcf43c52b, 0x31a8bca1,
+0x2432dce5, 0x78277f94, 0x474e592e, 0xdefb7f81, 0xff147f51, 0xbb7f3858, 0x25f1e591, 0x36fad833,
+0x0ac87f39, 0x815d9781, 0xaebaaa81, 0x4981815f, 0xd7817781, 0xb44838b5, 0x32626981, 0x417fe2f6,
+0xdf638c92, 0x8624067f, 0x4432e69f, 0xd8688a7f, 0x06815215, 0x25bbbb7f, 0x5b5b6f63, 0x417b5b81,
+0xcc4a7b7f, 0x6ea47fd3, 0xe866b481, 0xc630c9aa, 0x083781ed, 0x69de817f, 0x0381f9f2, 0x84812ce2,
+0x027f4dd9, 0x7f5a9e81, 0x00ea319c, 0x222b9a9b, 0x34a143f0, 0x7fefd1d0, 0xb4947981, 0x11474bc1,
+0xcd44df7f, 0xa2878439, 0xd6f040b9, 0x6f86817f, 0xc67f7f81, 0x7f693443, 0x8d21b1ce, 0xdab1aed5,
+0x3f17ae71, 0x45b7ba7f, 0x05229255, 0xb181d8f5, 0x688681e3, 0xea81e181, 0xf57f817f, 0x7fdc5881,
+0x6e817f7f, 0x817f537a, 0x3987247f, 0x300a7f05, 0x3128057f, 0xe731b77f, 0x4881b50b, 0xb86dae65,
+0x00c015a0, 0x81397552, 0xb9bcab24, 0xf5818181, 0x57d18190, 0x81c3648d, 0xed813a67, 0x4c5d3a06,
+0x3581a4e3, 0x64db6467, 0x21af7d27, 0x5adf7f57, 0x66d9c99f, 0x5b183375, 0xbf4c41e5, 0x577f7ff0,
+0x4e818181, 0xf295493c, 0xd2c28170, 0x5c3a7f8e, 0x09c18181, 0x7f7f7f9c, 0xae675fa9, 0xf6d781a4,
+0x66ba10dc, 0x7f882981, 0xfe7f7f7f, 0x7f7ffea4, 0x2798d845, 0x899cb6fb, 0x4982bcd9, 0xc0815ab0,
+0x558181aa, 0x52110702, 0xd179e3c5, 0x482923bd, 0x187f8181, 0x81b3f6d9, 0xfd96a581, 0x2c5d1a81,
+0x6fde23dd, 0x9e815063, 0xfba49bcc, 0xfa775f4d, 0xb1b8b681, 0x81894f1b, 0x3c8163fa, 0x2d7f3d81,
+0xc57f6681, 0xbd7f7e81, 0x137f7f81, 0x6b3d6f81, 0xe5e2610d, 0xb4683186, 0x7f6e817f, 0x90c12abc,
+0x13a3502a, 0xdddeaa8c, 0x07a67f79, 0x1a5481ce, 0xb87fb01b, 0x0a4b1e7f, 0xd77ffcb7, 0x03535781,
+0x5a5f697f, 0x02ca7966, 0x379638bb, 0xc507c941, 0x5e7fdf8e, 0x7ce0c99b, 0xa162ccfd, 0xff8196cc,
+0xd43aa081, 0x67798185, 0xd6277f2e, 0x7f6dcb7f, 0x217fcd76, 0x2c88fb91, 0x06815b8f, 0xe37f7dae,
+0xe937257f, 0x648181ae, 0x21652c4f, 0xbf81685b, 0x36abe921, 0x3cb5de30, 0xa88e8162, 0xd87f812b,
+0xb981d14d, 0x75c181a7, 0xf7c08aa1, 0x57904e7f, 0xf6f688d8, 0x7fcf6281, 0xd33dbf7f, 0xc07f9a73,
+0x197f8135, 0xcabf8bc6, 0x3f81c37f, 0x487fac4f, 0x8ddc924b, 0x50257f7a, 0xf75e1496, 0x28d2d48f,
+0xcd91817f, 0x2a7f81b2, 0xbd7fb67f, 0x3b877fe1, 0x407fd8fd, 0xbc815f20, 0x7f50e581, 0x8bdfae4d,
+0xb1eb7f81, 0x07819f40, 0x3765274c, 0xde7fd081, 0xa0817f7f, 0x8dbe5081, 0xfa436f7f, 0x4848463b,
+0xc5c45cdb, 0x7f8b1865, 0x5bf381b6, 0x45aa497f, 0x7f813694, 0x54f15918, 0x72886c49, 0xe3fb31b0,
+0x0db1a582, 0x4aadce1b, 0x39926d8b, 0x9a30a85f, 0x1b606181, 0x1c6d165b, 0xfb057f4b, 0xcd7f81ec,
+0x12bf7ffb, 0x7f5f91d4, 0xca8158b7, 0x86134234, 0xf0f17f3c, 0x7f4e05c4, 0x34814f7f, 0xe5c1106a,
+0x2d50c67f, 0xb57fa18b, 0xb7816481, 0x7fffaadb, 0x607f817f, 0x5048ea81, 0x82495d02, 0x17819b7b,
+0xaba67981, 0xb5817f7f, 0xee57a2b6, 0x3591a602, 0x2885a153, 0x429ba160, 0x757fd0f5, 0x344e9d7f,
+0xc77a7f8d, 0x2a7f8160, 0x3198b27f, 0x81c552bd, 0x0374e058, 0x31605de1, 0x40d0817f, 0xb281a37c,
+0x156ce27f, 0x91893090, 0x06f58181, 0xc4487f6d, 0x0a7f7f9d, 0xc3a17141, 0xc03c39c5, 0xb581b2b5,
+0x526a7f7f, 0x7f7f7f4e, 0x7fec7f7f, 0x95cead7f, 0x161ba8d2, 0x8ad0d081, 0xe4f19557, 0x5bb6fca9,
+0x2d813a6d, 0xddbb7f81, 0x1cb1e281, 0xc2b43734, 0xd07f4641, 0x7f81bb39, 0xae9b1b81, 0xbe817f36,
+0x1caf7f81, 0x7f704922, 0x108f777f, 0x81662d7f, 0x479ca35b, 0x818513c2, 0xa41d8607, 0xd081b235,
+0xf6817fcb, 0x7f015960, 0xadb15f5b, 0x81be2abf, 0xf2b0e29f, 0x81819224, 0x38a7407f, 0xc9817b09,
+0xf307556c, 0x7f818181, 0x0281817f, 0x3fce810c, 0x18b47cd4, 0x81e2a53c, 0xe359840f, 0xe27f81ad,
+0xa1665081, 0x7ae062b6, 0xe0b27f35, 0xcd376e73, 0xd9a6d373, 0x817ffe7f, 0x02810946, 0x06498116,
+0x9b7fbb1b, 0x8d2b812a, 0xff14f781, 0x937de081, 0xb77ff44b, 0x4b2732c7, 0x0720bd96, 0x9e647f13,
+0xb831d474, 0x811d8183, 0xa5db837f, 0x8aa1b04a, 0xd4377cfd, 0x7f814241, 0xee8fec39, 0xcc81d881,
+0x2e29d770, 0x7ff76366, 0x7fbd363b, 0x74bbd13e, 0x2e817192, 0x9f6b81db, 0x44913bb3, 0x327f0de1,
+0x2d7f8881, 0x54f2afaa, 0x107f513c, 0x4c8191d1, 0x117fe67f, 0xffa21764, 0x2c931727, 0xd09ba693,
+0xf74e4882, 0x51ed8bc6, 0x3a23d683, 0x47437f70, 0x7fad8181, 0x9a610813, 0xa57ff47f, 0xbe1b5b9a,
+0xf4bf8c33, 0x43074944, 0xe4ef729b, 0x1e7165d6, 0x74e081c6, 0xe281810c, 0x2a4b81e4, 0x10ede221,
+0xc8375d7f, 0x81c07f81, 0x49cb7f83, 0x5f589c22, 0x276441a9, 0x7fe67f0b, 0x4d7f1d7f, 0x1872814a,
+0x05b6a577, 0x8140fa5d, 0xe47f9bc3, 0x44166064, 0x73896729, 0xb5c0867f, 0x247f445f, 0xccc92994,
+0x29611b37, 0x27531258, 0xeac27f9c, 0xd43f4e7f, 0xc27f170f, 0x6d9bfc37, 0xfc819181, 0x077f598a,
+0xe0c5d398, 0x7f23182f, 0xed171743, 0x20bff85d, 0xb0d0be7f, 0xb8938149, 0x45017f32, 0xcf2cc65d,
+0xdf7fc481, 0x7f380777, 0x81b8f0dc, 0xf6696596, 0xff007f29, 0x896e1abf, 0xfaac2d81, 0x5bc357ba,
+0x6a397f2e, 0xbfaeb45a, 0xd64e2b7f, 0xe49b4587, 0x565c6c51, 0x7f206a7f, 0xc381540b, 0xfc3d7f73,
+0xd4ec9f39, 0x887b7f27, 0xe3c1e07f, 0xb721523e, 0x0310819f, 0xc0c793ce, 0x387da141, 0x814f61ac,
+0xd1347fbe, 0x19244c1f, 0x8d3d58f9, 0x813a7fc9, 0xfae27f54, 0x7f39f481, 0xe37f818d, 0x034632d9,
+0x5b06c07f, 0x65ab8b36, 0x127f34b5, 0x18a681ad, 0x73510e20, 0x2f2ffa85, 0x6814ca9e, 0x5b7f7ead,
+0x08da93da, 0xc826da54, 0xc1686fd2, 0xb6f00fbc, 0x28bb5dbb, 0x7fe5297a, 0xb5ed8181, 0xccd9067f,
+0x177f1561, 0x71b41a19, 0xd9817f7f, 0x505b50c5, 0x309dc978, 0xb97f4f81, 0x4e81c219, 0x2d81d04a,
+0xdf3d5fa1, 0xfc6e5c30, 0xf7869481, 0xfc81e47f, 0x67b5817f, 0x7f72577f, 0x2c938136, 0xd576ad7f,
+0x63beb36f, 0x7fb3817f, 0xce56ca81, 0xd801e58d, 0x425f2522, 0x8a25817a, 0xdc7673c9, 0xd7b57fca,
+0x927fbe2a, 0x149b9881, 0x9ad781a9, 0x214b9d4d, 0x2dae1287, 0xfa772ca4, 0x3b7fdd35, 0xf59e4174,
+0xad3a28f5, 0x8144698d, 0x1ca792df, 0xdb7c7fd1, 0xe96d497f, 0x567fa7d9, 0x489b70cb, 0x3442de7f,
+0xa2554c37, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x4dc76c95, 0x29b78ec8, 0x3d927f7f, 0x307f93c2, 0x8181da7f, 0x99f741df, 0x6e1d417f, 0x1bbda834,
+0x954b5a9f, 0xc6817f07, 0x7fc01005, 0x3b5a81e4, 0x73cd7f5b, 0x7f817f3c, 0x8e7f812b, 0x59d48a03,
+0x982475ef, 0x65a1c068, 0x400cc79b, 0x81f231fe, 0x840329e0, 0x1f6054eb, 0xf8813d3a, 0x7f4a9296,
+0xbff677c5, 0x7f3c6f0c, 0x7f2890cd, 0xe0aaaad6, 0x81ae9428, 0x7f8117f1, 0x7f097f88, 0x7f27cfcc,
+0xca67205e, 0x815f7f37, 0x7f0ac07f, 0x717f95d2, 0x7f9232a7, 0x2bb803d4, 0x3c12c7e7, 0x937c81ea,
+0x7f1cdd3b, 0x0622b6c0, 0x62d71247, 0x811cb00b, 0xaef9e981, 0x0f818ff5, 0x740e6f53, 0x30616410,
+0x81fed3e0, 0x49167f3a, 0x4577315b, 0xe49130fa, 0x817c7f23, 0x7ffef7ec, 0x4fb47f17, 0xb365b1f8,
+0x81a09c38, 0x7f818134, 0x9568e717, 0x4ead1921, 0x8ebd9806, 0x7f911cf8, 0x8c7f5efc, 0xf29114a8,
+0x90bc6ae9, 0x0b5f26c1, 0x81bc9281, 0xf0fb5532, 0xc89ab77f, 0x7ec0b9d4, 0xf00bdcf7, 0x7f7f7a24,
+0x097ff51e, 0x64d62dfc, 0x7f7f819e, 0x34c05cc3, 0xa2957f19, 0x81101e05, 0x7fd68181, 0x1dff81af,
+0x7f81dc24, 0x7b3c6769, 0x7ac490dc, 0x814032c5, 0x9d81747f, 0x7fb46342, 0x72607faa, 0xd40c8161,
+0xa5ab574f, 0xf0838bba, 0x33fd7f47, 0x289f81be, 0x817f480f, 0x4bfa552d, 0x8ca1d5d5, 0x817f492b,
+0x418125e0, 0xe45d5af0, 0x811b1751, 0xe04d81f8, 0x7ff2917f, 0x65811a53, 0xe65da37f, 0xbafdd439,
+0x53818189, 0x752c7ebb, 0xc301567f, 0xb0816f27, 0x708166db, 0xc0b57f49, 0x3a818169, 0x4f16189c,
+0x13d6e83b, 0xd258a20d, 0x7fadbdb2, 0x7f93560d, 0x81fd5399, 0x6014dab2, 0x9cf45f1b, 0x107f71d5,
+0x352e8109, 0x5a5d6efa, 0xb458ef47, 0xb4a96098, 0x7ab91c37, 0x81bd762e, 0x816cb0d7, 0x3f9819d4,
+0x8113b97f, 0x7f09fa33, 0x9e7ffa99, 0xe98181ce, 0x4ffb3064, 0x7f0681ea, 0x81ef06ad, 0x385abdf5,
+0x1414457f, 0x18dabc5a, 0xc27e0d7f, 0xd87f8115, 0x703f7fcb, 0x300b7ff1, 0xb081f55d, 0x024d78f8,
+0x72949a16, 0x90603c38, 0x7fba6fd4, 0x4820e44f, 0xd57f81af, 0x9c7f7ef9, 0x61c6b27f, 0x81b6141f,
+0x7c52514a, 0x5f817f78, 0x668119a7, 0xe441aa7f, 0x53819553, 0x7f721521, 0xbd7f7f17, 0x593081de,
+0x8b252de8, 0x7f7f81c1, 0xaca9436e, 0xb5e0b104, 0x81e49d81, 0x75b48102, 0x5c278118, 0x9f6c36c9,
+0x509481fa, 0x53d1e640, 0x52108181, 0xeb7f7fff, 0xde417381, 0xa781cb33, 0x4fab55f4, 0x3e7d75f1,
+0xf17f0c1a, 0xe8e1817f, 0xcf1f7f81, 0x96d8ba40, 0x1318fc72, 0xd7ae3d1d, 0xf7e88126, 0x32bfe432,
+0x453f694b, 0x7f7fbab6, 0xeae7de30, 0x3d81d7d1, 0x438d9cc7, 0x387f4a05, 0x7f46ab81, 0x635bdf10,
+0xc281ae24, 0xc5c67fc4, 0x81acb53d, 0xba4f4d04, 0x424f72cc, 0xbf7faa1f, 0x55de1de8, 0x81429a1d,
+0xdec94147, 0xff007f42, 0x3fa74821, 0x0cb74e9c, 0xff81627e, 0x6343810f, 0xf7393529, 0x7f44ad81,
+0x7f811f39, 0x81e981a0, 0x8c8c4421, 0xc4819190, 0x81816881, 0x7f7fd234, 0x3688c16c, 0x9c34b357,
+0x6046e3f6, 0x86123bdc, 0xbd45957f, 0xe6cd777f, 0xe0951ce7, 0x9b7f63a6, 0x817f29c1, 0x7f5a81ca,
+0xde7ffcbe, 0x812c3207, 0xa099537b, 0x2a2f81d0, 0x16817f9a, 0xbb81817c, 0x7f81e538, 0x957a4200,
+0x81753bab, 0xaf63a506, 0x3081691c, 0xb0a47f2c, 0x0f157feb, 0x8e4330fe, 0x635b8189, 0x7f81ee34,
+0x7f40caae, 0xbce88e05, 0xabb52199, 0xd2ba102f, 0x7f7f8173, 0x810b32ab, 0x2e222781, 0x7f819951,
+0xfbc73dca, 0x5d81d181, 0x7fb09d81, 0x7faa3098, 0x7e81435b, 0x61e995d6, 0x7f7974f3, 0x7fef81f9,
+0x402faba7, 0x7a647f3c, 0x815c6826, 0xba2b2ffe, 0x7f095b7f, 0x7f9236b9, 0x9953636b, 0x344c64d2,
+0xd784acc0, 0x7f818426, 0x61ab43f8, 0xd5813c70, 0x7f817f81, 0xc9867fa8, 0x6f4b4181, 0x3881b1df,
+0x69813f27, 0x81d0780c, 0x17c84a36, 0xbf908ccc, 0x7f5e812b, 0x317f7fea, 0x7f817881, 0xf731c537,
+0x7fb221e7, 0xbae09bf7, 0xcc5d947f, 0xcfc13926, 0x6e0db67f, 0xdf17be28, 0xcaa4ea2f, 0x9870810f,
+0x357f701d, 0xa281815d, 0x91497468, 0x5fbcbeb0, 0x7fd54d81, 0x7d5e91f3, 0x8d6555f9, 0x35d416e3,
+0x9a7f8c11, 0xd875779b, 0x6b7c6681, 0x24f77f50, 0x288bd781, 0x7fad2b50, 0x637f1a23, 0x527f2ea7,
+0x277f7fc3, 0x819c13cb, 0xe1bb65f1, 0x48151c1b, 0x8e7fd27f, 0x7f7065ac, 0xfe0bb14d, 0x588e7f0c,
+0x819d7f34, 0x81c455a5, 0x4f6b7fae, 0x7fb56506, 0x7fcfd5a2, 0x3e6981dd, 0xcc814569, 0xc5fb811a,
+0xc0e07fbc, 0x817f8153, 0xac356315, 0xc94db6d8, 0x7f88e57f, 0x81e57fd0, 0x7f1f6c0f, 0x78d581e1,
+0x7f2137f6, 0x1c57815a, 0x627f55c0, 0x69e4dbcb, 0xa68181c3, 0xb9907fea, 0x55897fa0, 0x7f54a91d,
+0x3e7bb314, 0x7f167f5f, 0x75cc8181, 0x177f2fd0, 0x6d39f7e9, 0x7f817fd3, 0x7f6eb0ea, 0x817fc7ad,
+0xae5b5b04, 0x86cd281f, 0x3528fe7f, 0x87217fff, 0x87860479, 0x8b7f4510, 0x7faa816c, 0xb9d62c33,
+0xdd1c6ccc, 0xb48104fd, 0xbf508f81, 0x34994944, 0x8181b843, 0x74e47f47, 0xc6baf38e, 0x624b06cc,
+0xfdadfaeb, 0x948189ac, 0x7f7f992d, 0x813edf00, 0x81c3587f, 0x5eb2819f, 0xcee54cef, 0x277f38d9,
+0x8a187fb6, 0x9736ed05, 0xed70487f, 0x4f307fa9, 0x81ba975e, 0x81dd81ed, 0xd0da7f88, 0xf24881cc,
+0x12e656d0, 0x7f9b6a1f, 0xcf7fcf7f, 0x78787ebd, 0x7f8319f2, 0x7c7fe9ed, 0x29b381ae, 0xfa4f81cb,
+0x13cc81e2, 0x9a2aa0a8, 0x817f8112, 0xfda22318, 0x7f65e85a, 0x727f6812, 0x7f814b0b, 0xcfe2bcd5,
+0x6b816ce3, 0xb2965ab7, 0x819981bf, 0x73799635, 0x82854b71, 0xbc3e8132, 0x91c714a2, 0x81817f2e,
+0x2cc55af1, 0xb87fb038, 0x7f7f1718, 0x02ba14fe, 0x5e348128, 0x817ff97f, 0x81d03daa, 0xde37813b,
+0x443781c0, 0x0e4e32e2, 0x85a7ad81, 0xba276c16, 0xb61ed9c6, 0x81ca27d3, 0x7f762e7f, 0x4181d581,
+0x7f7f5508, 0x6eb1b250, 0x5ad47f4a, 0x7fd56756, 0xbc817f81, 0xd481a9ba, 0xf8a74db3, 0x7d1aae25,
+0x81397f36, 0x7f62a402, 0xab3b3081, 0x4c45c301, 0x3eb57f88, 0x6d2e7fdd, 0xeb1ac681, 0x813881c0,
+0x7fd127b4, 0x67e57f90, 0x4fcb6d3a, 0xc566afe7, 0xc58bdb7f, 0xe0486a7a, 0x363f8181, 0x7fdd8191,
+0x67149cc2, 0xfe7fcf00, 0x7feeb9dc, 0xccabbd95, 0x7fab347f, 0x98eda0d8, 0x7faf81a3, 0x3b8c7f0a,
+0x1c387fa7, 0x7f055ed9, 0x567fbd7f, 0x4d7f7244, 0xbb8175af, 0xef7f7f5f, 0xa9a58119, 0xada9eec7,
+0x592da3bd, 0xb5a98177, 0xe17f813e, 0x94816af7, 0x69ec7fc5, 0x7f29dd4a, 0x9481c981, 0x5d3198da,
+0xf84e81bb, 0x41817f7c, 0x7fb31b60, 0x7f7f5e03, 0xea81c490, 0x7681571c, 0x9b54b581, 0x812d993b,
+0x7fefd381, 0x7f907fe3, 0x7f81a862, 0x758181bc, 0x46d6507f, 0xae81a50a, 0xd1562a1d, 0x3dcb58d2,
+0x489e40fd, 0x7f8fa98a, 0xb07f7f81, 0x238b7b40, 0x49686384, 0xca817f4f, 0x607f7fd7, 0x3a0d81ab,
+0xb0fa42e3, 0x7f81563d, 0x829a817f, 0x51d48167, 0xcc817781, 0xd54f5638, 0x7fee1218, 0x81a49e22,
+0x0081ec2f, 0x5f5eecf5, 0x6bbc9ce7, 0xa28138d6, 0x86811081, 0x7f0283cf, 0xfff67fb7, 0x81c2814a,
+0xc7817f52, 0x85818146, 0x8781a77f, 0x8181e9f6, 0x4731f881, 0xf51a35d8, 0x236931b2, 0x6eaefadb,
+0x7f81c61c, 0x947f3d7f, 0xbcf43b52, 0xd5814849, 0x17b6e07f, 0x7f6a81b6, 0x817f8163, 0x817f595f,
+0x7fa5ae33, 0x2b63a90a, 0x77627e81, 0x81816660, 0xae7f6281, 0x26c6dedd, 0x757ff9c4, 0x7f7fce30,
+0xab9d7800, 0x68fc444b, 0x3d7ff681, 0x93264a1d, 0x81361db5, 0x817fb6d3, 0x1681136f, 0xc5655027,
+0x792781e2, 0xeaada9c7, 0x34d1817f, 0x81687fc6, 0xa88d451a, 0xdce97f0d, 0x443935cd, 0x810a68b9,
+0x73ef4023, 0x66372979, 0x9a31076e, 0x81813dee, 0x56b11a7f, 0xc76a81da, 0xe0e48181, 0x6681b8b7,
+0xa99858ec, 0x7fb38de5, 0x7f6f817f, 0x92168381, 0x53819b02, 0xc3c27f2d, 0x5299d77f, 0x81e47f60,
+0x687ffbc6, 0x7f5f9df9, 0x0ab4c09d, 0x44856927, 0x5e63405f, 0x7f9fe864, 0x8c884d25, 0x794dd01f,
+0x7f81fb68, 0x31bed5f5, 0x3e658638, 0x3e7f8151, 0x7f7ba8e4, 0x7f304a8b, 0x37c18157, 0x7fb2c6fe,
+0x7fa39bef, 0xa37ff9a1, 0x29983fc2, 0x777facc9, 0x547ff37b, 0xe6815b17, 0xec5a457f, 0xacade303,
+0x7f2603dc, 0x697fcd23, 0x7f7fd042, 0x4a81a54d, 0xd481bf87, 0x7f4e7f0c, 0x0d5c9d05, 0x26ca3c2c,
+0x4f817fe3, 0xc9368b0f, 0xaddb8181, 0xc210e075, 0x248f7f81, 0x697f7f11, 0x817f2f81, 0xef697ff1,
+0xd98181b9, 0x810a4f50, 0xbb9e045a, 0x8ea3771d, 0x787f6931, 0xfbb9812d, 0xb778f981, 0x7f354b27,
+0xfc813658, 0x25818137, 0x7f3402a1, 0x27eabd01, 0x81c18181, 0xfd7fa22c, 0x9784817f, 0x7fa57fb3,
+0xd881f3ce, 0x887f60bf, 0xdc816b0c, 0x3890b818, 0xc37fa281, 0x8f4681f5, 0xb07fb08b, 0x82ad24d0,
+0xc189ab02, 0xe3fddb8f, 0x7f744610, 0x435781b0, 0x8104f653, 0x41bb81be, 0x9a4c717f, 0xf9d4c1e4,
+0xbdc36404, 0x8ff9818a, 0x54d3ab9c, 0x24aec8ef, 0x81ac5bc8, 0x81908100, 0x74f05a0f, 0x0c5b7f2d,
+0x5279a3e3, 0x2d8169b9, 0x7fdc4897, 0x7f5f89bb, 0x9f457581, 0xde817fd7, 0x59813d7f, 0x67817fe7,
+0x7f817fd5, 0x7f5978ca, 0x23ab813a, 0x70819ce8, 0x41575433, 0xb17fa99e, 0x697f7f7f, 0x60aeb15a,
+0x7fa5a9df, 0x39818181, 0x818ea205, 0xbd819fb2, 0x7f0fa491, 0x814981d8, 0xb9c186e4, 0x817f29e5,
+0x81afcd17, 0x842f81ce, 0x058b8e1d, 0xea3da29e, 0x379f5ab7, 0x223c84c9, 0x93bcd8bc, 0xc895baea,
+0x6b7d3cc9, 0x7f2b8152, 0x7feccb81, 0x7f71634c, 0x810f7f29, 0x89c14aff, 0xc0ce05d7, 0x7aed49e1,
+0x817f4d0c, 0xeeaa0afb, 0xd7817f81, 0x6681d76a, 0xa37f4881, 0x38708103, 0x7f8181cb, 0x0a8f6639,
+0x8581aec3, 0xe82836d2, 0xda7f4781, 0x40d67ff3, 0xcc335f7f, 0xce207f44, 0xff9181f8, 0xbae52614,
+0xfccdf700, 0x9dc19f54, 0x5d7faefc, 0x5bcc2357, 0x817f7fb1, 0x6f5a9dd7, 0x81af5633, 0x810a7f59,
+0x551c8a18, 0x4b816452, 0xe981d940, 0x81d175f6, 0xee7f5746, 0x276f51b7, 0x16ae817e, 0x652063ba,
+0xd84e5e44, 0x7f385f2a, 0xa2e1b28f, 0x7f817fd2, 0xd8477f34, 0x508f31fc, 0x7e357fc7, 0x7fa07f7f,
+0x7f6d7f52, 0x7f717038, 0x7f819c3a, 0x2f973937, 0x71ac7d7f, 0x790950c2, 0x9aa97f81, 0x7f427ffe,
+0xf3f974a1, 0x8107812c, 0x817fb77f, 0x4d458151, 0xc93d2395, 0xb497d049, 0x4b955c87, 0x047eaef1,
+0xcc6c07cc, 0x5eff94ad, 0x3bed1246, 0x74d8c531, 0x815afc81, 0xaccf6eca, 0xbe4e3f64, 0x079b37b9,
+0xa0898136, 0xfe8a81b9, 0xb7df45fc, 0x7f7f7157, 0x725581a3, 0x7f0c56ec, 0xe6430781, 0x4356def3,
+0x54ca7fc7, 0x234f3eee, 0x7f270367, 0x704981c1, 0xfe623836, 0x816d2725, 0x7b9d9e81, 0x3b49d3ae,
+0xd2925440, 0x819a7fa5, 0xb025c9a5, 0xbbd77fc1, 0x81737f81, 0xbcb891ae, 0x442ab466, 0x812e41cd,
+0xbdb081a8, 0x8e7f5c2d, 0x8458dfb7, 0xd77f8130, 0x9bcbbc47, 0x783a7f5f, 0x27c4d502, 0xadf8cb31,
+0xa51e9baa, 0x814d812f, 0x7f1a7f8c, 0x1874f4be, 0x4ac57f81, 0xc7b67f37, 0xc0817ff9, 0x8c81e1ae,
+0x6f7f9331, 0xa17f7f9f, 0x7bec5242, 0x81b79554, 0xa27f7f7f, 0x181da812, 0x52e681f5, 0x5c3781fb,
+0x895981ae, 0x7f7fa003, 0x9555817f, 0x32391fdf, 0x0c7fff6a, 0xb681981d, 0x1b93a683, 0x7fc3d495,
+0x83f5810b, 0x854399a0, 0x997fd57f, 0xe87f6929, 0x7fbafb81, 0x7fe201e3, 0x7f7234b3, 0xb6889ebb,
+0x8ea7cdcf, 0xd27fab96, 0x9a562c7f, 0x6c7f7fd8, 0x2277467f, 0xb3108ed9, 0x818d0171, 0x81bc477f,
+0x650719f9, 0xba7fe501, 0x7b5796ca, 0x3fc581eb, 0x9a90469b, 0x7f041112, 0x527f7947, 0x8d3d4657,
+0x7f627fdd, 0x64053a56, 0x817739c6, 0x812268ee, 0x69ed9b7f, 0x3d7f7f1a, 0x7f2264f4, 0xb76c55f2,
+0xd06981fa, 0xa72359d6, 0x3708812f, 0x7f7a4c29, 0x467a227f, 0x685eb4c5, 0xeeeb81c1, 0x2999b5e3,
+0x7f7fa0be, 0x73586e92, 0xc7817f0a, 0xc32e7f4f, 0x819b9046, 0x8179acee, 0x29b1a517, 0x557f0ef9,
+0x8116589d, 0x557f26f3, 0x861970dd, 0xcb817fef, 0x9bb6ba72, 0xaee4ddfa, 0xd17f81c9, 0x257f76bf,
+0xb04b4df4, 0x8f7f8124, 0x818181fc, 0x4fcc8f06, 0x2f7cc181, 0x4900141a, 0xf0709c16, 0x6865b5fd,
+0xd9ab9128, 0xa2321900, 0xa1a6de7f, 0x58e47f23, 0x54ac4a45, 0x1af1e618, 0xed633c24, 0xde7f7ff7,
+0xd48139b1, 0x5a640dcf, 0x63d9de7f, 0x81669358, 0x4f4571bb, 0x7f7fa692, 0x7debaf85, 0x9d7f7f10,
+0xd9c34e9a, 0x708981e8, 0xfc838ac6, 0x430bf6b2, 0x81a1a4ee, 0x7f8181ad, 0x35e98d7b, 0x4e3681de,
+0x7f7256e9, 0x7fa3b47f, 0x5a813e7f, 0x8128aa15, 0xff42357c, 0x581e98a3, 0x81534281, 0xe58196fb,
+0x11b90c6b, 0x7f81e5e5, 0x7473f57f, 0xa9475b2c, 0x24d77fa7, 0xa27f591e, 0x7fba81a5, 0xc9f19310,
+0x3c64d05f, 0x86aca9f0, 0x69b57f01, 0xbb747fb6, 0xdd81e923, 0xbe814a26, 0xe6811b22, 0x7f817fdf,
+0x7f81e46a, 0x647f8170, 0xf2812d9b, 0x7f765fa5, 0x812dfe0e, 0x2584ed72, 0x811a7f7f, 0x417f7fee,
+0x81d28138, 0x7f8e7fff, 0x9c7e28d0, 0xa71eb5f5, 0x65993e7c, 0x927ff0e8, 0x7f5cd4ce, 0x2886b35e,
+0x7f81d3bf, 0xc2d1441e, 0x2f2cbadd, 0x8c9c4cb4, 0x34dba16b, 0xaa37c5c8, 0x5881ec6f, 0xfc7f64a4,
+0x81bb8128, 0x7395489a, 0x7f647f7f, 0x44ef7f9a, 0xc3b4d6a1, 0x8693af02, 0x87fab099, 0x7f7f2f05,
+0x0191d5f8, 0x0b4281cb, 0x615b990b, 0x554b7f4c, 0x7f7f66a2, 0x817f793b, 0x5681aa97, 0x21aea0bc,
+0x81925b0b, 0x81c69839, 0xb115814b, 0x9e81d8b0, 0xc70c6f7f, 0x8f14de16, 0x3f81b4bc, 0xaa0c25dd,
+0x81f8346b, 0x6981226b, 0x81b1817f, 0x7f2081e4, 0xa2848117, 0xe4cbcc32, 0x817081d5, 0x817dbf75,
+0x157f2614, 0x5a0477d6, 0x8b818105, 0x9e7f34d4, 0x48da3235, 0x397ff6d2, 0xa02f7092, 0x817f8b13,
+0x307b35ca, 0x783c7fe6, 0xa2c29081, 0x555b8101, 0xf764ee86, 0x463a8149, 0x577f837e, 0xb1948151,
+0xbd2f86f5, 0x6e5fc338, 0x7f67a373, 0x55817003, 0xa1e17f77, 0x8a817fff, 0x49365e44, 0x817f8933,
+0x209ba8a9, 0x7f311515, 0x7f519140, 0xa9549352, 0xbd817f8a, 0xafc4a005, 0x620d407f, 0x88302fd2,
+0x5cf481f2, 0xbd7fff40, 0x7f7f9cfb, 0x91ae81fc, 0x73f15c81, 0x93814581, 0xc7e8818c, 0xc481a1fa,
+0x99818124, 0x7fecdbf3, 0x207d8d39, 0x64818328, 0x7f9dbf5d, 0x2181f9c2, 0x817f7f8c, 0x367c1801,
+0x2a019011, 0x815f5d39, 0x81817fb8, 0x7f22815e, 0xb3ceca8f, 0xa6560501, 0xfb548181, 0x2b7ffe18,
+0x5394bb1c, 0x7f9981d9, 0x7f7fce32, 0x815ba6e4, 0xabd0d732, 0x7f5c81fa, 0x7f369f77, 0xa42b7f51,
+0x900db9cd, 0x9993bde1, 0x7fc8819a, 0x116f9310, 0x8ef767b0, 0x7a817f02, 0x56819b81, 0x29aee511,
+0x7f2b8d3a, 0x818a442a, 0x555c3ff5, 0x1d6c4929, 0x7ea9697f, 0x780b8fa6, 0x097fa426, 0x9b7f89d9,
+0x165081de, 0x45a184c0, 0x405c7fc7, 0x6bbcd6d3, 0x7b81837f, 0x33867f12, 0x878f7f62, 0xc6cf1002,
+0xad819f7f, 0x3df9422a, 0x77ca9e81, 0x684f7fca, 0x30847f81, 0x81817fda, 0xedc6a081, 0x682c00eb,
+0xca767fdd, 0x1f7fb0e3, 0x377f8a7f, 0x5e85d200, 0xb9237f1f, 0xf2817f2d, 0x0dd88132, 0x81cc0037,
+0x739b39bb, 0xb47fb83c, 0xdf7f8181, 0x7f54f610, 0xbc9e3f06, 0x5762b272, 0x81ebc628, 0x7f9845b9,
+0x7d901f63, 0x81ce7f36, 0x0ebd8e7d, 0x9a81d963, 0x644c3f81, 0x227fbdeb, 0x8e2d5f81, 0x54efc59a,
+0x94ed5511, 0x817f944b, 0x38393d81, 0x592f7ad2, 0x75814881, 0x63275d7c, 0x4a65de10, 0xeb818ff6,
+0x70f93fc1, 0xbbe83610, 0x7d94beba, 0xfd077f2f, 0x7f818181, 0xbb7f47d1, 0x4c8f7f6d, 0x587fa2fb,
+0xbd817f02, 0xae7f8123, 0x4fb981ac, 0x3fd2c446, 0x817f7fa1, 0xb28d81ce, 0x7f813fbf, 0x5a8181a8,
+0x2f6355c9, 0x75624fb5, 0x811842d0, 0x70a38146, 0xea52aef5, 0x7fffa3f0, 0x8f7fdcb0, 0xe31d81e5,
+0x7fe15a51, 0x21894817, 0x9c810f41, 0xe9428145, 0x7f819edc, 0x7feb1761, 0x81368181, 0x2c71f15e,
+0x26813c54, 0xf09c69aa, 0xd17751da, 0x25a1c23c, 0x7f812281, 0x4317b30f, 0x66908149, 0x81869b95,
+0x062874c1, 0x843481a4, 0x81743c89, 0x813e9cae, 0xd8397fd1, 0x7b495f55, 0x7f7f7f53, 0xc0b419e7,
+0xacf11d1b, 0x90a51003, 0x9efa5bb6, 0x77b8989f, 0x8b1ea17f, 0xc46537c3, 0xcca93d93, 0xa955d1db,
+0xc42743ed, 0x7f8a6442, 0x79ab8152, 0xfea48ff7, 0xfbbb819c, 0xa1be81ed, 0xa481da42, 0x477f7fd0,
+0xcc1acdfb, 0x767f1533, 0x99cdda46, 0xfb9c8109, 0x7f757f7f, 0x747f88d6, 0xb5404df1, 0x8b69b739,
+0xc762670a, 0x8125bded, 0x6481a452, 0x943e5aef, 0x7fe3557f, 0x8181bfc5, 0xb14d907f, 0x7f747f9c,
+0x54b4ff28, 0xe19d7fc2, 0x7f25887f, 0x7f6cc0b5, 0x34653ba1, 0xacd70015, 0x7901cc3b, 0xb081815e,
+0x812781fd, 0x871cd81d, 0xd1818494, 0xa97fc1ed, 0x81817f86, 0x9f3cf7da, 0x9857bb81, 0x9d1661d1,
+0x167f5814, 0x037fd0e4, 0x7f337f7f, 0x7fd40904, 0x376a4a69, 0x7f77a308, 0x73b61d36, 0xb4a318cc,
+0x7f9cc3e7, 0xe0d55532, 0xab58707f, 0x9c467f07, 0x8c7f2581, 0x60155a41, 0x7f3fd21d, 0x7f7f59a3,
+0x38176d64, 0xf77fd7a6, 0x0ed2ae81, 0x7f81cdec, 0x3c0f81a2, 0x747d9be6, 0x818c5f83, 0x432e7cfb,
+0x4a44b96b, 0xc8748423, 0x6b818181, 0xe34914d7, 0x980b64bb, 0x7fbe165f, 0x7f104bbd, 0x5c7f9d02,
+0x7f307fcc, 0x8399c1a3, 0x7233316c, 0x92aae7a6, 0x81deda79, 0x812805f0, 0x7f566985, 0xdeffbea8,
+0x2bbf427f, 0x7f819e05, 0x90811687, 0x817f81a0, 0xb581c481, 0xa05cfdd4, 0xe4983e52, 0x813e81e7,
+0x2b5ba42c, 0xf75aaf0c, 0x4bbc8181, 0x817fa502, 0x1a7f2d7f, 0xe97f0700, 0x724a5029, 0xe3700308,
+0xae7fb93c, 0x7f9581ba, 0x819d7f3d, 0x2b2ef875, 0x341c52ae, 0x21b23dfc, 0x6a82a2e1, 0xaa81ecc7,
+0xcf817ff6, 0x7fa17fb5, 0x1fc21a81, 0x817f895d, 0x54973cd6, 0x81a8c919, 0x9f4c7f38, 0x89817fd1,
+0x325d7fea, 0x959581c9, 0x711638c8, 0x07bb81c4, 0x1bf0818c, 0x346b81aa, 0x5d55817f, 0x7f7f8192,
+0x3b7f81d5, 0xe783f367, 0x863038b6, 0x7f53589b, 0x7f4de47f, 0x128165ac, 0x7fa6ccfa, 0xc19f8132,
+0xc3b3483e, 0xa63d628e, 0x2d707fd1, 0xd93a1319, 0x9197277f, 0xd77f0fbf, 0x8156da7f, 0x88819a98,
+0x3eb240f2, 0x81007fbe, 0x067fe653, 0xd3aa8150, 0xa625819b, 0x767ab13b, 0x937f817b, 0xd08181e1,
+0xa47f81b9, 0x3481bd4a, 0x65507fa7, 0xb79181d1, 0xbf1d7d3e, 0xb2818178, 0x8f329d1c, 0x2081b481,
+0x7b84a853, 0x7b679ce3, 0x9ba49881, 0x695ab122, 0x23be9081, 0xd7322a4a, 0x21db3fad, 0x81fc8145,
+0x84a1bad2, 0x9f307bb8, 0x81815581, 0xb84f1450, 0x6d3acdb7, 0xfd64811d, 0x7f8132e6, 0xd7458fee,
+0x81c54610, 0x7f7f73d1, 0x81a5c3bf, 0xe15f7fa0, 0x3c7f517f, 0x047f7fd0, 0x261e438d, 0xb3c47f34,
+0x5c81a1f6, 0xa2c62f5a, 0xe67f9255, 0x4df92530, 0x58877578, 0x817fdbd6, 0x9381d867, 0xb3815eec,
+0x3d8b8ad4, 0x814aab55, 0xa5477f7b, 0xed7f98d4, 0xae7f3681, 0x3b938138, 0x58e37f90, 0x7356b00c,
+0x754181fd, 0x3181503e, 0xc58dc451, 0x818b9cbe, 0x747fcbc4, 0x0918d1f1, 0x5b5ae00e, 0x761d6116,
+0x535ba62c, 0x8c0f22b4, 0xc98fb9ad, 0xad7f6d1d, 0x4f7fec7f, 0x1b437f35, 0x9004b258, 0x787c8d15,
+0xd04b81e6, 0x703d10f0, 0x7f7f8b89, 0x1674b61c, 0x9789ac81, 0xac6c7f58, 0x0e81ac48, 0x0881812d,
+0x117f7cc2, 0xa6bd8145, 0x59817f7f, 0x89cbb4fb, 0x697f9a81, 0x813e5281, 0xf57f4898, 0xee994b1d,
+0x60228cc5, 0x4c341db8, 0x7f6e7f63, 0x107f8151, 0x14397f55, 0x81a951d6, 0xb762ed40, 0x81c39dd6,
+0x546a0438, 0x7f8e88d7, 0x81810e7f, 0x7f7f654c, 0x3b412da8, 0x8aabcfe0, 0x4b83444b, 0x65bea3ee,
+0x507fb43f, 0x16c3c7c5, 0xe322a2d9, 0xfd5a0fd9, 0xc757577f, 0x6cd0b9af, 0xc6078100, 0x3256b728,
+0xc47fdc2f, 0x81dc4bb9, 0xd8d02073, 0xc38671f2, 0xbb9104b4, 0x7fb281b6, 0xcb817f81, 0x819f44af,
+0x29f781bc, 0xdfc231b9, 0x7fae7f43, 0x575b7f79, 0xf4c4414e, 0xe807d15c, 0xd08181ae, 0x8e81cd9f,
+0x942472c9, 0x816362dc, 0x9cba9281, 0xdc6fce74, 0x2b7f7f35, 0x37810c4f, 0xe8709e85, 0x5c7f984d,
+0x8153bc24, 0xbfe581bd, 0x9a7f9c84, 0x3be9e533, 0xb6938127, 0x82ca63d5, 0x08eeb19f, 0x59ebeb0f,
+0x4d7f14f7, 0x3c558f40, 0x62d26981, 0x8181f3a8, 0xe42585ea, 0x7f08817f, 0xaf8181a0, 0x0c5d16cd,
+0xa4dfee3d, 0x3a8182fa, 0x6381883a, 0x7fe9d01c, 0x5e659f90, 0x7f7f812f, 0x4a9d8179, 0xb1e4acf3,
+0x1b8189f9, 0xd983a4d8, 0x817f81df, 0xa2cf1f55, 0x817f337f, 0x7fa3564e, 0x14ae7c44, 0x4ca3859d,
+0x81b37fa2, 0xf8a0b7b1, 0x7f79c0cc, 0x7f3010f6, 0xa5be8c16, 0x2420b129, 0x7f7898f1, 0x7e818139,
+0x7fc919eb, 0x61819a67, 0x88928b15, 0x7eade0d3, 0x4e7fc323, 0x8deb5fe6, 0x7f3f7f9c, 0x81817fbf,
+0x989026db, 0xef81c203, 0x81e4a1e1, 0x35939d41, 0xbbaae870, 0x3d217fca, 0xddd9a1ce, 0x7f7f81a3,
+0x5bf18122, 0x81c55a52, 0xc95c450c, 0x7f5a03e6, 0x65654a14, 0x75d401f6, 0xe0cb297f, 0x5f3c8132,
+0xf7a312d3, 0x81c6d3af, 0x978e8181, 0x1476539f, 0x502534be, 0xd2909112, 0x6ad663ad, 0x7f7fbbac,
+0x8b70da23, 0x4d78af31, 0x7f8159f5, 0x81bad147, 0x348151dd, 0x5e68eace, 0xc2737fa0, 0xf97fa32e,
+0x7e7f81de, 0xa68baddb, 0xbb39817f, 0x7f9bc454, 0x6d09c327, 0xc37f3c33, 0x0a865f7f, 0xba8281e1,
+0x1a3ff406, 0x652c3fd1, 0x94af367b, 0xb381d8cb, 0x4045cce5, 0x7f7fd613, 0x795f7f42, 0xb1818193,
+0x7f371d3c, 0xef816b41, 0x2ca91acc, 0x48b5aa83, 0xaae807de, 0x26813f13, 0x81817f2a, 0x6083604f,
+0xd29e81f6, 0x7fb218ca, 0x4aa50170, 0xc2d74a22, 0x4f4971a3, 0xe9dc5f10, 0x7fb8bedf, 0x1f93814a,
+0xa97f7f0e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0=
+0xb5bc6ac8, 0xf5373664, 0x1310345c, 0xd5bae4e7, 0x1fc9e83e, 0xebfdfded, 0x84bd86ab, 0xb7aabe00,
+0x60b44fea, 0xb9067464, 0x30325378, 0xa9195955, 0xf70c6e5c, 0x90922632, 0xc90b1cdb, 0xf2f5fb69,
+0x73056b63, 0x1a33bf3f, 0x17755b5c, 0xc58bff6d, 0x2f4390b2, 0x2869d508, 0xe7c7dfe8, 0x38552963,
+0x21da5367, 0x07282b9b, 0xa4767105, 0x1e294251, 0xe350a940, 0xb8a6aa27, 0xed12d778, 0xf10d9ece,
+0xab93527f, 0xcf2da7e7, 0x68f6d0b1, 0x811f4bca, 0x577b06b2, 0x3234f13e, 0x30bab7df, 0x8dc47655,
+0xbb843bed, 0x86da3aba, 0x30950c97, 0xdd096d7a, 0xa871fd6c, 0x8bee4e6b, 0x8fea30d0, 0x6c05b4d2,
+0xf3e144d3, 0xd24ebb1f, 0x065635e5, 0x8d3f2cf9, 0x536c6c6a, 0xfbb0a5d0, 0x3d707b42, 0xc44d5982,
+0xa5f4ad8f, 0xf32c0970, 0x1bccf1a6, 0x05916020, 0xa64fb176, 0x5ede6a35, 0xaf4966da, 0x9df5e0e7,
+0x75042abc, 0x9ef10481, 0x11ddcbc8, 0xa0f5518c, 0xd5c23418, 0x2393d558, 0xfbe7dfeb, 0xed1c64c2,
+0x86a36508, 0xde2dfb1e, 0xb8d0fef9, 0x24505232, 0xc894e71c, 0xbcc752a0, 0x40b74e83, 0x90d23c8c,
+0x728e4a61, 0x108f0b08, 0x66f522ee, 0xc258d851, 0x35a31c44, 0x11311b5b, 0xfd3d5be9, 0x5ae448ff,
+0x4f64994b, 0x5b8247a9, 0x4021114d, 0x2f0b6e82, 0x5eaa9828, 0x50ac71c0, 0xfb86ee52, 0x0dc1ac9b,
+0xbbd47645, 0x8f357115, 0x978ceea0, 0xd557db99, 0x99b30388, 0xfc9a8a1c, 0x0f75be1a, 0x50143e22,
+0x8840989b, 0x738ec50e, 0xe6b2783d, 0xf67899c8, 0x27ebed69, 0x6c415a16, 0x3a6cc2dc, 0xcd4e4e5d,
+0x6cb12b2e, 0xdb88d7c0, 0x79cd1582, 0xbc422413, 0xe72ad2f4, 0x8eaac30f, 0x0bd86747, 0x6d87f69d,
+0x15d62038, 0x4b375630, 0x0d51b859, 0x16db2cb2, 0xf210603a, 0x0abeb833, 0x55c694d0, 0xe57ca43b,
+0x0ba94428, 0x1398a406, 0xe47d3889, 0x5a20203d, 0x250d7a1a, 0xd930ffec, 0x03992e79, 0xf2759376,
+0x024ec121, 0x91fc3a2c, 0xb7e11cc5, 0x4ff7d459, 0xb8700134, 0xd6e61758, 0x4eba0a32, 0xb747e3ec,
+0x7073fad7, 0xded80f99, 0x331e2f1b, 0xfa1f1bed, 0x056424a2, 0x1d1d95e0, 0x550b9ec8, 0x51ee2a38,
+0x19525153, 0xd70c4cd5, 0x0d6cd7ad, 0xe44d1cf2, 0x30dfecda, 0xdacd7fe8, 0x7321d795, 0xddf48ef4,
+0xe271e6a4, 0x9c1feecb, 0x951fcd7b, 0x8acc5a03, 0x3fb83527, 0xe306de74, 0x7b9cd6ee, 0x8e140885,
+0xd4c91e8d, 0xe8c39733, 0x0f02f87f, 0xfb06b1b9, 0x0dc9349c, 0xf76bae8e, 0x4f642a07, 0x3d48a9aa,
+0xe3ea323a, 0xa1cd5c8a, 0x40aa0e70, 0x132042d3, 0xa9732f6c, 0xd15a00c4, 0x43d3b046, 0x9a51ebd4,
+0xc46ee0ed, 0xe2a2148b, 0xf5c478f0, 0x1fb01cf3, 0xf4f321ec, 0xd973811f, 0x11ad11b9, 0x5c67adda
+
+e =
+34560
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
index a866878..cfff56a 100644
--- a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
@@ -666,12 +666,15 @@ ext_scale =
 num_maps =
 0
 
+r =
+0
+
 code_block_mode =
 0
 
 op_flags =
 RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
-RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
 
 expected_status =
 OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
new file mode 100644
index 0000000..93792dd
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
@@ -0,0 +1,991 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..ab2deb6
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
@@ -0,0 +1,993 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+input1 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
new file mode 100644
index 0000000..781f8d5
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
@@ -0,0 +1,2449 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1,
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..937c23a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
@@ -0,0 +1,2451 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1
+
+input1 =
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
new file mode 100644
index 0000000..f0bbed1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429
+
+input1 =
+0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e, 0x6730b095,
+0x78f7c059, 0x99
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xde639c99, 0xea20a04f, 0xda872110, 0xde5b08e6,
+0x3739dabf, 0xdc015a9c, 0x7db088b6, 0xdb8e6f42, 0x6be6c1df, 0xf5297b75,
+0x13566521, 0x602b7d06, 0x9536c5c1, 0xb3b80104, 0xbf0519bb, 0x2a72e0f0,
+0xd9e89f7a, 0xcf3d85f5, 0xd3c3e827, 0x5537ab7b, 0x8b7b0d80, 0x43618aba,
+0xf4f10968, 0x52e765f0, 0x837af128, 0x75871cf8, 0x27e94bff, 0x99cddcee,
+0x1937f910, 0xd0
+
+e =
+1380
+
+k =
+456
+
+ncb =
+1440
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
new file mode 100644
index 0000000..23a1b10
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
@@ -0,0 +1,328 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x8384dda9, 0x694de7a8, 0x1d2604f8
+
+input1 =
+0x647b5b37, 0xb235179e, 0x9b72fa9f, 0x95f0dd27, 0xe3d0b584, 0xc0c5a4a3,
+0xa46c2ddb, 0x76b5124a, 0xe07273de, 0xd7dd4163, 0x9feb8c26, 0x82d47198,
+0x106bae47, 0xbfa90e78, 0x0f83ee80, 0x157ccf3a, 0xb32cf008, 0x86908ed7,
+0xfa83d272, 0x409b80d5, 0xbe0bdbc1, 0x77ff05bc, 0x2a4b347b, 0xad7ebf48,
+0xd21d50df, 0xe7ac97ba, 0x31f0e405, 0x5da21104, 0x0ec1f016, 0x2fb88576,
+0x0cc56f40, 0x83524baf, 0x27d6fbf6, 0xf9ab0208, 0xbe9080e9, 0x4d0f24a3,
+0x64e505fe, 0x617078a8, 0x7722646b, 0x6e688578, 0x09073a5f, 0xbc411a65,
+0x9c4c6052, 0xf1dd2823, 0x8f628ff7, 0x87376338, 0x61caff8a, 0x98483fdf,
+0x8e1d6e83, 0x659a5a20, 0x8aa88b06, 0x67418437, 0x40ed9259, 0xf8c46f3a,
+0x03421725, 0xabb9e9d8, 0xa66e5e0e, 0x6f55e795, 0xc3bfb8f1, 0x0cf82921,
+0x30daf099, 0x91861e51, 0xb9c4210f, 0x6c2d7a06, 0x15bc344f, 0x48b591f6,
+0x226d4092, 0xed6553ec, 0x5c586be3, 0xa4987693, 0x10ddcf8d, 0xd7ed5a67,
+0x79b85bcd, 0x4d592345, 0x4ce945a3, 0x0fc3837d, 0x56fe007d, 0x5e9275ec,
+0xfe7c865c, 0xcc2beea0, 0x0cf942d9, 0x49154874, 0xc7aa4d5b, 0x4e17ce42,
+0x2f24e407, 0x1b58d55c, 0x9f5ff14e, 0xa41f0b96, 0xee5cd5c8, 0xeafecd05,
+0xe5c9f211, 0xe4ecaa7b, 0xf906420b, 0xe0d7b63b, 0x978a5c06, 0x112793c2,
+0xea03d49a, 0x66ca3afb, 0x01fa1cd4, 0x617df025, 0xa1489b42, 0x748f7864,
+0x3ec92bab, 0x795fe037, 0xba5663ed, 0x39e19f7a, 0x145af072, 0x3f37ae3a,
+0x4fabc518, 0x3ea9e8cb, 0x73e8e393, 0x21cd02d7, 0xb1a53060, 0x8a5d94ae,
+0x13532921, 0x2c955771, 0x943c412d, 0xc00981a9, 0x0d080e03, 0x8e37d0a0,
+0x4436d0fb, 0x4d95a049, 0x5a417836, 0x34155d21, 0x54545bb5, 0xf83ed24f,
+0xf2899b97, 0x9558a1af, 0xc0da7c82, 0xdb203ba3, 0x29e46cc2, 0xabb83fec,
+0x5a4ef521, 0xbf2f850c, 0x12b33a77, 0x4ccac8b4, 0x7a54538a, 0x9a46d200
+
+input2 =
+0xb8e5f663, 0x203432f6, 0xfb85cd0c, 0xeaa8384b, 0x02794cd9, 0xef4fef8d,
+0xaa9a1053, 0x631b87e6, 0xdcb3547d, 0x7586180a, 0xa120e1c1, 0xef7b27be,
+0x41fc9d09, 0x6d51533b, 0xda1874c1, 0xf260d2f4, 0x6278fd5f, 0x0a124761,
+0x09cd8482, 0xf9d74008, 0x25996d51, 0x02e64f20, 0x6568ed32, 0xf9042aad,
+0xe9fc6bf2, 0xd6776755, 0x8ee536ac, 0x5b5edf46, 0x18fd8add, 0xeb0f680f,
+0x8b0360a8, 0xe3a0d12c, 0x25ca50f6, 0x8bbd71fa, 0xc83bd21a, 0x09f6b75d,
+0xcd02eaec, 0xafb06776, 0xcae07c61, 0x2c0548a9, 0xe311c76f, 0x05304767,
+0x043ae4dd, 0x3648c9b0, 0xe9dfda3a, 0x4d252727, 0xa3237636, 0x8c8ed3f8,
+0xb30a6d76, 0xb71ca52b, 0xe667bfdb, 0x513c58fe, 0x6fae21e0, 0x2d21cf6b,
+0xb799b698, 0xf64019a2, 0x6dc8bc3b, 0xf186373e, 0x301f89fd, 0xd40baf29,
+0x744f5323, 0x4a7af246, 0xcd233083, 0xbbc3e502, 0x3d2882f6, 0x925a43f5,
+0x0a8c9817, 0x27bf2de3, 0xf26365be, 0x112312a7, 0xca95075a, 0xa4b4b6b8,
+0x2e370826, 0x504d5377, 0xde398b34, 0x21b77d86, 0x18bd6514, 0xbc41f116,
+0x88405585, 0x8555cc9d, 0x2ec213b2, 0x542b1842, 0x063579b3, 0xe47fb6c5,
+0x542485fd, 0xcb0aba36, 0x1703abb8, 0x0dc54612, 0x7a58cdf3, 0x0a39a9c7,
+0x7c259899, 0x7074495c, 0x0665f1e8, 0x1660adf9, 0xbe0eca10, 0x55a3bf42,
+0xe4ef353f, 0x8caa8703, 0xf9915fcb, 0x45f97d9b, 0x0eee5b66, 0xa3caeeeb,
+0xfc322d2b, 0xaa7f763c, 0x6ffc0439, 0x22ff095e, 0x6095c83d, 0x4b217bef,
+0x09486a68, 0x40b05bb8, 0x67f8d3ca, 0x7018f808, 0xf1f808ce, 0xa096fdd2,
+0xa73628dc, 0x1a03888e, 0x0cdb727c, 0xea4370eb, 0x36b60c20, 0x9a48fe6f,
+0x1141dff8, 0xb6f113e0, 0x92da8eb5, 0xe9221484, 0x5bcba785, 0xb1fe1e7b,
+0x93d95acf, 0x816daadb, 0xa9e97eaf, 0x41bedd
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x3b787aa9, 0x4fde63dc, 0x10ea20a0,
+0xe6da8721, 0xbfde5b08, 0x9c3739da, 0xb6dc015a, 0x427db088, 0xdfdb8e6f,
+0x756be6c1, 0x21f5297b, 0x06135665, 0xc1602b7d, 0x049536c5, 0xbbb3b801,
+0x0cdb0c19, 0x7b2ad622, 0xfee8218f, 0xc5c7f123, 0x8abd3301, 0xa15b534d,
+0x29dd2053, 0xd409abf9, 0x3ef19d6b, 0x70a3cbc2, 0x7a51423a, 0x4505b2ad,
+0xdc74c75e, 0x068751a9, 0xb0b56437, 0x14a10371, 0x76af806f, 0xa8a47e19,
+0x7c97a26e, 0x7998a3d6, 0xdc1ad1e2, 0xb532a301, 0xca8a3e7d, 0xd0aef374,
+0x204990c0, 0xc7011aec, 0xa69151ea, 0x53390026, 0x7bf0d762, 0x735c2202,
+0x64159e54, 0x5a3b1a56, 0x9ef1def2, 0x0ab8a961, 0x587b0886, 0xb8cc5975,
+0x2a5a0f23, 0x069d05be, 0x9cc3c207, 0x40ef1a02, 0x4fae3f5b, 0x1f127aae,
+0xd4e6d411, 0x17ac43ef, 0xe4bf891b, 0xfbb21765, 0x2c560c7e, 0x8561988c,
+0x73a01032, 0x0cfef73a, 0x694c4991, 0x885d7a3f, 0x4218d1ff, 0xc2efaffb,
+0xaf9d9715, 0xf76de6b2, 0xcce8e8ff, 0x370e3800, 0x493675eb, 0xd8fbcbda,
+0xa5b382c2, 0x86c8f1ea, 0x3d724ea4, 0xb067034c, 0x6491d87e, 0x1a745ce4,
+0xbb27180b, 0x1a2f0acc, 0xac4b7b3b, 0xe324578b, 0xc87928df, 0x9c1de566,
+0x0ce2a17d, 0xaf2e13ce, 0x146a8659, 0x8727f6ae, 0xe2df7d03, 0x1a8e4cb4,
+0xfa590976, 0x13a7c236, 0xc07489d0, 0xbe905e17, 0xafeb3d4b, 0x201e73f2,
+0x5bdca12e, 0x3e15a852, 0xbcfc3271, 0x5d398410, 0x6bfacc15, 0x011fc61f,
+0x43e43fd7, 0x0640717c, 0x96bfb3ff, 0x158eac19, 0x3b852e91, 0x74f9ceda,
+0xcac71326, 0xfc0e312a, 0x20e8137b, 0xa1162611, 0x239ac7fe, 0xb9d00f8a,
+0xea0b5241, 0x019f0d25, 0xc5153264, 0xb48a5547, 0xe54e339f, 0x17a6cca5,
+0x5065af0d, 0x5ce648b9, 0xb457b342, 0xc1cb3f0e, 0x28d03c8b, 0x5144ed7a,
+0xdb80779f, 0x53ce1b87, 0xbc071147, 0xbfe46c11, 0x7296785e, 0x83e4a63e,
+0xc58982e9, 0xac97c7b9, 0x3e2fe9ad, 0x5badf077, 0x75aa2457, 0xe90a9df7,
+0x8b6ccd4f, 0x0952f26d, 0x80a8378a, 0xb43e3207, 0xf2de9df0, 0x0fff3717,
+0x80446f72, 0xd05c0c7f, 0xdc9ad9a1, 0xe881678d, 0x290c1bd1, 0x99ca0de2,
+0x4b3304c7, 0x6ea6f4e4, 0xf620f405, 0xb2f0593e, 0x0a930b64, 0xaa79e973,
+0xb34cce52, 0x094579bb, 0x87e5be0f, 0x8f7da04c, 0x40c1952c, 0xbe986586,
+0x55f822cc, 0x55d8abe9, 0x5ae570c1, 0xe8c7eb76, 0x2a3c1721, 0x7d7d9237,
+0x8cd3a0c0, 0xa3818fa5, 0xfb4d2df0, 0x12f42455, 0x8e9f2a07, 0x45b28529,
+0x49b9c170, 0x0812d29a, 0xc1353e6b, 0x2701f0b3, 0xb8dbcf3a, 0x842c6fee,
+0xb9240b2a, 0x723d6490, 0x0cc20b5b, 0xe4fd1dc0, 0x99651ffd, 0xa38e1773,
+0x4e99bd3a, 0xe0c24878, 0x2dd78dba, 0x50cdaba8, 0x7b9678bf, 0x6e6d7824,
+0xe738e423, 0x22043a00, 0x4eaba169, 0x0f2808d5, 0xe49ec31d, 0x251f7086,
+0x4cafaf35, 0x524d1088, 0x5c1321bd, 0x8185032d, 0xb21a78eb, 0x51d13a3a,
+0xc4470b6c, 0xcb3b9f7f, 0xe32b35e7, 0x538b94ce, 0xe042ec95, 0x209b6116,
+0xde3b30f2, 0xd09c4b2e, 0x239fda51, 0x02b1b715, 0xf3c5e5de, 0x8a3ed6bf,
+0x4604fd3d, 0x9df50325, 0x631779d6, 0x87902b7e, 0x29890dae, 0x4e0011be,
+0x76476833, 0x478e5bfd, 0xf206abca, 0xad175a4d, 0xb1ec8cd6, 0xd3a9a423,
+0x27082a37, 0xe3341c5d, 0x06e1c714, 0x12d86950, 0x91d6f70e, 0x2a1c50cf,
+0xa81af940, 0xf75248fc, 0xbe05834f, 0x3f16b2f7, 0x3a4f399d, 0x17735bff,
+0x75fdc1cf, 0xae70d0f3, 0x97361ac3, 0x108acace, 0xd5ce994b, 0x87750f45,
+0xf1b6074b, 0x899de08a, 0xcdf940b8, 0x3333765e, 0x5b844560, 0xe2d7cd26,
+0xde5b3df3, 0x005b47eb, 0x3f84501a, 0xd5c4a613, 0x02ec8c64, 0x8a539710,
+0x2ef84f5e, 0x3cfd137e, 0x16291d76, 0x1ec4c1e2, 0x2c4603e3, 0x8914251f,
+0x15ff58e2, 0xad8a9b5d, 0xd42c2ffa, 0x91fb3db4, 0xbb0e6562, 0x0ed4d637,
+0x84dd5060, 0x4de7a883, 0x2604f869, 0x7b5b371d, 0x35179e64, 0x72fa9fb2,
+0xf0dd279b, 0xd0b58495, 0xc5a4a3e3, 0x6c2ddbc0, 0xb5124aa4, 0x7273de76,
+0xdd4163e0, 0xeb8c26d7, 0xd471989f, 0x6bae4782, 0xa90e7810, 0x83ee80bf,
+0x7ccf3a0f, 0x2cf00815, 0x908ed7b3, 0x83d27286, 0x9b80d5fa, 0x0bdbc140,
+0xff05bcbe, 0x4b347b77, 0x7ebf482a, 0x1d50dfad, 0xac97bad2, 0xf0e405e7,
+0xa2110431, 0xc1f0165d, 0xb885760e, 0xc56f402f, 0x524baf0c, 0xd6fbf683,
+0xab020827, 0x9080e9f9, 0x0f24a3be, 0xe505fe4d, 0x7078a864, 0x22646b61,
+0x68857877, 0x073a5f6e, 0x411a6509, 0x4c6052bc, 0xdd28239c, 0x628ff7f1,
+0x3763388f, 0xcaff8a87, 0x483fdf61, 0x1d6e8398, 0x9a5a208e, 0xa88b0665,
+0x4184378a, 0xed925967, 0xc46f3a40, 0x421725f8, 0xb9e9d803, 0x6e5e0eab,
+0x55e795a6, 0xbfb8f16f, 0xf82921c3, 0xdaf0990c, 0x861e5130, 0xc4210f91,
+0x2d7a06b9, 0xbc344f6c, 0xb591f615, 0x6d409248, 0x6553ec22, 0x586be3ed,
+0x9876935c, 0xddcf8da4, 0xed5a6710, 0xb85bcdd7, 0x59234579, 0xe945a34d,
+0xc3837d4c, 0xfe007d0f, 0x9275ec56, 0x7c865c5e, 0x2beea0fe, 0xf942d9cc,
+0x1548740c, 0xaa4d5b49, 0x17ce42c7, 0x24e4074e, 0x58d55c2f, 0x5ff14e1b,
+0x1f0b969f, 0x5cd5c8a4, 0xfecd05ee, 0xc9f211ea, 0xecaa7be5, 0x06420be4,
+0xd7b63bf9, 0x8a5c06e0, 0x2793c297, 0x03d49a11, 0xca3afbea, 0xfa1cd466,
+0x7df02501, 0x489b4261, 0x8f7864a1, 0xc92bab74, 0x5fe0373e, 0x5663ed79,
+0xe19f7aba, 0x5af07239, 0x37ae3a14, 0xabc5183f, 0xa9e8cb4f, 0xe8e3933e,
+0xcd02d773, 0xa5306021, 0x5d94aeb1, 0x5329218a, 0x95577113, 0x3c412d2c,
+0x0981a994, 0x080e03c0, 0x37d0a00d, 0x36d0fb8e, 0x95a04944, 0x4178364d,
+0x155d215a, 0x545bb534, 0x3ed24f54, 0x899b97f8, 0x58a1aff2, 0xda7c8295,
+0x203ba3c0, 0xe46cc2db, 0xb83fec29, 0xe1f521ab, 0xc6b9bfc2, 0x5c32cb2a,
+0x9ff27191, 0xd52f5c36, 0x5953596d, 0xb9686ed3, 0x087ca132, 0xa528467c,
+0x945c97ee, 0xbfa19e6f, 0xd4e19b4c, 0x55c03e10, 0x390bbd8e, 0x654a76c0,
+0x656030f0, 0xc157ac93, 0x02dcce46, 0x5dc06d58, 0x3b7fd9e9, 0xc8a4de6f,
+0xcbb105da, 0x8a1b6e0f, 0xeb1a7ecd, 0xfe809fd7, 0x43d70381, 0x0cfc5e49,
+0xf0a302d3, 0x9664b2c9, 0xb2793157, 0x5dd5cc39, 0x4e9d42bb, 0x26f65f3a,
+0xfdf325fb, 0x8fbd80f1, 0xd6dc87f0, 0xabd85a41, 0x308029ff, 0xb774c986,
+0x0b0fc9b4, 0xd57c5439, 0x3c3c5b4d, 0x0843d1cf, 0x11a1e765, 0x77d92661,
+0xe7142375, 0xe238ff84, 0xfbb66dd9, 0x3ac33a26, 0x7c843c33, 0x6ac40826,
+0x17d9ae96, 0x98edfd6b, 0x57747f0d, 0xae811573, 0x0cb107fd, 0x8e075d1a,
+0x44b82c2b, 0x5c831473, 0xe132923c, 0x56edfe59, 0xe41ef202, 0x1a4ffff4,
+0x711db68f, 0x097160f2, 0xcafacd90, 0x3861d5ae, 0xcdf9eccd, 0xcdd93506,
+0xaa171f8a, 0xe1de194e, 0xed1a1901, 0x1d9f9e42, 0xdcc2d911, 0x19782ad0,
+0xc52f93c8, 0x162a98b2, 0x56af9960, 0x6c9c5299, 0xcf9a19b7, 0x78c967b5,
+0xd045f7c3, 0xd71354ad, 0xb4b202dd, 0x44c5f03d, 0xf30ca027, 0x7c6e5360,
+0x0f687223, 0x089bc5e5, 0xaa82af26, 0xd3044038, 0x466b6c1e, 0x4f30716e,
+0xc38a5280, 0xd1835859, 0x7cf23e2c, 0x3c1c25dc, 0xdb16c0f6, 0x616d97e9,
+0xc4f921b2, 0xb222a9bf, 0x0da098cc, 0xaf24a9b8, 0x0531f892, 0xa532fc28,
+0xa1b7ff8c, 0x84185bde, 0xbf7e22ee, 0x0acd2cac, 0x8c9c9783, 0x06a12240,
+0xc72727bd, 0xd288dabc, 0x8cdb446e, 0x0775e50b, 0xff75e03c, 0x9b5e3401,
+0x0d72aba1, 0xead6e37f, 0x9e6ab0e8, 0x322bfaaf, 0xa77475ab, 0x209b5cca,
+0x95ec7cf2, 0xc9120454, 0x205950fb, 0x108b00f7, 0xe63691a1, 0x333de3ae,
+0x10a00cc6, 0x6627d276, 0x6ad7a7ba, 0x674bd137, 0x440ee9c6, 0x4baf4fec,
+0xf8fbbb08, 0x6cf14435, 0xeda46d4a, 0xc2970533, 0x1ef9901b, 0xa38c8a02,
+0x3cc92010, 0x11a2ad19, 0xacc4f626, 0x3b79c692, 0xba6fcc96, 0x023b4438,
+0x6e44da89, 0x706833e1, 0xc686d43e, 0x24de1fb0, 0x02cb4043, 0xcdcc9427,
+0x19874c6f, 0x1f0eac03, 0x451287ae, 0xde59e0f9, 0xe3d24b8b, 0xaacb7076,
+0xf9e917ec, 0xc38ee0ef, 0x1e35a948, 0x637e7d0f, 0xc46537e1, 0x57c719c6,
+0xd78e6388, 0x242b2bf1, 0xeeff65a3, 0xdba5167d, 0x52df5992, 0x2c176e9f,
+0x89edc76f, 0xad9bc6c8, 0x85d68905, 0x5fa6ace5, 0x0c29be5c, 0x382ac973,
+0xc90c37a6, 0x703c5202, 0x79982954, 0xb06169d8, 0x8b8eca2a, 0x150fddee,
+0x2ad08bc2, 0xe73410ed, 0x056c863d, 0x92207e0b, 0x61ad097d, 0x5b0112c3,
+0x0590cadb, 0xa4fd73a1, 0x1992d9c6, 0x40d3a1ac, 0x38b6c7e1, 0xc392aeea,
+0xebd97511, 0xcdaf098f, 0x7a37c361, 0xf2699fc9, 0x5f921fb3, 0xc2784ffe,
+0x0c41d640, 0x4a367b6c, 0xf16cc4af, 0xd8c3a120, 0x051d71e7, 0x339f9999,
+0xab664909, 0xa1ae5a9c, 0xcc0f88de, 0x3d4d7d88, 0x0aed3148, 0xd0768c85,
+0x7c7e9061, 0x587e3073, 0xa00baa91, 0x0742d49e, 0x8cdb3316, 0x6a65f748,
+0x97febcd5, 0x63f7e115, 0xe609e4ec, 0x1e7fec67, 0x41613968, 0x0781c35b,
+0xb43e97f2, 0x824b9c32, 0x32033289, 0x6f858691, 0x46bf3ba4, 0xc2c75bb0,
+0x3b93a4ce, 0x4269140b, 0xcee2b4c4, 0x2c7bc82a, 0xa75515dc, 0x2553582f,
+0x5bbd77f3, 0x9b418852, 0xfd8492df, 0xa6d60678, 0x08c8232d, 0xfde0decd,
+0xe9023c01, 0x618dc90f, 0xa7b37ce5, 0x6889c117, 0x818a1563, 0x6492d447,
+0x86fc80ce, 0x570d8ff2, 0x10ec5ab8, 0xc7c5b00d, 0x84cb4057, 0x544b7b69,
+0xb73fbb28, 0x09201691, 0xa63303af, 0x8aa52eca, 0x68e6bbef, 0x82c53c81,
+0x84f5b8ea, 0xf37cc22f, 0x291b9e0c, 0x882a6f6e, 0xc5d70964, 0x32f010ba,
+0xcc514415, 0x87a0d092, 0x1e64a4bd, 0x08210042, 0xb96becb7, 0x7b53f112,
+0xe07f1d2e, 0x850c5a4e, 0x3a77bf2f, 0xc8b412b3, 0x538a4cca, 0xd2007a54,
+0xf6639a46, 0x32f6b8e5, 0xcd0c2034, 0x384bfb85, 0x4cd9eaa8, 0xef8d0279,
+0x1053ef4f, 0x87e6aa9a, 0x547d631b, 0x180adcb3, 0xe1c17586, 0x27bea120,
+0x9d09ef7b, 0x533b41fc, 0x74c16d51, 0xd2f4da18, 0xfd5ff260, 0x47616278,
+0x84820a12, 0x400809cd, 0x6d51f9d7, 0x4f202599, 0xed3202e6, 0x2aad6568,
+0x6bf2f904, 0x6755e9fc, 0x36acd677, 0xdf468ee5, 0x8add5b5e, 0x680f18fd,
+0x60a8eb0f, 0xd12c8b03, 0x50f6e3a0, 0x71fa25ca, 0xd21a8bbd, 0xb75dc83b,
+0xeaec09f6, 0x6776cd02, 0x7c61afb0, 0x48a9cae0, 0xc76f2c05, 0x4767e311,
+0xe4dd0530, 0xc9b0043a, 0xda3a3648, 0x2727e9df, 0x76364d25, 0xd3f8a323,
+0x6d768c8e, 0xa52bb30a, 0xbfdbb71c, 0x58fee667, 0x21e0513c, 0xcf6b6fae,
+0xb6982d21, 0x19a2b799, 0xbc3bf640, 0x373e6dc8, 0x89fdf186, 0xaf29301f,
+0x5323d40b, 0xf246744f, 0x30834a7a, 0xe502cd23, 0x82f6bbc3, 0x43f53d28,
+0x9817925a, 0x2de30a8c, 0x65be27bf, 0x12a7f263, 0x075a1123, 0xb6b8ca95,
+0x0826a4b4, 0x53772e37, 0x8b34504d, 0x7d86de39, 0x651421b7, 0xf11618bd,
+0x5585bc41, 0xcc9d8840, 0x13b28555, 0x18422ec2, 0x79b3542b, 0xb6c50635,
+0x85fde47f, 0xba365424, 0xabb8cb0a, 0x46121703, 0xcdf30dc5, 0xa9c77a58,
+0x98990a39, 0x495c7c25, 0xf1e87074, 0xadf90665, 0xca101660, 0xbf42be0e,
+0x353f55a3, 0x8703e4ef, 0x5fcb8caa, 0x7d9bf991, 0x5b6645f9, 0xeeeb0eee,
+0x2d2ba3ca, 0x763cfc32, 0x0439aa7f, 0x095e6ffc, 0xc83d22ff, 0x7bef6095,
+0x6a684b21, 0x5bb80948, 0xd3ca40b0, 0xf80867f8, 0x08ce7018, 0xfdd2f1f8,
+0x28dca096, 0x888ea736, 0x727c1a03, 0x70eb0cdb, 0x0c20ea43, 0xfe6f36b6,
+0xdff89a48, 0x13e01141, 0x8eb5b6f1, 0x148492da, 0xa785e922, 0x1e7b5bcb,
+0x5acfb1fe, 0xaadb93d9, 0x7eaf816d, 0xbedda9e9, 0xa7ca7f41, 0x3dbc26b7,
+0xbc3bd6af, 0x2d439ab1, 0x033d7088, 0x55ce999d, 0xbf01aede, 0x69d66a12,
+0x66729f87, 0x8e32437f, 0x7c0cd769, 0xc2d6c28e, 0xb46447ae, 0x4a525520,
+0x93096dbf, 0x2a322bcd, 0xde416e8f, 0xb43de9a4, 0xe2103ebb, 0x416e35ed,
+0xd0c13478, 0x0298890a, 0x8d4878f3, 0x8e81f629, 0xd60a85bf, 0x10c2e72d,
+0x68b67fb0, 0x2981247e, 0x6bdbd269, 0xe43784e3, 0x812de42b, 0x867d394d,
+0x423b0ee7, 0x627b8d60, 0x23ab2664, 0x83177153, 0x13dca280, 0x49d3c872,
+0xd45a0b4e, 0x00d45a9f, 0x0c462361, 0x983f61a9, 0x8002d29a, 0x6fbea32b,
+0xfe480c9d, 0xc509b1ae, 0xa16a6480, 0x2ec3f091, 0x278b72bc, 0xedbf05b0,
+0x9b1b3b99, 0xe10ad07e, 0xd72e6076, 0x6c5a971a, 0xf8455dba, 0x4b7dc370,
+0x4a7cdaad, 0xed4f2283, 0xe6f08d15, 0xf6ad0a12, 0x1ae96f4f, 0x4f57bd65,
+0x64695652, 0x0cb93df1, 0x9af11326, 0xce713c08, 0xefc3aba9, 0xf650de25,
+0xb7b39517, 0x45c92ae6, 0x38a8e441, 0x60b1823f, 0xb061259d, 0xb6996e6a,
+0x78786198, 0x06309186, 0x77d3c6f4, 0x8d546f7b, 0xfc7abe48, 0x969ce149,
+0x76950457, 0xd773728e, 0xb6a62ac4, 0x6164c8d3, 0x4f4fd819, 0x0aa0b660,
+0x61d334d1, 0x3deca8cf, 0xec2841ad, 0x44636725, 0x235d3532, 0x3aecb4f3,
+0x3538c6e0, 0xf0060d47, 0x2ab167f4, 0x0b9af7cf, 0x0779ec25, 0x35a33e48,
+0x8a0b999b, 0x593d498d, 0xc336cabf, 0xd49ebae0, 0x4e1756d7, 0x949cd0fb,
+0x1df1c1ee, 0xfbcc6642, 0x31637c7a, 0xf5057c87, 0xa10f0991, 0x8ed58fb9,
+0x09078b6e, 0x20648f01, 0xc1db84e6, 0xde0bda37, 0x61318efd, 0x11cf175e,
+0xb5edbe81, 0xf8904fcd, 0x209f1281, 0x18808af8, 0x1fecace9, 0xe4266782,
+0x37e5b44b, 0x42398c69, 0x5c289090, 0x686fa23f, 0x1e53a0c2, 0x5dac1fdc,
+0x3483d874, 0xc1a4c007, 0xa0cd459f, 0xd189410f, 0xddddc858, 0xaece2922,
+0xdef79aca, 0xc4b9e092, 0xb0fd47c2, 0x82903f08, 0xac21977f, 0x5a5f8bc8,
+0x6dca69c4, 0x7b3ccc8d, 0x0ba11e02, 0x01cdc423, 0x94373db8, 0xa7467d8f,
+0x1c2b70c3, 0xcf8c0768, 0xda7ee497, 0x073acd49, 0x0350dccc, 0x5a6e39c2,
+0xf6f7d4cc, 0xc64af7b5, 0xc445ddaa, 0xc7e24642, 0x1e600f75, 0x47f85b15,
+0x57a8cd36, 0xf9f152f5, 0xefac27df, 0xddb3dd4e, 0xf8e27f9d, 0x6d0f2803,
+0xf64634ef, 0xde7e7b1a, 0xc66b28e5, 0xeb61d4c7, 0x7439135d, 0x547fa78b,
+0x70a3a479, 0xd3200ea9, 0x3382d3c5, 0x1d9de4d8, 0xc343d60f, 0x8bd1e0e7,
+0xe4a541db, 0x5328df3a, 0x4e725ef6, 0x6c97f0e1, 0x221ff24d, 0x3ff691dd,
+0x3f856ea6, 0xf720842b, 0x7fae7374, 0x957b0aaa, 0x9f99a156, 0xe33eec87,
+0xe6761738, 0x792b71de, 0x05a6d387, 0x1e0a3b84, 0x9f7cfc15, 0x4cf4e3c7,
+0x5ee79441, 0x596c285a, 0xba89f481, 0xfa61af2c, 0xe7049f78, 0x59584da5,
+0xd4490299, 0x20933317, 0xee435639, 0x4cc83a0a, 0x86492fdb, 0x162613dd,
+0xc76fce3c, 0xaa454f8f, 0x1816c686, 0x5fc2c514, 0x83501909, 0x3685c367,
+0x46b2b281, 0xcdbef634, 0xd210178c, 0xffbff6e3, 0xed30aac0, 0x3196cc93,
+0xb848dda0, 0x5e2003b4, 0xc3e87650, 0x01a00bf2, 0x74a2d59f, 0x21b75986,
+0x6434d546, 0x8aefc874, 0xdaad3c0d, 0x3d23cfb2, 0x64e46cff, 0xded52526,
+0xd922d31f, 0x5bc9f960, 0xa748f3b5, 0x0da1da76, 0x7f5d4c6d, 0x0be533c1,
+0x2b7e40d0, 0xe25059b6, 0x97848fc2, 0x53a3d340, 0x532cda5d, 0x6f4567dd,
+0x9ca35dee, 0x034d1a87, 0xdd67abcf, 0xa5bca719, 0xadf605ca, 0x58206c3f,
+0x74533a11, 0xfe0f5ffc, 0x2a686617, 0xf6718993, 0x74c9d10a, 0xf056f283,
+0xd0203300, 0x6170b2cc, 0xf866b11d, 0x9469442f, 0x61b8960d, 0xd6030148,
+0x8bd2439f, 0xd60a4ba8, 0x4cbd1d64, 0xe2c713ee, 0x4259e3c9, 0xf2f5f436,
+0xcef487d1, 0x52f60b3d, 0xabf6637d, 0x97396dfe, 0xfe44b265, 0xd882ff2b,
+0x11a3cdcc, 0x206e
+
+ea =
+13068
+
+eb =
+13068
+
+cab =
+2
+
+c =
+3
+
+c_neg =
+0
+
+k_pos =
+4352
+
+k_neg =
+4288
+
+ncb_pos =
+13152
+
+ncb_neg =
+12960
+
+r =
+0
+
+rv_index =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_CRC_24B_ATTACH, RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
diff --git a/doc/guides/tools/testbbdev.rst b/doc/guides/tools/testbbdev.rst
index 7e6a4db..060164c 100644
--- a/doc/guides/tools/testbbdev.rst
+++ b/doc/guides/tools/testbbdev.rst
@@ -62,8 +62,7 @@ The following are the command-line options:
 
 ``-e EAL_PARAMS, --eal_params EAL_PARAMS``
  Specifies EAL arguments which are passed to the test app. For more details,
- refer to DPDK documentation at
- http://doc.dpdk.org/guides/linux_gsg/linux_eal_parameters.html.
+ refer to DPDK documentation at http://dpdk.org/doc.
 
 ``-t TIMEOUT, --timeout TIMEOUT``
  Specifies timeout in seconds. If not specified timeout is set to 300 seconds.
@@ -82,8 +81,8 @@ The following are the command-line options:
 ``-v TEST_VECTOR [TEST_VECTOR ...], --test_vector TEST_VECTOR [TEST_VECTOR ...]``
  Specifies paths to the test vector files. If not specified path is set based
  on *$RTE_SDK* environment variable concatenated with
- "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default
- data file.
+ "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default data
+ file.
 
  **Example usage:**
 
@@ -93,7 +92,7 @@ The following are the command-line options:
  ``./test-bbdev.py -v turbo_dec_test1.data turbo_enc_test2.data``
   The bbdev test app is executed twice. First time vector is filled based on
   *turbo_dec_test1.data* file and second time based on
-  *turb_enc_test2.data* file. For both executions all tests are run.
+  *turbo_enc_test2.data* file. For both executions all tests are run.
 
 ``-n NUM_OPS, --num_ops NUM_OPS``
  Specifies number of operations to process on device. If not specified num_ops
@@ -139,7 +138,7 @@ There are 6 main test cases that can be executed using testbbdev tool:
 * Latency measurement [-c latency]
     - Measures the time consumed from the first enqueue until the first
       appearance of a dequeued result
-    - This measurement represents the full latency of a bbdev operation
+    - This measurment represents the full latency of a bbdev operation
       (encode or decode) to execute
 
 * Poll-mode Throughput measurement [-c throughput]
@@ -170,49 +169,66 @@ It runs all tests with following vectors:
 
 - ``bbdev_null.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
 
-- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+
+- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data``
+
+- ``turbo_enc_c1_k40_r0_e1194_rm.data``
 
 - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
 
-- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
+
+- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+
+- ``turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_posllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
 
 - ``turbo_enc_c1_k40_r0_e272_rm.data``
 
 - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
 
+- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+
+- ``turbo_enc_c1_k456_r0_e1380_scatter.data``
+
+- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
 
 - ``turbo_enc_c1_k6144_r0_e120_rm_rvidx.data``
 
-- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
-
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18444.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data``
 
-- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+- ``turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18448_crc24a.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
-
-- ``turbo_enc_c1_k40_r0_e1194_rm.data``
-
-- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
 
 .. code-block:: console
 
-  ./test-bbdev.py -v app/test-bbdev/turbo_*_default.data
+  ./test-bbdev.py -v app/test-bbdev/test_vectors/turbo_*_default.data
 
 It runs all tests with "default" vectors.
 
@@ -227,36 +243,44 @@ Running Tests
 -------------
 
 Shortened tree of isg_cid-wireless_dpdk_ae with dpdk compiled for
-x86_64-native-linux-icc target:
+x86_64-native-linuxapp-icc target:
 
 ::
 
  |-- app
      |-- test-bbdev
          |-- test_vectors
-             |-- bbdev_null.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
+             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
+             |-- turbo_enc_c1_k40_r0_e1194_rm.data
              |-- turbo_enc_c2_k5952_r0_e17868_crc24b.data
-             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
+             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
+             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_posllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
              |-- turbo_enc_c1_k40_r0_e272_rm.data
              |-- turbo_enc_c3_k4800_r2_e14412_crc24b.data
+             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_enc_c1_k456_r0_e1380_scatter.data
+             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
              |-- turbo_enc_c1_k6144_r0_e120_rm_rvidx.data
-             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18444.data
-             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
+             |-- turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18448_crc24a.data
-             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
-             |-- turbo_enc_c1_k40_r0_e1194_rm.data
-             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
 
- |-- x86_64-native-linux-icc
+
+ |-- x86_64-native-linuxapp-icc
      |-- app
          |-- testbbdev
 
@@ -265,7 +289,7 @@ All bbdev devices
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -v turbo_dec_default.data
 
 It runs all available tests using the test vector filled based on
@@ -279,7 +303,7 @@ baseband turbo_sw device
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -e="--vdev=baseband_turbo_sw" -t 120 -c validation
   -v ./test_vectors/turbo_* -n 64 -b 8 32
 
@@ -307,16 +331,39 @@ baseband_null device does not have to be defined explicitly as it is created by
 
 
 Test Vector files
------------------
+=================
 
 Test Vector files contain the data which is used to set turbo decoder/encoder
 parameters and buffers for validation purpose. New test vector files should be
 stored in ``app/test-bbdev/test_vectors/`` directory. Detailed description of
 the syntax of the test vector files is in the following section.
 
+Naming convention for test vector files
+---------------------------------------
+
+The TV file name should follow this syntax:
+
+``turbo_<enc/dec>_c<c>_k<k>_r<r>_e<e>_<extra-info>``
+
+- ``<k>`` is k_pos in case of c > 1
+- ``<r>`` can be 0
+- ``<e>`` is the eb in case of c > 1
+- Remember to put the letters (c,k,r,e) before the nummber to help the reader to
+  know what the following number represents
+- ``<extra-info>`` should be pretty much based on op_flags, sperated by underscore
+  "_", and should be from this list and in the exact order as follows:
+
+  #. ``crc24a/crc24b`` : based on type of crc perfomed, remove if not crc is performed
+  #. ``sbd`` : in case that rate subblock deinterleave is not bypassed
+  #. ``rm`` : in case that rate matching is not bypassed
+  #. ``teq`` : when performing turbo equalizer
+  #. ``rvidx`` : in case that rv_idx is bypassed
+  #. ``negllr/posllr`` : for type of LLR used, remove if not soft out enabled
+  #. ``scatter`` : in case the buffer is scattered (split)
+
 
 Basic principles for test vector files
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------
 Line started with ``#`` is treated as a comment and is ignored.
 
 If variable is a chain of values, values should be separated by a comma. If
@@ -351,7 +398,7 @@ documented in *rte_bbdev_op.h*
 
 
 Turbo decoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo decoder it has to be always set to ``RTE_BBDEV_OP_TURBO_DEC``
 
@@ -528,7 +575,7 @@ Following statuses can be used:
 
 
 Turbo encoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo encoder it has to be always set to ``RTE_BBDEV_OP_TURBO_ENC``
 
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 4/5] test-bbdev: update of bbdev test-app
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 4/5] test-bbdev: update of bbdev test-app Nicolas Chautru
@ 2019-05-14 19:45     ` Nicolas Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Updated to match support in PMD drivers
for FPGA and 5G SW implementation.
Extending test framework for FEC 5G operations
Addition of test vectors for 5G LDPC

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    2 +-
 app/test-bbdev/test-bbdev.py                       |    9 +-
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1224 +++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  517 ++++-
 app/test-bbdev/test_bbdev_vector.h                 |   14 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data |  939 ++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v14298.data   |  377 +++
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 .../test_vectors/ldpc_dec_v8568_low.data           |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 ++++++++++
 .../test_vectors/ldpc_dec_vcrc_fail.data           | 1216 ++++++++++
 .../ldpc_enc_c1_k1144_r0_e1380_rm.data             |   51 +
 .../ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data      |   51 +
 .../test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data  |   44 +
 .../test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data  |   47 +
 .../ldpc_enc_c1_k720_r0_e864_rm_crc24b.data        |   47 +
 .../ldpc_enc_c1_k8148_r0_e9372_rm.data             |  110 +
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 ++
 .../test_vectors/ldpc_enc_v3964_rv1.data           |   52 +
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 .../test_vectors/ldpc_enc_v8568_crc24a.data        |   69 +
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++
 .../turbo_dec_c1_k160_r0_e23040_teq_negllr.data    |  784 +++++++
 ...o_dec_c1_k160_r0_e23040_teq_negllr_scatter.data |  786 +++++++
 .../turbo_dec_c1_k160_r0_e23040_teq_posllr.data    |  784 +++++++
 .../turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data    |  352 +++
 ...44_r0_e12248_crc24b_sbd_teq_negllr_scatter.data | 1034 +++++++++
 ...urbo_dec_c1_k6144_r0_e34560_negllr_scatter.data |  647 ++++++
 ...bo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data |    5 +-
 ...turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data |  991 ++++++++
 ...c_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data |  993 ++++++++
 ...turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data | 2449 +++++++++++++++++++
 ...c_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data | 2451 ++++++++++++++++++++
 .../turbo_enc_c1_k456_r0_e1380_scatter.data        |   44 +
 ...urbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data |  328 +++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 doc/guides/tools/testbbdev.rst                     |  125 +-
 52 files changed, 22282 insertions(+), 165 deletions(-)
 create mode 100644 app/test-bbdev/ldpc_dec_default.data
 create mode 100644 app/test-bbdev/ldpc_enc_default.data
 mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
 create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 100644
index 0000000..e1df6ea
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_HARQ_1_1.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 100644
index 0000000..9901517
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
\ No newline at end of file
diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..653907d 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -6,4 +6,4 @@ sources = files('main.c',
 		'test_bbdev_perf.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
-deps += ['bbdev', 'bus_vdev']
+deps = ['bbdev', 'bus_vdev']
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
old mode 100755
new mode 100644
index 25340ec..a94ba9a
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -23,7 +23,7 @@ def kill(process):
 if "RTE_TARGET" in os.environ:
     dpdk_target = os.environ["RTE_TARGET"]
 else:
-    dpdk_target = "x86_64-native-linux-gcc"
+    dpdk_target = "x86_64-native-linuxapp-gcc"
 
 parser = argparse.ArgumentParser(
                     description='BBdev Unit Test Application',
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..dc7ee1d 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,57 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set pf mode, true if PF is used for dataplane,
+		 *  false for VFs
+		 */
+
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +783,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +822,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +868,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +887,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +942,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +976,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +997,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1106,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1305,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1386,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1423,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1456,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1489,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1526,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1553,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1568,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1619,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
+
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
 		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
 
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
 		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1706,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1730,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1775,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1798,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1883,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1898,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1987,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2098,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2285,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2298,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2451,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, itr mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2474,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2494,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2542,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1860,9 +2584,11 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2666,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2804,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2907,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2916,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2995,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3029,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3060,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3162,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3195,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3223,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3341,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3369,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3395,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3501,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3517,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..d478d76 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -2,7 +2,7 @@
  * Copyright(c) 2017 Intel Corporation
  */
 
-#ifdef RTE_EXEC_ENV_FREEBSD
+#ifdef RTE_EXEC_ENV_BSDAPP
 	#define _WITH_GETLINE
 #endif
 #include <stdio.h>
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..c8d38e3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,354 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..19a1537
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,685 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..d1f8f45
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,903 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
new file mode 100644
index 0000000..2588655
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
@@ -0,0 +1,939 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_HARQ
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x07151003, 0x09FBFA0E, 0xFB0BF9EE, 0xFC1306F8, 0x0BF6FCFB, 0x0407F709, 0x0CF30FF1, 0x10F7070F,
+0xFEFB0EF8, 0x0F0B12F5, 0xF3F506F2, 0x0B05F0F0, 0x00FA050B, 0xF40C15F6, 0xF7FAF5F5, 0xF7EC140A,
+0x05F20C0D, 0xF6060D10, 0xF90FF8EF, 0xEF08F20D, 0xF8F9F80D, 0x06F4F5ED, 0xFD12F3FE, 0x0610F30D,
+0x0312EEF8, 0x0DFB03F8, 0x01031408, 0xFD0E02F3, 0xF1EE0AFF, 0x0AF609F8, 0x1503FAFC, 0x0DFF04FD,
+0xED0F0F0F, 0x0CF7FE0C, 0x1006F1EE, 0x14EEF00A, 0xEE0AF2F2, 0x0BED04F2, 0x0612F5F2, 0x0FF314F4,
+0x00F00D04, 0x08140509, 0x05EC0E18, 0xF40B09F8, 0xE90F01EF, 0x0DFDFB02, 0x07EF10F3, 0x03F211ED,
+0xEF16FD00, 0x06F4040A, 0x0B0BF910, 0x0B0206F8, 0x0D0109ED, 0xECF2F006, 0xFFF50A07, 0xFB06F5F7,
+0x0D0EF210, 0x07010611, 0x06F2F9F8, 0x0E06EF00, 0x070CF1F8, 0x0C0FF405, 0x10EA0CF6, 0xFDEF0B14,
+0x17FCF80C, 0x08F506F4, 0x09000AFF, 0xFA05F50C, 0x040DF9F6, 0x0A0B12FD, 0x12F41201, 0xF20707F3,
+0xFDF402F8, 0xFDFB0FF0, 0xEE070D05, 0xE9F0F006, 0xFCF8F1F4, 0xF9FA0F0D, 0xE9050B09, 0xEEF2140D,
+0x020AF5F8, 0xFBED0CF6, 0xF110F4EF, 0x0C07130A, 0xEF12FD0A, 0xF6050708, 0x10F1FA00, 0x0B0CF40D,
+0x04F5FBFF, 0x00EEF2FF, 0xEFF9F701, 0xFA140DF8, 0xF404ECFC, 0x0A04EDF9, 0x0213080C, 0xF1F60916,
+0xF0F40000, 0x1303F614, 0xF009FFF2, 0xF8F5F2FA, 0x0B0C0414, 0xFB0E0EFA, 0x12010B11, 0xF50EFA05,
+0xF4FBFA09, 0x130605EF, 0x0B030B0E, 0x0717E7F3, 0xF405FDF5, 0xEFF5EAFE, 0x07F9F3FB, 0xF9FD0812,
+0x0DF70A16, 0x05F210F4, 0x06F708F3, 0x040C0EF9, 0x090D0AF2, 0x02FFF9FB, 0xF7F5FD12, 0xFF0BF5FB,
+0xF1F60A0C, 0x01EF13FD, 0x070BED0D, 0xF10A0BF7, 0x01010BF4, 0xF703FBF6, 0x06FAFA05, 0x050CEFFD,
+0x1107EE00, 0xF5EEFBF0, 0xF3EF0615, 0xF203FC12, 0x0FEC000B, 0xF70C0C06, 0x04F6EE0E, 0x0EF1070C,
+0xFE0D0A10, 0xF6EC0CFA, 0xF5060D07, 0xF708E8F0, 0xF5EEFDF7, 0xEE09F6FD, 0x020AEEFC, 0x090BE811,
+0xF70CFCF7, 0xEFF809F1, 0xF00AF1F5, 0xF00C0CFB, 0xFC0AF4FF, 0xF8FB0817, 0xEEEFFA04, 0xFB04EC08,
+0x02F411FE, 0xFCFDF2F4, 0x06EB0307, 0xF905F108, 0xF4ED09F7, 0xF7FFF010, 0x0CF601E8, 0xEEF714F0,
+0xF502EFFA, 0x0A000AF1, 0xF5F30501, 0xF1F008F2, 0xFD06EC11, 0xE9FA02FF, 0x0A15F6F4, 0xF307080C,
+0x10F7F20B, 0xF9F90402, 0x09FEF315, 0x0DFA060B, 0xF6FC08F7, 0xF707FB06, 0xF00A050E, 0xF40608FD,
+0xF6F8F1F5, 0xFAFBFDF7, 0x0AFA0A11, 0x03080C09, 0x11F1F8FF, 0xFF000CE9, 0xF7120C0A, 0x05F4FD03,
+0xF5030203, 0x0C0914F8, 0xFDF8080B, 0x12FBFD0A, 0xF308FF09, 0xF9FA0B14, 0x0EF71117, 0xF50AF2EF,
+0x0D160610, 0xF2FBFE0F, 0xF907F5FC, 0xFE110707, 0x0D0BF9F7, 0xFC050808, 0x0B08F5FC, 0xF206F1F9,
+0x1DF5FAFF, 0x0BF0060C, 0x020C110E, 0xFB040007, 0x02F4F4F8, 0x0D100EF0, 0x110201F3, 0x06F5EA00,
+0xF4E80DFE, 0x0A0E0A01, 0x07FB0DF7, 0x06E7F712, 0xFDFE06F9, 0xF4F00CF0, 0x0809F5F9, 0xF30CFA09,
+0x16F6EFF2, 0xFEF6EBFA, 0x0D0E090D, 0xF70DEF08, 0xF015F0F3, 0x15011206, 0xF305ECF2, 0x180301FC,
+0xFBF2F1F8, 0x05F9070F, 0xFC0C0813, 0xF3F9F2FD, 0x11F30EEF, 0x00FCEDFE, 0x0D05F810, 0x10F7FDF9,
+0xF9EA0AE9, 0x0BFA08F3, 0xF90505F8, 0x10FA0DF8, 0x14FB14FE, 0xF0F6EDF3, 0x0D03F8FC, 0x0AF00E0E,
+0x0C000203, 0x08F81612, 0xFAF1FFF9, 0x100CFDF3, 0xF609F1FA, 0xF5FB14FC, 0x0CFD0808, 0xF000FE0D,
+0x04F7070A, 0x12F50F00, 0xF90FEE08, 0x110CEFFA, 0x090C0B0A, 0x0D0B0DF4, 0x0EFBF80C, 0xFC030604,
+0x09F804FA, 0xF2F709F5, 0x08FF0F13, 0xF2FAFA02, 0xF101F512, 0x0E0B07F4, 0xF60FF9F7, 0xFBF4F107,
+0x05F6FD07, 0x0EEC080C, 0xFBFBFFEE, 0xF713FCF8, 0x0D08F6FB, 0x1612060D, 0x120DF4FE, 0xF50AECF5,
+0x02F00BF5, 0x0A05FF10, 0x0C020A06, 0xFAF4EB0E, 0x03F7F8F3, 0x13F4F9F5, 0xF70BF00D, 0xF302F614,
+0xF00A04F6, 0x0BFA100F, 0x0BF70B0A, 0x020713F4, 0x06F7F5E7, 0xF905F101, 0x04090812, 0xFFF9090C,
+0xF8F4F3F5, 0xF1FE07EF, 0x03FC0708, 0x03FFFCFF, 0xEEF90812, 0xFDF7FC0A, 0x150A0008, 0x09FFF3F9,
+0x06F2F2F1, 0xF0120BEF, 0xF90CF3F7, 0xF804ECFB, 0xF7E806F5, 0xFF0109FD, 0xEB08E70D, 0xF2FAF40C,
+0x06F70DED, 0xF1120216, 0xFF060DFB, 0x0EE70D01, 0xF5FFF6FF, 0x07F0ED0D, 0xF10A0C07, 0xF4F0EF0C,
+0x09F607F7, 0xF80BFF00, 0x030E07F4, 0xF80813F4, 0xEFF8F80F, 0x0AF2FC0B, 0xF303F4F0, 0xF1F9F5FD,
+0xFDF90402, 0x04FDF203, 0xF51B0EEF, 0x03F2F0FC, 0x07FC11F1, 0xF5F60F11, 0xF00D0907, 0xF317F20B,
+0x10031C00, 0x04F40009, 0xF011090D, 0x1006000B, 0x16FF0FF8, 0x0DF61110, 0x0CF70D04, 0x02F8F7FF,
+0x06FE0B09, 0x0D08F8F8, 0x080DFB06, 0xEF0F0E0C, 0xFF0CF908, 0x0305FDF4, 0xF4EE0E10, 0x08EA05EE,
+0x0B0A06FD, 0xF9FBFFFD, 0x0EF20605, 0x0EF2F6F7, 0x01FE0EF9, 0xF50107F7, 0x04F80616, 0xFEEEF4F3,
+0x140D08FB, 0x0F0C03F4, 0xFBF8FC01, 0x0D02EBF9, 0xED06F905, 0x1FF8F0F4, 0x0E0CF3FE, 0x0DF31402,
+0xFD0E07F2, 0x06F4F60C, 0x02150B06, 0xFCF2E901, 0x07F5F7F4, 0x02F017E6, 0x00F90305, 0x1008FD0D,
+0xF5F10B08, 0x09FB04F6, 0xFCF702F4, 0xF10F15F0, 0x071213FC, 0xF5EB0F08, 0xFDF6F005, 0x12EEFC18,
+0xF0FC0606, 0xFC0D0DF9, 0x0709ECFD, 0x0A0608F7, 0xFEEE14F0, 0xEDF60AFE, 0xED04090C, 0x12F50BF3,
+0x01F6010D, 0x0BEAF019, 0xF0080EF5, 0xFB08F2ED, 0x07120BFB, 0x040612F1, 0xFF0A10F0, 0xF6F4F30D,
+0x0D0700F9, 0xF6EC0BED, 0x030D010E, 0xF300F813, 0xEFF70FF7, 0xF2020D0B, 0xFC0B0AF0, 0xFA02F4F2,
+0x0E0BF005, 0xEE04F6F9, 0x1302F9F3, 0x08150603, 0xFB0D0407, 0xFFFFF7F8, 0x050FF8EF, 0xF4F6F3F9,
+0xEFF707FD, 0x04FBF5F0, 0x0DFCED00, 0xF10BEEF9, 0x07F80A12, 0xFBECFEF7, 0x06F3F704, 0x06EFF9FD,
+0x0016FF04, 0x03E41207, 0xEFF6EE14, 0x0802F413, 0xFE010A05, 0xF20403F8, 0x1AFBF816, 0x12EC100D,
+0x0EF70707, 0x04E6100E, 0xEF090D01, 0xF5EE1CF4, 0xF4F50609, 0xEFFFF50C, 0xF2F0FC05, 0x0102160B,
+0xF41015F9, 0x12F1F70C, 0x0FFFF10B, 0x0EF2F40B, 0xF8FD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF71108,
+0x05F30A06, 0xF7090DF0, 0x031AF9FB, 0xF8EC1A08, 0xF4EEF509, 0xF20202F6, 0x0E0B050F, 0xFBFBF30D,
+0x09ED0C0A, 0xF0F6FAF7, 0xF7FB04EB, 0x08ECF8FA, 0x0E10ECFC, 0xED040314, 0xE9EF0CF4, 0xF6F904FD,
+0xF7000001, 0xEFF01007, 0xFF0C1302, 0x05F4F2FC, 0xF908FB0B, 0xECF80AFE, 0xFDF7F302, 0xEA12EFF0,
+0x0F0F0D07, 0xF6FC0103, 0xF40607F5, 0xF2EF0FF9, 0xF6070005, 0xF40503FA, 0xEE0B06F8, 0x0100050A,
+0xF913F7FD, 0xF5EF0B01, 0xFDEEFBFF, 0xEEEDEA03, 0xF8F7F80F, 0x070D0F0C, 0xF50502F0, 0x0BFBF001,
+0x0A0CF008, 0xF6ED070B, 0x1A020DFE, 0xFDF2F818, 0x09010BF9, 0xF6ED0308, 0x040EFA02, 0xF9F2FB10,
+0xEF100B07, 0xF5FAF50C, 0x0F0CE9F9, 0xFB0E1304, 0xF103070D, 0x0CF3020D, 0xF80FF705, 0xFB1205ED,
+0xF5F1EB00, 0x0D070C1B, 0x0DF704F4, 0xF107FE09, 0xEF03F8F6, 0xFA020509, 0xFDF40A14, 0x16081215,
+0x09F5F7F6, 0x0EF8F6F0, 0x0AFB0EEE, 0xF3FC02F9, 0x0812EE0C, 0xFCF90710, 0xF6EA00F5, 0x0A04F0FB,
+0x09F7EE0B, 0x13F3F4F5, 0x11F718EF, 0x0CFC0BFC, 0xF70AEAFE, 0xFCF201FB, 0xF4000F01, 0xFBEE11EC,
+0xF70AF4FA, 0x0D020BED, 0x08FE090D, 0xF907F6FC, 0xFAF2F309, 0x0D10FD0C, 0x0E06FAEE, 0xFCFBFE06,
+0x15F8F4FC, 0x020D160B, 0xFFF4FB0C, 0x04FDE8FC, 0x090C120B, 0x0B1010F2, 0xF9EE0DF3, 0x0C03080D,
+0xF109FCFD, 0x0CF8EB11, 0x0604EE08, 0x07F8F4F6, 0xF807F8F8, 0xFCF51400, 0x050EFD0F, 0x0C0CF216,
+0xF9FFF20D, 0x0802F50D, 0xF50213F5, 0x0C0BF804, 0xF609F8EF, 0xF90AF509, 0xF914FEFA, 0xF10BEA0A,
+0xF8F3050A, 0x10F5F6FF, 0x0A120BFD, 0xF5F5ECF9, 0xF90DFC0C, 0xF20808F1, 0x01EEF00D, 0xF5EC0FF2,
+0xF4F30EEA, 0xEFFAF702, 0xFC17F6F7, 0x0C07F6FE, 0xF1ECF9FF, 0x09FEF4FF, 0xFA020B11, 0xFFEDFC0B,
+0x07F4ECFA, 0x02F6F6F4, 0x09F712F1, 0x0806EA0E, 0xF7F7F81A, 0x0B08EF07, 0x100CFCF7, 0xEFFB08F2,
+0xFAF0FD0C, 0xF3F31111, 0x16F5000F, 0x0DF10608, 0xFA07F3F3, 0x13F108FE, 0xEDEB120E, 0xFFF4F005,
+0x07F304F9, 0xF408FCFC, 0xFCFE0500, 0xF5F6ECF3, 0xF70609F3, 0x09020C01, 0x1001F80F, 0x0C0DFCF4,
+0xFB0F10F2, 0xF7F50B0B, 0x08F2F4F8, 0xF70BF6F8, 0x18F60808, 0xF107F9FC, 0x13F3F40C, 0x00EC0AFB,
+0x0BF30711, 0x06FFF70E, 0x17FC0AF4, 0x04E412F7, 0x0FF7FEF4, 0xFCF80209, 0x13FDED0D, 0x02F00801,
+0xF5070E05, 0xF111F6F1, 0x00F4E4FA, 0xF90E0E00, 0x07F4F50F, 0x0E0C0FF8, 0x14F70B0A, 0x09F6F4F7,
+0xECFD07F4, 0xF0070A04, 0x0112FAF3, 0xFF11EFF5, 0xF8F90905, 0x0409F507, 0xEAF7FBE9, 0xF1F5F0FF,
+0xF6F8F50F, 0x0BEA040A, 0xF701EFF1, 0x0D04F703, 0xEB07FE09, 0x1309F8E7, 0xF80BF3F8, 0x0EF6F50A,
+0x0912F6F1, 0x05FA0314, 0x0719F6EF, 0x1204FAE5, 0x0C0BF9FD, 0x0AF411EF, 0xF4F8EEF3, 0x02F0F10C,
+0x0F030107, 0x0AFEEF01, 0xFE0806F1, 0xF6F3FF15, 0x0B07E9F5, 0x05F9FB08, 0x03F8F3F5, 0x0FF7FD0E,
+0xF50DF7F8, 0xF6F7FEFF, 0x12F4F306, 0xFE05FB0B, 0xF2F2F2F6, 0xFAFB00EE, 0x0E110F06, 0xFA000CFD,
+0x0E02110A, 0xFA07E902, 0xF9FCF6F0, 0x0E08FCF5, 0x0514EFFB, 0xFDEEF4F8, 0xF9F70004, 0x0B07F9EC,
+0xE5140FF1, 0xF8090E06, 0x09EBEF0B, 0xFB0D0D09, 0xECFD0AF8, 0x0A02F512, 0xF504F90E, 0x0DF3030B,
+0x1002F20C, 0xFBEAFB02, 0x0AFD0805, 0xF1F1F6F4, 0xF807EFF7, 0x010107FA, 0xEE0DF6F9, 0xF90A0CFA,
+0x10F6F50C, 0x0B0B16FC, 0xF608F305, 0xFD15F308, 0xF9121515, 0xFA0BFF0A, 0x04F7FF0D, 0x0CFB03FB,
+0xFD160B0A, 0xFDEFF5FB, 0x0C17090A, 0x08090B09, 0xEAF5F5F8, 0xFFFB00FC, 0x0800FFF6, 0xF111E612,
+0x00F2F6F5, 0xFAEFEDF4, 0x0F0FFCFB, 0xF01009F8, 0xF6F4EFF7, 0xF3F0FB05, 0xFE02FAFD, 0x12EFF5F4,
+0xF3090907, 0x0B07FC11, 0x0CED110F, 0xF00709F5, 0x03FEF2F6, 0x04F702FA, 0xFB0C05F9, 0x09FAFC12,
+0x08F20E06, 0xFEE80BF5, 0x0AEA10EC, 0x08FAF1F8, 0x0A1012F8, 0x0306F6FD, 0xFB050811, 0xFFF80E05,
+0xF6F51212, 0x0705000B, 0x07F809F7, 0x07091503, 0x080B04F7, 0xF20DFDEF, 0x0809EEF2, 0x0F0D0C05,
+0x02FFF90E, 0x050A0EF4, 0xF4EEFF00, 0x08F5EDF5, 0xF1FFF500, 0x0DF4F80D, 0x03F614F6, 0x17F6FC12,
+0x08050A04, 0xF5E5F210, 0x0B0004FA, 0xFCEF101E, 0x0BFFFB05, 0xFEF202FD, 0x0A05F703, 0x090DF8FD,
+0xFF0904FE, 0xF90816F8, 0x0315FE06, 0x02F9E0F5, 0x1A07001D, 0x120EFE0A, 0x0F0D1305, 0x13FEFA14,
+0xF2EE0D03, 0x070D0202, 0xEFFA10ED, 0xF1040B11, 0x04FDF103, 0x01F2FAF2, 0x010CF60D, 0xF6E9EF04,
+0x050C10F8, 0x09F6F600, 0xEFF5F909, 0x05F40D0E, 0x08FA0A1B, 0xF9F40803, 0xF7F9040B, 0xFB10FBF9,
+0xF60810F5, 0xF0060BEE, 0xE60FEEFE, 0x07140DFA, 0x070F0D11, 0x020402F5, 0xEDF905F4, 0xF6F0F9EA,
+0xFC1404FF, 0xF10B13F9, 0xFF0FF80D, 0xF403EE0C, 0x0C0E0706, 0x05170E07, 0xF1F7F40F, 0xEFED0EF8,
+0xF8EF0D12, 0x0CFFF6F8, 0x0E090906, 0xF4F40612, 0x090C0301, 0xEF0A12F6, 0x0AF506F9, 0x0D0BFB11,
+0x0A0EF50C, 0x140BF6F9, 0x0DECFEE8, 0xF6F50004, 0x0C00080C, 0xF5EC11F2, 0x03F9EC0E, 0x0411FA09,
+0x11F70B03, 0xFDEA0301, 0x0BF805F6, 0x05EF090A, 0x11FC04FD, 0xF4F3FD09, 0x0AF50614, 0x0CF40B07,
+0x0D010BF5, 0x14071602, 0x070AF80A, 0x11F3F113, 0x0CFA0B0E, 0x0DF8EDEF, 0xEEF9F308, 0x10F6F1F7,
+0xF5F7F6F5, 0x10050304, 0x07F50AF4, 0xF4F9FEF6, 0x0B02FD0B, 0xF210FCED, 0x04ED0BE9, 0x18FAFA0E,
+0xF5F308F2, 0xE90808F9, 0xFA0CEAFF, 0x06F103FC, 0x0CF705F2, 0x08130D0F, 0x060A08F7, 0xF5FFEEF3,
+0x080C0FF6, 0x0CF6EE06, 0x0F1E06EB, 0x080D0CFA, 0x16F7F5F5, 0x100AF0EE, 0xF4EF020B, 0x04F1F313,
+0xFD07FDF5, 0x110FFBF9, 0x0C081A0C, 0xF7FAF4F8, 0x01F6EB07, 0x100BF7F8, 0xF302F50F, 0x0809EBF9,
+0xF0FDF708, 0x00090DF7, 0xF30100EF, 0xF8F7FDF5, 0xEE000AFB, 0x1C0BF8FA, 0x1004F409, 0xF3ECEF0E,
+0xF51209F1, 0xEAFEF402, 0x0EFC1310, 0x01F8F7FB, 0x0B06F314, 0x0710F90B, 0x03F1F9ED, 0xFA13F2F1,
+0x0907FA02, 0x02FA0601, 0xFD13F708, 0x06FDFA0F, 0x0F04060C, 0xFC03EBF7, 0xEB051312, 0x03FAFFFB,
+0x0BF70708, 0x0312F60C, 0xEC0203EF, 0x0B0AE308, 0xF9FAEEEF, 0xECF30901, 0x050F060B, 0x0003F102,
+0x10FE0AF2, 0x0205F6F5, 0x0112F609, 0xFA03E90B, 0x0B11FF01, 0x0213F107, 0x01070809, 0xEFED0209,
+0xFCEEF50D, 0xF2EDF3FF, 0x070F180D, 0x0E0A14F9, 0xFBF3F3FA, 0xF603F20A, 0xFEF2040A, 0xF7F50D08,
+0xECFE06F1, 0xF100FA0F, 0x0B02FCEB, 0xFF0A0DFC, 0xED00FAF2, 0x0AF307EF, 0x10F0F9F7, 0x060F0DEF,
+0xF4090C10, 0xF10A0A05, 0xF1FBF2F9, 0x0EF9F70A, 0xF502130C, 0x0CF20F0B, 0xFF0F0FFA, 0xFFFFEE0F,
+0x08F5090B, 0x0C090E07, 0x00FBF602, 0xF6F7F404, 0x0DF005F1, 0xF9F7F50C, 0x03F6F5F9, 0x0A1202F8,
+0x0AECEF05, 0x00F5F708, 0x0D0704F6, 0xF4041510, 0xFC050F05, 0xFFEB0BF1, 0xFD0CEDFD, 0xFB05070D,
+0xFD08EDF7, 0xECFCF505, 0xF9F7F8F3, 0x0DFE17F7, 0xF1040310, 0xF403FAFD, 0xF110F6FB, 0x12EF090B,
+0xFDEFF610, 0x0AE7F7F5, 0xF7FBF1FD, 0xFFF5F0F8, 0x06F1F0F0, 0xF8F7010C, 0x0B101AF7, 0x14F60109,
+0xFFFB0FEB, 0x09FE020C, 0xF70BEA10, 0xFFFB0DF4, 0x000608F5, 0xFFF70FFD, 0x040FFA01, 0xF1FA0DFE,
+0x09F3040C, 0x05EEEDF7, 0x0BFAF8F0, 0xEF070A14, 0xFE07F1F4, 0xF5060B15, 0x0EF8070D, 0xEB06F811,
+0xF9F2F60C, 0xEAEEFD0A, 0xF4F1F0E8, 0xF4F01009, 0x1306120C, 0xF9F3F8FD, 0xF9030C0C, 0x1514130C,
+0xF80D06F6, 0xF304F1F9, 0xF7F5F4F7, 0x0006F10B, 0x11F204F7, 0xFC0D0A0C, 0xFE02F6F7, 0x0B06F30F,
+0x13F6FCF5, 0x0C0BFC06, 0xF61011F4, 0x040EF005, 0x1609FC13, 0xF60E060F, 0xF50DED17, 0x12F11106,
+0x0D0C01F6, 0x01FC00F4, 0xF8FCFEE8, 0x03EF03FC, 0x08000C11, 0xFDF3F407, 0xF6091406, 0x0CFC0B09,
+0x040DFD0B, 0xF90FF10B, 0xFBE4FAF9, 0xF7FC0802, 0xF2080D06, 0x06060DF0, 0xF803F20B, 0xF5EEF3FA,
+0xF4FA0EF3, 0xEF04F1EC, 0xF6ED0DF1, 0xF6FB14F6, 0xF50FFAFF, 0x0AE6F409, 0x0DF8FBF7, 0xE7F2F210,
+0xF1F80B0F, 0x0204FD09, 0x0FF707F2, 0xF4F00AF7, 0x0B07F7FC, 0x01F7F9F1, 0x0F0207F5, 0xF80A0E04,
+0x1106010F, 0xF71304F9, 0xF20EF006, 0x0FFE0915, 0x0F02F607, 0x0608FA02, 0xFF0DF2F5, 0x0AEC050E,
+0x06FA1118, 0xFCEFF8F7, 0xF8080D14, 0x010FEF0A, 0xF9FAF6EE, 0x0BF1FE12, 0xF0F30206, 0xFEF40FF1,
+0x0D1105EE, 0x04F6F0FC, 0x0D161006, 0xFC0C12F2, 0xF610FC03, 0xEAFE110D, 0xEBF6FC13, 0x08F3F00C,
+0x0DF501F9, 0xEAF80808, 0x1605F60F, 0xF5F90AFF, 0xF2F4F709, 0xF104EDFA, 0xF5F2F80A, 0x0CF806FB,
+0xF8F2FAF8, 0xF8F3F70E, 0xFE04FB02, 0xF80DF70D, 0xEF0EF4EC, 0xF6F1EEF4, 0x04EBF2EC, 0xF6F50FEF,
+0xEFFA03FB, 0xFFFEF50B, 0x0B0FFCFA, 0x12F715FA, 0xF312ED09, 0xFA04EDF8, 0x0D0DF510, 0x080E07EE,
+0xF90BEE03, 0x0916E91A, 0xFDFC0800, 0x05F70F0F, 0xFE1108FA, 0xFDF6FAF0, 0xF10FF20B, 0x171017E9,
+0xFEEFEEFE, 0x070AFCF8, 0xEAF4FCF3, 0x060A08EB, 0xEEF2FF04, 0x09F6FBF6, 0x07020207, 0x15F5F20B,
+0x18EB010B, 0xFB11F9FD, 0xFF030B08, 0xF3F80C0D, 0xF5F4F7FC, 0xFAE3F604, 0x0AEB1312, 0xEEF70C0A,
+0xF5EE06F1, 0xF614F500, 0x160EF6F2, 0x1A03F010, 0xF4FF0FEB, 0xF0110A17, 0x12FCED08, 0xEC03F5FA,
+0xF8F8020E, 0x0D0DF9F9, 0xF0F503FD, 0x05FCF8F0, 0xF20200FC, 0xF20017EF, 0xFA051100, 0x0D00F8FC,
+0xEF060A12, 0xF0FCF6F6, 0xFC0EFAEF, 0x03090F05, 0xF5040DF4, 0xF608F4F3, 0xF309EF03, 0xF1F2FBFE,
+0x0501050C, 0xF909040C, 0x0EFFFA06, 0xFA04F7F4, 0xF4F9FCED, 0xE9F7EFF8, 0xF8F1F6FC, 0xFE04010A,
+0xF4100BF4, 0xF11005FB, 0xF1FA00F4, 0x05F3F9EF, 0xF6ECFC0C, 0xF90B100A, 0x01FAEBF8, 0xEA0C0D0C,
+0x010E0D13, 0xF3F7F70F, 0x000F0AFC, 0xF9FB0DF5, 0xF1ED08F8, 0x10F902F4, 0x07F8F80B, 0xE9EE10F4,
+0x0F06F2F2, 0x07F50B10, 0x0DFD13F1, 0xF002F508, 0xF818F505, 0x0C0608F7, 0xF0E609F3, 0xEF0CFEF6,
+0x00010CFF, 0x0CF40E01, 0x0EEBF2EC, 0x02FDEDFB, 0x09F3F9FB, 0x13080005, 0x070FF509, 0xF9EC05F3,
+0x020AF0EB, 0xF1FAF3F9, 0xFDF80FF2, 0xF80BEF02, 0x13F003F7, 0x050418F4, 0x020F0BF5, 0x10F41309
+
+harq_input0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF41A1B0E, 0x16F213D5, 0x0A1AF508, 0xEB14E7EB,
+0x18E0F2EA, 0x13E6EFE4, 0x15E9E719, 0xEA12E9E7, 0x1527F215, 0x150C1EEB, 0xFFDDE61B, 0x1D212005,
+0xEDEE23EB, 0x1FDC0513, 0xE4FBE1F6, 0xFBFA03EB, 0xEC24181A, 0xDF1F16DC, 0xE2ED11F1, 0xF1F023E2,
+0x2416E00A, 0x15ECDF18, 0xEA0C21EF, 0xF0E4DCE8, 0xEB0E1701, 0x11EA0F1E, 0xE21808E4, 0x10EAF417,
+0xF71C1B10, 0x0DF8E1E5, 0x15120FF3, 0xE91CE6EC, 0xE3EAF610, 0x0D12FFF8, 0x0A081CE6, 0x0FE6E5F9,
+0xEBE5E3EB, 0xE1F41406, 0xF50BEBEA, 0xE41A0B14, 0xDCF40AE3, 0x0F1213DD, 0x0B1F2414, 0x1E1DF60C,
+0xDE0FEF06, 0x1D00E80E, 0x07020CEE, 0xF72C191C, 0x151FE815, 0xEEEE18E3, 0x1DEA1816, 0x19160E1C,
+0x12E8EC13, 0x23F9061B, 0xE7000DEA, 0x0C19F3EC, 0xE2EEEC22, 0x14F1EEE3, 0x00EA1BDE, 0x15EADE1E,
+0xDEF9ED20, 0x0FE90A20, 0xEFECFADB, 0x0AECF70C, 0xE4DD160D, 0x0921E31C, 0x1409E20B, 0xF211E414,
+0xE1F11A1B, 0x0ADA1716, 0x100CE6EF, 0x161513FE, 0xEEE416E7, 0x1D0724EE, 0xF12E13F6, 0x1117DF12,
+0x06E9E3F5, 0x141BE504, 0x0B12DEEA, 0xF2E0EEDF, 0x0DE9F7E5, 0xE1F0EC05, 0xF4F0091E, 0x1D1E26EA,
+0xF30CEC16, 0xED21F423, 0x170D04E5, 0x10ED140E, 0xFAEBECE3, 0x1414F729, 0xFCD6E8FD, 0xEF141A19,
+0x16EF0E0B, 0xF414EB14, 0xF3111711, 0x1AEDF125, 0xE9252B18, 0x150306F7, 0x101814F5, 0x12ED1509,
+0xE80CE6FB, 0x0B0F1210, 0x20F0ECF0, 0xEDF207F0, 0x160AE1F0, 0xDF1E04F6, 0xE9E5F4F1, 0x110717F7,
+0xF2F0EEE3, 0x16081818, 0x080E22EF, 0x0CF7F2E2, 0xE81BE6F2, 0xF1F31C1D, 0xF1F2E4E8, 0xF6F5131B,
+0xE8E9DDD5, 0xEEE20EF6, 0xEDE2F20B, 0xDF1613F8, 0xEB23FA00, 0x19E5F2E5, 0xFAF017ED, 0x1311EA1A,
+0xE9FCEA0E, 0x15E61F0D, 0x14EC1813, 0x0F14F718, 0xEEECF3F6, 0xF1F8071B, 0x10ED041A, 0xE01122EB,
+0xDE17ED0E, 0x17F6FEE3, 0x220F17F9, 0x0CE920EB, 0x0A1AE5EF, 0xED1C02EA, 0xEEF0EAE8, 0x0B1C1F18,
+0xEA190BFD, 0x1AE3E418, 0x09F6EFDC, 0xEA100821, 0xF5DFEAEA, 0x0CF6F30C, 0xF616E424, 0xF9EE160F,
+0x17DEE7E7, 0x16F513ED, 0x0BFAE0EE, 0xE8111010, 0x1C1AF2DA, 0xDD1418ED, 0xE11CF6E8, 0xEB090D0E,
+0x15FEEBEE, 0x1AEF20E7, 0xEC1FEA15, 0xF3F511EB, 0xF700F3FE, 0xECF828E5, 0xF319EDE0, 0x22181A1B,
+0xEC17FC0F, 0x15181A10, 0xEC19EBEE, 0xF1EEECFD, 0x17F3FA0F, 0x1416170E, 0x06E7180B, 0xE3E6DC1A,
+0x06FF1A07, 0xEFEAE80C, 0x0FF60BFA, 0xE6E2E815, 0x1DE91EF2, 0x0AF0F00A, 0xE3F4040E, 0xE4FC14FD,
+0xEE0D22E8, 0xE20A2416, 0xE3E1EBE3, 0x1A16F713, 0xF2F2E411, 0x13E5EFF1, 0xDB0A15EE, 0xE328F10A,
+0x1FF00414, 0x0EE813F9, 0xE5F4E3EE, 0xF4ED1314, 0xF12DEC1F, 0xFBEE0FEA, 0x0CEE1AEB, 0xEE1912DE,
+0xF1E709F2, 0xF414150D, 0xFB18E8EC, 0x19EE0EF0, 0x0DEB130F, 0x25130DE3, 0x11FA1817, 0xEBF119E6,
+0xF4F2E2ED, 0x21D9FF12, 0xEAE1FE12, 0xEEF7ED17, 0xD6091CFD, 0x081EE524, 0x19F2F10A, 0xE210FC20,
+0xDB18E817, 0xDFED0CFA, 0xE414E913, 0x111AE709, 0xE1171AF5, 0xE518F90D, 0xFC10F0EF, 0xED15F0E3,
+0x0EEFEF0A, 0xE00A19F3, 0xF3EFE610, 0xEA1B1017, 0xEEEDE517, 0xE0ECF5E0, 0x072619EB, 0xF2F8E5E6,
+0xF011F6F6, 0xEAFC1914, 0xEDFB1413, 0x16EAE602, 0x0D062012, 0xE0EE11E6, 0x0DF71809, 0xF81515E9,
+0xEF1720F4, 0xEA08E1F7, 0x1A0DEF1A, 0x0B0607E3, 0xE90E15FE, 0xE62A09F4, 0xDF180CF6, 0xF61E12F9,
+0xE314190F, 0x14071AE3, 0xE71AFB12, 0x1BDB150D, 0x131EE5FB, 0x0F15F2E5, 0x120D19EB, 0x0C1CE816,
+0xF5EBF2F3, 0x07EDF3F4, 0xF51B280B, 0x0CE6DDEA, 0xDFEEE716, 0xF4E5EAEF, 0xFAF30CF3, 0xE1DB10F5,
+0x00E113EF, 0x1CF3F820, 0x1719E910, 0x090C1DE7, 0x0F11ECF6, 0xEFF6F117, 0x20DD1B11, 0x1A20D9F2,
+0xFB1B14F0, 0xEFD9040B, 0xE1F514E6, 0x201B1315, 0x1817FB17, 0x190103EB, 0x0C0E14DA, 0x0E2029EE,
+0xE7F2EF13, 0xEF0D1901, 0x12E31C13, 0xE3EBEC11, 0xEB10DFF0, 0x1A0B22F3, 0xF4F2D90E, 0xDF18121E,
+0xE7EAE806, 0x1419E8E3, 0x1416EC2D, 0xE6E01FF2, 0xEB1FE415, 0xE710E119, 0xEA0714E4, 0xEA07DA17,
+0x1CF3E9E8, 0xEAF4F7F0, 0x150C16EE, 0x1CE71210, 0xE11421DF, 0x18FBEBF0, 0xFBF6E70B, 0xEAEFE416,
+0xF519DC1B, 0xE3E7F3E5, 0xF00AE9E4, 0xF0160827, 0x1ADF1A14, 0x210DEBE4, 0x1FF3F417, 0xE7F0E718,
+0x0C05F2E4, 0x14EB1DEB, 0x1212F70A, 0xE0F7F1DC, 0xD41CF119, 0xF8FFF5E1, 0x16DF1A1B, 0xF71D18F0,
+0xED1A1EE3, 0x04D625E3, 0xDCE51CED, 0xE713F6E9, 0xF6111603, 0xE31912EE, 0xEF0E1DF1, 0xF51F01E2,
+0xE4131AE5, 0x080EEC18, 0xF8E2E6EE, 0x0CF31C1A, 0x14F31A1B, 0x13E9F7EA, 0xE0F11AF4, 0x10DFEF0A,
+0x0C0C1CEB, 0x171DCD18, 0x0C1AF2F2, 0xDA111109, 0xECFF0717, 0xE5EAF80C, 0x02F312EE, 0x16F41CEC,
+0x1600F30D, 0x24110E09, 0x1118211F, 0xF1ECF613, 0xEB071C1B, 0x0A0C2317, 0xF10EEEEE, 0x2321F0F8,
+0xDFE4EBE5, 0x20F61CF7, 0xDA01EADE, 0xE3E401F9, 0xF1191608, 0x10EBEF19, 0xE8E7F0ED, 0xF21815F1,
+0xE0ECEA15, 0xF2EFE8E7, 0x10EB13EC, 0xEE140917, 0x1814E415, 0x1B18EFF3, 0x1BDC12E4, 0x15F816E7,
+0x13DD0C10, 0xE6EFEBF4, 0xF11CFDF4, 0xF929E7E8, 0xD8211707, 0xE126FEF6, 0xE7F80118, 0x22EF0C05,
+0x17F121EB, 0xECED1411, 0x1D141128, 0xEC201718, 0x170CE309, 0x1E15FBE3, 0xE2E80512, 0xD50D1E0E,
+0xEFF918FA, 0xE51AE50C, 0xE61AEC1B, 0x1DF1F31C, 0x0AE40BEB, 0x17F51FF8, 0x0EE9181E, 0xE1E5ECE3,
+0x18E91904, 0xFD171D1B, 0x140A1617, 0xEBE5EF19, 0xF0E9E31D, 0xF91F0E1A, 0x17F21611, 0x0A1EF6E4,
+0x12F00F19, 0xEE11ECDE, 0xE8DFF114, 0x0E19EC1A, 0xDDF8F209, 0xDF13F0F5, 0xEB11F4F2, 0xE319E51D,
+0x131015ED, 0xF5141810, 0xF7EFEF1B, 0xEFE8EC11, 0x0A0BE5E5, 0xF1E5F2EF, 0x15F1150E, 0xF621DBDF,
+0x08F9F3F2, 0xF1FC0CFF, 0x130FF7F2, 0xFFF30AF7, 0xF6060CF6, 0x0DFA1EEB, 0x0AEEF7F5, 0xF113EF0B,
+0x0FF907F5, 0xFAF8080C, 0x0BF8F607, 0x09F9020F, 0x09F7FD08, 0xF7F501EF, 0x0BFA00FB, 0xEC0E0409,
+0xFE0212F1, 0xF8FBFC10, 0x100B0614, 0x13F1F1ED, 0xFA010702, 0xFD0F1308, 0x03F7040C, 0xFAFB0512,
+0x120CF708, 0x0A0802EF, 0xF301FAEF, 0x03020F0B, 0x05F5FEF2, 0x030B1209, 0x13071101, 0xED090709,
+0xEDFFEE0D, 0x0AF90F0D, 0x030AF3FA, 0xF508F20A, 0x000FFEF1, 0x0AFC02EB, 0xF3EF00F2, 0x0FEFF0F7,
+0x0A050910, 0xF90AFBF9, 0xF20B020C, 0xFF0F0FFA, 0x0907F50B, 0xF704FB02, 0xF70CF0F1, 0x12F8F6F9,
+0xF508EC05, 0x041007F6, 0xEBF10505, 0x050D0CFD, 0xFC0508F7, 0xFEF7F7F3, 0x03FD0410, 0xEF0B10FB,
+0xE7F5EF10, 0xF5F8FBFD, 0xF70CF1F0, 0xF60910F7, 0xFE0CFBEB, 0xFBF40B10, 0xF7FD06F5, 0xFAFE0F01,
+0xEEF7F30C, 0x0714FAF0, 0x061507F4, 0x0611F80D, 0xEE0AF20C, 0xF009F1E8, 0xF3FD060C, 0x140C030C,
+0x04F90DF6, 0x060BF5F7, 0x0D0CF2F7, 0x060F02F7, 0x0B06F6F5, 0x0E0510F4, 0x0E0F0913, 0xF1060D17,
+0xFCF40CF6, 0xEFFCFCE8, 0xF3070011, 0xFC090906, 0x0F0B0D0B, 0xFC02E4F9, 0x06F00806, 0xEEFA030B,
+0x04ECFAF3, 0xFBF6EDF1, 0xE6090FFF, 0xF210F8F7, 0x0409F80F, 0xF0F7F7F2, 0xF7F107FC, 0x0A0402F5,
+0x13F9060F, 0xFE150E06, 0x08020207, 0xEC0E0DF5, 0xEFF7FA18, 0x0F0A0814, 0xF112FAEE, 0xF4F1F306,
+0xF6FC11EE, 0x0CF21606, 0xFE0D1003, 0xF30CF613, 0xF808F5F9, 0xF9FF050F, 0x04FAF409, 0xF8FBF20A,
+0xF30EF2F8, 0x0D0D0402, 0xF1F40EEC, 0xF5EFEBEC, 0xFE0BFAFB, 0xF7FA0FFA, 0x04F81209, 0x0EEE0D10,
+0x161A0B03, 0xF70FFC00, 0xF6F011FA, 0x10E90F0B, 0x0AF8EFFE, 0x0AEBF4F3, 0xF6F6F204, 0xF50B0207,
+0x11FDEB0B, 0xF80D0308, 0xE304F4FC, 0xF70AEB12, 0x1400EEF1, 0x03100EF2, 0x1117FFEB, 0x03FAFC08,
+0x0DF9F80E, 0xFCF0F5FD, 0x00EF02FC, 0x00FC0500, 0xFCF60612, 0x09050EEF, 0x08F304F4, 0xF2FE0903,
+0x090C010C, 0x04F4FF06, 0xF7F8F9ED, 0x040AF1FC, 0x10FB10F4, 0xF3EFFAF4, 0x0B0AEC0C, 0x0C0CFAF8,
+0xF70F0E13, 0xFBF50FFC, 0xF9F4EDF8, 0xEEF4F80B, 0xF51006F2, 0x0208FDF1, 0x06F71805, 0x0CF6E6F3,
+0xF40101FF, 0xFDFBEBEC, 0x0805F3FB, 0xECF30F09, 0xFAF90AEB, 0x0B02F8F2, 0x04F4F0F7, 0xF4090FF5,
+0x09FA0710, 0xFC06FBF9, 0x04F70BFC, 0x10070C0F, 0x0F12FE0E, 0x0BF0F306, 0xF4150005, 0xF714F7F5,
+0xF60D050C, 0xEFF2F9F8, 0x06F5F8F8, 0x06F3FDF3, 0x0D0303EE, 0xFD020114, 0x0A09F10A, 0x0D0415FA,
+0x0CFEED0F, 0x14F010F1, 0x0B04EEF2, 0x0F1406F5, 0x0805000D, 0xF409050E, 0x0DFBE901, 0x03110710,
+0x0604EFFD, 0x0B060BF9, 0xECF00D09, 0xFBF5FF0A, 0x07060DF2, 0x0EEF06F9, 0x0CF407F1, 0xFD0B100C,
+0x080617F8, 0xFAF5090A, 0x0A1204F9, 0xF2071212, 0xFD0FFD02, 0xE9F0EE0D, 0xF90FFCF1, 0xEE14E90B,
+0xFB0C02F5, 0x0C13F1F4, 0xF607EFFD, 0x0BF410FA, 0x00F204FB, 0xFA0DEFF7, 0x0AEDF4EC, 0xF1090208,
+0x13F6F000, 0xF8F2F0FF, 0xFB0E0B04, 0xF5FA120B, 0x1305F4FA, 0x07E70B0B, 0xEFEAF4FD, 0xF90807F3,
+0x05100D0A, 0x040E0608, 0x02F9090A, 0xFFF5F7FD, 0x0113F10A, 0xF10B07ED, 0xF7FB010B, 0x05EF06FA,
+0xF5FB11EE, 0xF2FCF306, 0xF70C0F00, 0x0E0704EE, 0xF60CFE0A, 0xF7E8F50D, 0xEEF6F5FD, 0x09E802EE,
+0xEF09F7FC, 0xF00CF0F1, 0xF808FCF4, 0xFBECEEFA, 0xFCF20211, 0xF9F10603, 0xF7F0F409, 0xEE140C01,
+0x0A0AF5EF, 0xF108F505, 0xE902FDEC, 0xF3080AF6, 0xF90410F2, 0x0D0609F3, 0xF7FBF608, 0xF408F005,
+0xFAFDF6F1, 0x030C0A0A, 0xFF0C11F8, 0x05FDF70C, 0x0C14F502, 0x12FDFD08, 0xF90BF3FF, 0xF5F20E11,
+0xF2FE0D06, 0xFE07F9F5, 0xFC080DF9, 0xF2F10BF5, 0x0B061DFA, 0xFB000211, 0x0D0E02F4, 0x06EA1101,
+0x0A0AF40D, 0x06F7070D, 0xF40CFD06, 0xF3FA08F5, 0xFEEB16EF, 0xF7EF0D09, 0x1512F0F0, 0x1801F3EC,
+0x0507FBF1, 0xF3F2FC08, 0x00ED110E, 0x10FD0DF8, 0x0B08F90A, 0x100DF905, 0xF0ED1414, 0x0A0E0DF8,
+0x08160C02, 0x10FDFAFF, 0xF022F7E0, 0xEF0A170A, 0x19180E02, 0x1CEAECDF, 0x18161818, 0xED0A17EA,
+0xEA13170F, 0xDEF01618, 0x1417E3EE, 0xEFEAF1E8, 0x16F512F6, 0xF3F5F9FD, 0x25121FEE, 0xEEDF29E8,
+0x15F7041E, 0xF9E8231A, 0x1EF112F3, 0xE1ECE9DE, 0x0C16E50A, 0xF51C1D11, 0xF9E60AE5, 0x0A150420,
+0xEE09F2E2, 0x09E9060F, 0xF1F2F01D, 0x0BEB20FC, 0xE21107DF, 0xFEE3EEE6, 0x001AF102, 0xE4E0DDDF,
+0xEC07121A, 0x1121E917, 0x10E1F1EE, 0xE4E7F11F, 0xEEE81611, 0xEB1AF71C, 0x0500E3F0, 0xE1FBE6E5,
+0xFEEBF50C, 0x09E9E617, 0xE219111D, 0xE6E8EC0C, 0x09082226, 0x1C0DE109, 0x0F101F0E, 0x02EF190E,
+0x11DD0A1B, 0xE5241B07, 0x06FDF3E5, 0x1113E914, 0xF30D171A, 0x1CE70F17, 0xE70A1017, 0x01E70714,
+0x18ED1911, 0x0AE9F4F7, 0x25E4E4FB, 0x192119E6, 0x05F1F60D, 0xF3E4F71D, 0x052811EF, 0x1AF4F710,
+0x20FAF613, 0xE926F607, 0xE3130E13, 0x15FAECF1, 0xF313DC11, 0x101411E6, 0xD918F724, 0x1A0FDF10,
+0x14D903F8, 0xF2EFE61E, 0x10171316, 0xEEDAF519, 0xF1221713, 0xE3000705, 0xDA15E322, 0xEBE8E711,
+0xD9F20FE7, 0x130A1DE1, 0xFFE8FD12, 0xE4E50CE4, 0x12F4E118, 0xE4E622E1, 0xF4001215, 0x14F018F8,
+0x0A18FC0B, 0x0EF1E5E8, 0xEDFAF614, 0x1A1928F5, 0x180D1306, 0xE91FED17, 0xE4EDE309, 0xFC20EAF3,
+0x21F7E81E, 0x18E31AF4, 0x1EEBFA12, 0x1C18141B, 0xE8151015, 0xEA280BE1, 0xE20EE9E0, 0xEBE61A13,
+0xECEA1119, 0x11F8E50B, 0xE7040AEA, 0xDD16D017, 0xDF14F5F9, 0x11E70820, 0xE218EF01, 0xE2E3F7EB,
+0xE3072414, 0xE120F90D, 0xED12E80C, 0xFA16E619, 0xF11DECE6, 0xE5E3EEF7, 0x1516E2E1, 0x19E8E6FA,
+0xEC0E19DA, 0xEDF21D1D, 0xEE011D22, 0xF1EE0AF3, 0xF0F1E419, 0xE72020DC, 0x1502E811, 0xF313F3EA,
+0x1814EDE1, 0xE0EE1C10, 0xF10EE7F2, 0x2428E81D, 0x19EA1EF5, 0xE7F41919, 0xE81312E1, 0x1DE8F102,
+0x25ED11E9, 0x16141E2A, 0xED11E7DF, 0xEF1FF62A, 0x1514EEE7, 0xE7F61316, 0x1B0CEFE9, 0xEFF219F0,
+0x072B20DB, 0x11E008F9, 0x1D13111B, 0x0B1BF515, 0x17E1EA0E, 0x1AED10E2, 0xFA17EAE9, 0x10ED11F4,
+0x09F2E1E7, 0x1AF0E920, 0xF7F7EDE5, 0xD8D7EBF9, 0x14EFF718, 0xE5E41412, 0xE908EFF3, 0xE9170FE4,
+0xE1EEEC1D, 0x19F3EBE6, 0x1AE3EAFB, 0xF1F8010E, 0x0CF317DD, 0x1FE11619, 0x13E4E6E3, 0xE01321F5,
+0xE921F9F5, 0x19192118, 0x1B14F8E8, 0xFAE8E618, 0xE504130C, 0xDFDAEA15, 0x181DED06, 0x12F316E9,
+0xE416E51D, 0xE5E914F6, 0xE9ED2517, 0x021720E0, 0x12EB110C, 0x0B14231C, 0xF00E1DF0, 0x080928DF,
+0xE1DCEA16, 0xED1BF9D4, 0x1D190CE9, 0x18E41F13, 0xDB12EA03, 0xEDF20BEB, 0x11EEE00F, 0xE3E7DFF8,
+0x1516E4E5, 0x16EAE6E7, 0x11FDE1F6, 0x2AE2ECE8, 0x0B081BF1, 0x1AF311E6, 0x0A1213F2, 0x16F0EDE8,
+0x20E61A0C, 0xE4F1F50A, 0x09F416DA, 0x240005E6, 0xE1F6EDEA, 0xF4F421E2, 0xF5F0E9EF, 0xF1191E0F,
+0xE6E01A23, 0x11F9ECE6, 0xE1E71BF3, 0x0DF8EF00, 0xE81AE614, 0xE71A18F1, 0x04EFE311, 0x0F0BEAFA,
+0xFAF319E7, 0xDFED0E0D, 0x0613F4E8, 0xEB17D9ED, 0x052421EB, 0xF4E7F9E5, 0xEFEFEC1B, 0x0C0B1E0E,
+0xFFEBEB14, 0x17181718, 0x09F7D7EB, 0xDDE017EA, 0xEAEDFBF2, 0xE91A12F0, 0xE3EEF6F0, 0x1AF1F6E8,
+0x17FAE614, 0xEE0D1713, 0x000512E5, 0x0DF5ED0E, 0xEF190F13, 0x1CE7151C, 0x06E31D23, 0xEC11E91B,
+0x00F8ED21, 0x02160C0D, 0xDFF4140C, 0x15240AEC, 0xF21603F2, 0x0EE9EE15, 0x1BF0EDE8, 0x25EC0F22,
+0xE8EB1F17, 0xFA111A09, 0xF11D10FB, 0x10ED15EB, 0xE71F020E, 0xF6E1F7FE, 0x1E02230A, 0x0FF31E15,
+0x1412EF19, 0xE11AD919, 0xF4EF0FE8, 0xF2EBF8E5, 0x0FF10F22, 0x070DDBFA, 0xFB0A1218, 0xEEF7F511,
+0xEC17E819, 0x0213D8DC, 0xFB0D131D, 0xF3F5E111, 0xED19F40F, 0xE3E701EB, 0x111F1518, 0xE718E0E7,
+0x15F6EB19, 0xEC1C1C18, 0xDD1F1C10, 0x18EB0C0F, 0x1EEB13E4, 0xEDF621F8, 0xEA241312, 0x0DDF15E9,
+0xF0081E17, 0x050F0D12, 0xEEEA1802, 0x13092111, 0x26290D0A, 0x13E709F5, 0x17E11405, 0x16EBE5E4,
+0x180AEC10, 0xEFF01315, 0xE5F910F4, 0x1EEE0D1A, 0xDA06E80F, 0x0E08E5E4, 0x101D1312, 0xEBE1181C,
+0x0EDB0E16, 0x15141015, 0x19E625E7, 0x0FEBE60E, 0x2CF7F3F1, 0xE3EF1326, 0x23F1F4E8, 0x00E2EFE9,
+0x0C16E7EB, 0xE8FEDCF9, 0x2DE9E10F, 0xEDDB18EE, 0xE2ECE918, 0xF7EE191D, 0x0EE91DE7, 0xF7E701EC,
+0x0B0D17EB, 0x0FF9F4E0, 0xE6E11B15, 0x0702EC19, 0xF8DD1210, 0x15D9E30F, 0xE61DF7DF, 0xF0D61E09,
+0xF6E51B1B, 0xEAE10DE9, 0x14DE0E06, 0xE203F50D, 0xEBE7EFEA, 0x1922FF21, 0xEDDDF4EB, 0xE818F20A,
+0xECE8DEFC, 0xEB1E1CEE, 0x111DDBF0, 0x0E1620E9, 0xDF17F41C, 0x15E3E8E2, 0x1515F518, 0x0CE3EA1A,
+0x0E201915, 0xE9EB04F0, 0xE3F70F11, 0x0F0A14E6, 0x01F111E6, 0xEA231A11, 0xF61CF21B, 0xFC0FF1DE,
+0xE3EBFBEE, 0x1C26F0F1, 0xE3E1F20D, 0x1B12F3EC, 0x19DF06EE, 0xFCEEF7E7, 0xE7090CE5, 0x24F91A29,
+0x0D1BF31A, 0xEE15E5E7, 0x0620F50F, 0xE31605F5, 0x10E71C0E, 0xE91C17F1, 0xDD14F0E3, 0xE5F00C07,
+0xDCFAF5EE, 0xEC15E5ED, 0xEAEF1C24, 0x1E16F117, 0xECE0EF11, 0x0DF6ECE6, 0x06121012, 0x14E8ECF6,
+0x14F52610, 0x0EEEEC1B, 0xDB161BEC, 0x162FE1E7, 0x07FD0C06, 0x1014E9ED, 0xF1EC111E, 0x1914F71A,
+0xF3E7F705, 0xF51CF3EB, 0x130FE010, 0xE5F0F2DF, 0xE1E3DD11, 0xDF18021A, 0x14F4EDF2, 0xDBEC1604,
+0xF6ECEB26, 0xF0171C12, 0xF3E713EC, 0xF81C1E19, 0xE7F92012, 0x1307EBE4, 0x11F323E1, 0x2111FAEB,
+0xFFEB1417, 0x02E7EF1C, 0x1FF6E8F3, 0xF221E5F4, 0x0EE61906, 0xF323161D, 0xE01EEF08, 0x11E0D7E4,
+0xD60E210D, 0xF21323F0, 0xDBEEE9E6, 0x0F10EDEE, 0xEBECF4F7, 0xECEAF3FB, 0xE9DBDBE9, 0xE9220EE8,
+0xF7E4E911, 0x1C2018F0, 0xEBDDEAE2, 0x151116E9, 0x19D6E7E5, 0x131DEA06, 0xF1F3F10E, 0x1C13E9F1,
+0x1AF7F5E0, 0x050FE0F3, 0x13EDE6F5, 0x22EC2501, 0xF1E7230A, 0xE41F0216, 0xF4EFE8EC, 0xE818121F,
+0x01EDEB0D, 0x23E918F1, 0xE515F117, 0xE3EA27DC, 0x18F3F8FD, 0x06F2E00C, 0xDC19F005, 0x19F3F621,
+0xEBEDE11E, 0x1614EDE7, 0xF0F5E723, 0xEEF6F2E3, 0xE70F0911, 0xF4F213F7, 0xE7E7EBF0, 0xF409FAE5,
+0xE406DA0E, 0x08E7EBF7, 0xEA19E0EE, 0xD918FFE0, 0xF2EA1222, 0xE616F313, 0x1201DF15, 0xDF1D16F1,
+0x0A1516EC, 0xE5E9131D, 0x2017F6E6, 0xE5FADE08, 0x13110012, 0xFDDC12E9, 0x1DF012F5, 0xF20F16EE,
+0xE3EA04E8, 0xF7EAF81D, 0x0E1F1C0E, 0x1B2B110D, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+8
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..12c05d0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v14298.data b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
new file mode 100644
index 0000000..30df8e2
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v14298.data
@@ -0,0 +1,377 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F817F,
+0x81817F81, 0x81817F81, 0x81818181, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F818181, 0x8181817F, 0x81818181, 0x817F817F, 0x817F817F, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181,
+0x7F7F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x81817F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181,
+0x81817F81, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F818181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x7F7F8181,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x8181817F, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81817F7F,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x817F817F, 0x7F818181,
+0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F817F7F, 0x81817F81,
+0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F,
+0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x817F7F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F817F,
+0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81817F7F, 0x817F817F,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x817F817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F81817F,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F81817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F81,
+0x817F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F817F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x8181817F, 0x8181817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F81, 0x817F8181, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x81817F81, 0x817F8181,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x81818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F818181, 0x81817F81, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81,
+0x817F8181, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F81817F,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x817F8181, 0x81818181, 0x817F8181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x7F817F7F,
+0x817F8181, 0x7F818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x817F8181,
+0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x7F818181,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F817F,
+0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x81817F7F,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x817F817F,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F8181, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F818181, 0x81817F81,
+0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x8181817F, 0x817F7F7F,
+0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x817F8181, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F81817F,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F817F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x81818181,
+0x81818181, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F,
+0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x81818181, 0x8181817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F81817F, 0x81817F81,
+0x81818181, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x7F7F8181,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181,
+0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x8181817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x81817F81, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x81817F81,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x7F7F8181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x81818181,
+0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x81818181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x817F8181, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x81817F7F,
+0x81818181, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F817F81,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F81,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F818181, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x81817F7F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181,
+0x81818181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181,
+0x817F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F817F
+
+output0 =
+0x2264202F, 0xEFA4FF42, 0xE9F58B8C, 0x1D39E1D8, 0xC820C061, 0x20DC98A4, 0x8DE60AFC, 0x6C33FA8A,
+0x1C53D6C5, 0x945F773F, 0xDBB04F8A, 0x3A27959E, 0x68BB477D, 0x2162D334, 0x380000DF, 0x69C28486,
+0xBA5358EF, 0xCF3C7E12, 0x498CFB25, 0x2C1D2FD8, 0x3BC26009, 0x3FBCD885, 0x170DB38F, 0xCC6D1865,
+0x5F253C8F, 0x2E763549, 0x5CF7C656, 0x5B035AAC, 0x97EFE2E2, 0x3E09E2D2, 0x616B4622, 0x090DF188,
+0x6D446324, 0x4879AFE5, 0x4170D40D, 0x961951CA, 0x127A6286, 0x97DF4F8E, 0x1E8B9203, 0xAF2CC98E,
+0x92070932, 0x39947F15, 0x1D3C8709, 0x78F28246, 0xBA0CEDEB, 0xD3AAED67, 0x3800BA16, 0x5591D86F,
+0x91406310, 0x25CD67E2, 0x2DD370E6, 0x92EC5FD3, 0x601F6480, 0x85832BF7, 0x21FBC769, 0x47A424D1,
+0x753A3FDC, 0x4406729D, 0xD73AE302, 0x5B0363EB, 0x6695488A, 0x10143CE6, 0x18544FA3, 0xA09CAD85,
+0xCA84C06F, 0x76069E77, 0x249EFC02, 0x0D2EF9A4, 0x306C49E6, 0x8744F821, 0xA3DBD0B3, 0x51C30167,
+0x24BAC604, 0xB7127120, 0xD8293BEA, 0x99D894B1, 0x82DA3AC5, 0x0A3DE8AC, 0x0A2BFF03, 0x8810CF64,
+0xF965FC9F, 0x38D9B780, 0x67A87163, 0x2125F55C, 0x520FD62F, 0x81C21F91, 0x36DBBAE9, 0x9FD06F93,
+0xC496630A, 0x9E68401F, 0xD8960A86, 0x040ED70A, 0x6B685588, 0x89FB354E, 0x6FA818BC, 0xE736533D,
+0x9991716D, 0x7D3E2C82, 0x1D56747A, 0x79ACA946, 0x223D14C6, 0x98D15ED1, 0x8E1DEFED, 0x90E0C34F,
+0x693154A7, 0x9802DE69, 0xE9EDFCE8, 0xA308DBD5, 0xF8D24D94, 0x5F7C1F87, 0xD1CCBAA7, 0x3597525A,
+0xA5A9F065, 0x28C234D5, 0xB3FF9848, 0x012A0B0D, 0x5BB7102F, 0x4CE69A80, 0xFEF92D54, 0x0932125D,
+0x8D58749A, 0x6F00E934, 0x713104DC, 0x74E16375, 0x6805E1C0, 0x8AC5EFB4, 0xFF381CA0, 0x642D3436,
+0xD38472
+
+basegraph=
+1
+
+z_c=
+192
+
+n_cb=
+12672
+
+q_m=
+2
+
+n_filler=
+104
+
+e=
+10048
+
+rv_index=
+1
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..3143fa0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..2ea2b8d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..63bc8da
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..aaa3c98
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..03422fb
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
new file mode 100644
index 0000000..bd7c017
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x20202020, 0x20202020, 0xe0e0e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0,
+0x20e0e0e0, 0xe020e020, 0xe0e0e0e0, 0x20202020, 0x20e0e020, 0x2020e0e0, 0x202020e0, 0xe0e02020,
+0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe020e020, 0xe0e0e020, 0x2020e0e0, 0xe0e0e020, 0xe0202020,
+0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e020, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0xe020e020, 0xe0202020, 0x20e0e0e0, 0x20e0e020, 0x20e02020, 0x20e02020, 0xe0202020,
+0xe0e020e0, 0xe020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x20e02020, 0xe020e020, 0x202020e0,
+0x2020e020, 0xe020e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x20202020, 0x20e0e0e0, 0x2020e0e0,
+0x20e0e0e0, 0x20e0e020, 0x20e0e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20e020e0, 0x20e0e0e0,
+0xe0e020e0, 0x2020e0e0, 0x202020e0, 0x2020e020, 0xe0e0e020, 0xe020e0e0, 0x20e02020, 0x202020e0,
+0x20202020, 0xe0202020, 0x20e020e0, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0,
+0x20e020e0, 0xe0e02020, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20e0e020,
+0xe020e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x2020e020, 0x20e020e0, 0xe0e02020, 0xe020e020,
+0xe0e0e0e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x202020e0, 0xe020e0e0, 0xe020e0e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0x2020e020, 0x20e0e020, 0x20e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e020e0,
+0x20e02020, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20202020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20202020, 0xe0e02020, 0x2020e0e0, 0x20e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe020e0e0, 0x20e02020, 0xe0e02020, 0x2020e0e0, 0xe02020e0, 0x20e020e0,
+0x20e02020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020,
+0xe02020e0, 0x20202020, 0x20e020e0, 0xe0e0e0e0, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0x20e02020,
+0xe020e0e0, 0x202020e0, 0x20e020e0, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020, 0xe020e020, 0x20e0e0e0,
+0xe020e020, 0xe0e02020, 0xe0e020e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0x2020e020, 0x2020e020, 0x20202020, 0xe0202020, 0x20e0e020, 0xe02020e0, 0x20e0e0e0,
+0x20e020e0, 0x20e02020, 0xe0e0e0e0, 0x20202020, 0x20202020, 0x20e0e020, 0x2020e020, 0xe020e0e0,
+0xe020e020, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0x2020e0e0, 0x20e0e020, 0x20e0e020, 0xe0e020e0,
+0x202020e0, 0xe0e0e020, 0x2020e020, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x202020e0,
+0xe0e0e0e0, 0x2020e0e0, 0xe0202020, 0xe020e0e0, 0x20e0e020, 0x2020e020, 0x20e0e020, 0xe02020e0,
+0x20e020e0, 0x20202020, 0x202020e0, 0xe02020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe0202020, 0x2020e0e0, 0xe0e0e020, 0x2020e020, 0x202020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0,
+0xe020e0e0, 0x20e020e0, 0x202020e0, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0xe0202020, 0x2020e0e0,
+0xe0202020, 0x2020e020, 0x20e0e0e0, 0xe02020e0, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0e0e0e0,
+0xe0e02020, 0x20202020, 0xe0e020e0, 0x20e020e0, 0xe020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0e020e0,
+0x20e0e0e0, 0x20e02020, 0xe0e0e020, 0xe0e0e020, 0x20e0e020, 0xe0e0e020, 0x2020e020, 0xe0e020e0,
+0x2020e020, 0x2020e0e0, 0xe020e0e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0xe0e0e0e0,
+0x20e0e020, 0xe0e0e020, 0xe020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20202020, 0x202020e0, 0xe020e020,
+0x20202020, 0xe0202020, 0xe020e0e0, 0x20e02020, 0xe020e0e0, 0xe0e020e0, 0xe020e020, 0xe020e020,
+0xe0202020, 0x20e020e0, 0x20e020e0, 0x20202020, 0x20e02020, 0xe02020e0, 0x2020e0e0, 0xe0e0e0e0,
+0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0x20e02020, 0x20e02020, 0xe0e020e0, 0x202020e0, 0x20e0e020,
+0x20e020e0, 0xe0e0e0e0, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e02020, 0xe0202020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe02020e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0xe0202020, 0xe020e020, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e02020, 0x20e0e020, 0xe0e02020, 0x20e02020, 0xe02020e0, 0x2020e0e0,
+0xe0e0e020, 0x20e020e0, 0x20e0e0e0, 0x2020e020, 0x20e0e0e0, 0x2020e020, 0xe0e0e0e0, 0x202020e0,
+0x20202020, 0x20e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e0e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e020, 0xe0e020e0, 0xe0e0e020, 0xe0e020e0, 0x20202020, 0x2020e0e0,
+0x202020e0, 0x20e020e0, 0xe0e0e020, 0x2020e020, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe02020e0, 0x20e02020, 0xe020e0e0, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0,
+0xe0e0e020, 0xe0e02020, 0xe02020e0, 0xe0e02020, 0xe0202020, 0xe0202020, 0x20202020, 0xe020e0e0,
+0x202020e0, 0x2020e0e0, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0xe0e02020, 0xe02020e0, 0x20e0e020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e02020, 0x20e0e020, 0x202020e0,
+0x202020e0, 0x20e020e0, 0x20e0e0e0, 0xe0202020, 0x2020e020, 0xe0e0e020, 0x20e020e0, 0x20e020e0,
+0x20e020e0, 0xe0e0e0e0, 0xe020e0e0, 0x20e020e0, 0xe02020e0, 0x2020e0e0, 0x2020e020, 0xe0e0e020,
+0xe0e020e0, 0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e0e0, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0x2020e020, 0xe0e0e020, 0x20e02020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020,
+0xe020e0e0, 0x2020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x202020e0, 0x20e02020, 0x20e0e0e0,
+0x20202020, 0x20e020e0, 0xe02020e0, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x2020e020, 0x2020e0e0,
+0xe0202020, 0xe020e0e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e020e0, 0xe020e020, 0x20e0e0e0,
+0x20e02020, 0xe0202020, 0x202020e0, 0x20e0e020, 0x20e0e020, 0x20e0e020, 0x20e02020, 0xe0e0e0e0,
+0x20e0e0e0, 0xe0202020, 0xe02020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e0e0, 0x202020e0, 0x20e0e020,
+0x20e0e0e0, 0xe020e020, 0xe0202020, 0x20e02020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0202020,
+0x2020e0e0, 0xe0202020, 0x20e0e0e0, 0x20e02020, 0xe020e020, 0x20e02020, 0xe0e020e0, 0x20e0e020,
+0xe02020e0, 0xe02020e0, 0x2020e0e0, 0xe0202020, 0x20202020, 0x20e020e0, 0x20e02020, 0x20e0e0e0,
+0x2020e0e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0xe02020e0, 0x20e0e0e0, 0x20202020, 0xe020e020,
+0xe0202020, 0x20e0e0e0, 0xe0e020e0, 0xe020e020, 0xe0e0e0e0, 0xe02020e0, 0xe0202020, 0x2020e020,
+0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20e020e0, 0xe0e02020, 0xe0e0e020, 0xe020e0e0,
+0xe020e020, 0xe0e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e020, 0x20e0e0e0, 0x20e02020, 0xe0202020,
+0xe020e020, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0x20e0e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe02020e0, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0,
+0x20e0e020, 0x20e02020, 0x20e02020, 0xe0e0e0e0, 0xe0e02020, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0x202020e0, 0xe020e020, 0x2020e0e0, 0x20e020e0, 0xe020e020, 0xe020e0e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20e0e0e0, 0x20e020e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0xe02020e0, 0x20202020, 0x2020e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0xe0e020e0, 0xe0e0e020,
+0xe020e0e0, 0x20e02020, 0x2020e0e0, 0xe020e020, 0xe0e0e020, 0x20e0e020, 0x20e0e0e0, 0xe0e020e0,
+0xe0e0e020, 0x202020e0, 0x202020e0, 0xe0e020e0, 0x2020e0e0, 0x20e0e0e0, 0xe020e020, 0x202020e0,
+0x20e0e0e0, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe0e02020,
+0x20e0e0e0, 0x2020e020, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe020e020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x202020e0, 0x20202020, 0xe0e02020, 0x2020e020, 0xe0e0e020, 0x20e02020, 0x20e02020,
+0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0xe020e0e0, 0x20e0e0e0, 0x20e020e0, 0x20202020,
+0x20e0e0e0, 0x20202020, 0xe0e020e0, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0xe02020e0, 0x2020e0e0,
+0x202020e0, 0xe020e020, 0x20e020e0, 0x20e0e0e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0x20e020e0,
+0x202020e0, 0x20e020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe020e020, 0x2020e0e0, 0xe0202020, 0xe0e020e0,
+0x20202020, 0xe02020e0, 0xe020e020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0xe0e0e020, 0x20e020e0, 0x20e0e020, 0x20e02020, 0x20e020e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0x202020e0, 0xe0e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e0e0,
+0x2020e0e0, 0x20202020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0xe0e0e0e0, 0xe020e0e0, 0xe0e02020,
+0x2020e020, 0xe0e02020, 0x20e0e0e0, 0x20e020e0, 0xe0e02020, 0xe0e020e0, 0xe020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e0e0, 0x2020e020, 0xe020e0e0, 0x2020e0e0, 0xe0e0e020, 0x20e02020, 0x2020e020,
+0xe020e0e0, 0xe0e0e020, 0x2020e0e0, 0x20e02020, 0xe0e0e020, 0x20e02020, 0xe02020e0, 0xe0e02020,
+0xe0e0e020, 0x20202020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x20202020, 0x2020e020, 0xe02020e0,
+0xe0e0e0e0, 0x2020e0e0, 0x202020e0, 0xe0e02020, 0x20e020e0, 0xe02020e0, 0xe0e020e0, 0xe0e02020,
+0x20e0e020, 0x20e02020, 0xe0e020e0, 0x20e0e020, 0x20e0e020, 0xe020e0e0, 0xe0e0e0e0, 0x20e020e0,
+0xe020e020, 0x20202020, 0xe0e0e020, 0xe020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x20e0e0e0,
+0x2020e0e0, 0x20e02020, 0xe020e020, 0xe0e0e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e0e0, 0xe020e0e0,
+0x20e0e0e0, 0xe0e0e020, 0xe020e020, 0xe020e0e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0xe0e0e020,
+0x20e020e0, 0x20e0e020, 0x20e020e0, 0xe0202020, 0xe0e020e0, 0xe0e0e0e0, 0xe020e020, 0xe0202020,
+0xe020e020, 0xe020e0e0, 0xe0e02020, 0x20e02020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0xe0e02020,
+0xe020e020, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0,
+0xe020e0e0, 0xe0e020e0, 0x202020e0, 0x20e0e0e0, 0xe0e02020, 0x2020e020, 0xe0202020, 0xe0e0e020,
+0x2020e0e0, 0x20202020, 0x2020e0e0, 0xe020e020, 0x20e0e020, 0xe020e0e0, 0x20e0e020, 0xe0e020e0,
+0x20e02020, 0xe0e020e0, 0xe0e0e020, 0xe0e0e020, 0xe0e02020, 0xe020e020, 0x20e0e0e0, 0xe0e02020,
+0xe0202020, 0xe0e0e020, 0x20e02020, 0x20e0e020, 0x20e0e020, 0xe0202020, 0xe0e02020, 0x20e02020,
+0x20e0e0e0, 0xe0e020e0, 0x20e0e020, 0xe0e02020, 0xe0e02020, 0xe0e020e0, 0x2020e0e0, 0xe0202020,
+0xe0202020, 0x20e020e0, 0x202020e0, 0xe02020e0, 0x2020e020, 0x20202020, 0x202020e0, 0x2020e0e0,
+0xe020e020, 0x2020e020, 0x20e0e020, 0xe0202020, 0xe020e020, 0x20e0e020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e02020, 0xe0e02020, 0xe020e020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0xe0e0e0e0, 0xe020e020,
+0x20202020, 0x20202020, 0xe0e020e0, 0x202020e0, 0xe02020e0, 0x20e020e0, 0x20e020e0, 0xe020e0e0,
+0x2020e020, 0xe0202020, 0x20e02020, 0xe0e020e0, 0xe0e0e0e0, 0xe02020e0, 0x2020e020, 0x2020e0e0,
+0xe0e0e020, 0xe0e02020, 0x20e02020, 0x20e0e020, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe0e02020,
+0xe0e0e020, 0xe02020e0, 0xe0e0e020, 0x202020e0, 0xe020e020, 0xe0e0e020, 0x202020e0, 0x20202020,
+0x20202020, 0x20e0e0e0, 0xe0e020e0, 0xe0e020e0, 0xe0e0e0e0, 0x202020e0, 0xe0202020, 0xe02020e0,
+0x202020e0, 0xe0e02020, 0xe0e0e020, 0x2020e020, 0x20e0e020, 0xe0e0e020, 0x20e020e0, 0xe020e0e0,
+0x2020e0e0, 0xe0e0e020, 0x20e0e0e0, 0xe020e0e0, 0xe0e020e0, 0x20e02020, 0x20e02020, 0xe0202020,
+0x20e0e0e0, 0x20e02020, 0x2020e0e0, 0x202020e0, 0xe02020e0, 0x20e0e020, 0xe0e02020, 0xe0e0e0e0,
+0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0202020, 0xe02020e0, 0x20e02020, 0xe0e0e020, 0xe0e020e0,
+0x20202020, 0xe0202020, 0xe02020e0, 0xe0202020, 0xe02020e0, 0x20202020, 0xe0202020, 0xe0202020,
+0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe0e020e0, 0xe02020e0, 0xe020e0e0, 0x20e0e020, 0x20e020e0,
+0x20202020, 0xe0e0e020, 0x20e0e0e0, 0x2020e020, 0x20e020e0, 0x20202020, 0x2020e0e0, 0x2020e020,
+0x20e02020, 0x20202020, 0xe0e02020, 0x202020e0, 0x20202020, 0xe0202020, 0xe020e020, 0xe0e020e0,
+0xe0e02020, 0xe0202020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0x20202020, 0xe020e0e0, 0x20e02020,
+0x202020e0, 0x20e020e0, 0xe020e020, 0x2020e020, 0x20e0e020, 0xe0e0e0e0, 0xe020e0e0, 0x2020e0e0,
+0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e0e020, 0x20e020e0, 0x2020e020,
+0xe02020e0, 0xe0202020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0xe0202020, 0xe0e0e020, 0xe02020e0,
+0xe0e02020, 0x2020e0e0, 0xe0e020e0, 0x20e0e0e0, 0x20e02020, 0xe0202020, 0x20e0e020, 0x20e020e0,
+0x20e020e0, 0xe020e020, 0xe0e0e0e0, 0xe0e0e020, 0xe020e020, 0x2020e0e0, 0x20e02020, 0x20e0e0e0,
+0x2020e020, 0xe0e020e0, 0xe0e02020, 0x202020e0, 0xe0e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0,
+0x2020e020, 0xe02020e0, 0xe020e020, 0x20e0e020, 0xe020e020, 0xe0e020e0, 0xe0e020e0, 0x20202020,
+0xe0e0e0e0, 0xe0202020, 0x2020e0e0, 0x2020e0e0, 0x20e0e020, 0xe0202020, 0xe0202020, 0xe020e0e0,
+0xe0e0e0e0, 0xe0e02020, 0x20e02020, 0x20e02020, 0x2020e0e0, 0xe0202020, 0xe02020e0, 0xe020e0e0,
+0x202020e0, 0x20e02020, 0x20e0e020, 0x20e020e0, 0x2020e0e0, 0x20e020e0, 0x20202020, 0x20202020,
+0xe0e0e0e0, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0xe0e020e0, 0xe0e0e020,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x20e02020, 0xe020e020, 0x20e02020, 0x20e0e020, 0x20202020,
+0xe02020e0, 0x202020e0, 0xe0e020e0, 0x2020e020, 0x20202020, 0x20202020, 0x20202020, 0xe020e020,
+0xe0202020, 0x202020e0, 0xe0202020, 0x20e0e020, 0x20e020e0, 0x20e020e0, 0x20e0e020, 0xe0202020,
+0x20e0e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e0e020,
+0xe02020e0, 0xe0e0e0e0, 0xe020e020, 0xe02020e0, 0xe020e0e0, 0xe0e020e0, 0xe0e0e0e0, 0x20202020,
+0x2020e020, 0x20e020e0, 0x2020e020, 0x2020e0e0, 0xe020e0e0, 0x20202020, 0xe0e02020, 0x20e0e0e0,
+0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe0e0e0e0, 0xe0e02020, 0x202020e0, 0xe0202020, 0xe0e0e020,
+0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e020e0, 0x20e020e0, 0x2020e0e0, 0xe0e020e0, 0xe020e0e0,
+0x20202020, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e020, 0xe020e0e0, 0x20e0e0e0, 0x20e0e0e0,
+0x20e02020, 0x2020e0e0, 0x20e02020, 0xe0202020, 0x20e020e0, 0xe0e0e0e0, 0xe020e020, 0x202020e0,
+0xe0e0e0e0, 0x202020e0, 0x20e0e020, 0x2020e020, 0xe0e020e0, 0x20202020, 0x20202020, 0x2020e0e0,
+0xe020e0e0, 0xe0e020e0, 0xe0e02020, 0xe02020e0, 0x20e0e020, 0x20e02020, 0x20e0e020, 0x2020e020,
+0x2020e020, 0xe02020e0, 0xe02020e0, 0xe020e020, 0x2020e0e0, 0xe0e0e0e0, 0x202020e0, 0x202020e0,
+0xe020e020, 0x20e02020, 0x2020e0e0, 0x20e0e020, 0x2020e0e0, 0xe0e0e020, 0xe020e0e0, 0xe0e02020,
+0xe020e0e0, 0xe0e020e0, 0x20202020, 0xe02020e0, 0x20e02020, 0xe0202020, 0xe0e020e0, 0x202020e0,
+0x2020e020, 0x2020e020, 0xe020e020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020, 0x20e02020,
+0x202020e0, 0x2020e020, 0x202020e0, 0xe0e02020, 0xe020e020, 0xe0e0e0e0, 0xe0e02020, 0x20202020,
+0xe020e0e0, 0xe020e020, 0x20e0e020, 0x20e0e020, 0x2020e020, 0xe0202020, 0xe02020e0, 0xe0e020e0,
+0x2020e020, 0xe020e020, 0x20e020e0, 0x2020e020, 0x2020e020, 0xe0e0e0e0, 0xe0e0e020, 0x20202020,
+0x20e020e0, 0xe020e020, 0x20202020, 0x2020e0e0, 0x20e0e020, 0x20e020e0, 0xe02020e0, 0xe020e020,
+0x20202020, 0xe0e0e020, 0xe0e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0x202020e0, 0xe02020e0,
+0x20e020e0, 0xe0e020e0, 0xe0202020, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e020, 0xe020e020, 0x20e0e0e0,
+0x20202020, 0x20e0e020, 0x20e020e0, 0xe020e0e0, 0xe0202020, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e020,
+0xe0202020, 0x2020e020, 0xe0e020e0, 0x202020e0, 0xe0e0e020, 0xe0e0e0e0, 0x20e020e0, 0x2020e020,
+0xe020e020, 0x2020e0e0, 0xe0202020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x202020e0, 0x20e0e020,
+0x2020e020, 0xe020e020, 0xe02020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe0e020e0, 0x202020e0,
+0x202020e0, 0x20e0e0e0, 0x20e0e020, 0x20202020, 0x2020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e0e0,
+0x20e020e0, 0xe0e02020, 0x20e0e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0x20e0e0e0, 0xe0e02020,
+0x20e0e0e0, 0xe020e020, 0x20202020, 0x20e0e0e0, 0xe0e020e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0x20202020, 0x20e02020, 0x20e020e0, 0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0202020, 0xe0e02020,
+0x20e0e0e0, 0x20e020e0, 0x2020e020, 0xe0e020e0, 0x20e020e0, 0xe0e0e020, 0xe0e02020, 0x20202020,
+0x2020e020, 0x202020e0, 0xe0e020e0, 0xe02020e0, 0x20202020, 0x202020e0, 0x2020e0e0, 0xe0e0e0e0,
+0x20e02020, 0x202020e0, 0xe0e0e020, 0x20202020, 0x202020e0, 0xe020e020, 0xe0e020e0, 0x20202020,
+0xe020e0e0, 0x202020e0, 0x202020e0, 0x2020e0e0, 0xe0202020, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0x20e02020, 0xe0e02020, 0xe0e02020, 0x20e0e020, 0x20e0e0e0, 0xe0202020, 0x20e0e020, 0x2020e020,
+0xe0e0e0e0, 0xe020e020, 0x20e02020, 0xe0e0e020, 0xe0e0e0e0, 0xe02020e0, 0x20e020e0, 0xe0e0e0e0,
+0x20e02020, 0xe02020e0, 0xe0e0e020, 0x20e0e020, 0x20e02020, 0xe020e0e0, 0xe020e020, 0xe02020e0,
+0x20202020, 0x20e02020, 0xe020e0e0, 0x20e0e0e0, 0xe02020e0, 0xe020e020, 0xe0e0e020, 0x20e02020,
+0x20202020, 0x2020e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0, 0x20e0e0e0, 0x20e0e0e0, 0xe02020e0,
+0x20e02020, 0x202020e0, 0x2020e0e0, 0x202020e0, 0x20202020, 0xe0e0e020, 0xe0e0e020, 0x2020e020,
+0x2020e020, 0xe0e0e020, 0xe02020e0, 0x20e020e0, 0x20e0e0e0, 0x20e0e0e0, 0x202020e0, 0xe020e020,
+0xe0e0e020, 0xe0202020, 0xe0e0e0e0, 0x20e0e020, 0xe0e020e0, 0x20e0e020, 0xe0e0e0e0, 0xe02020e0,
+0xe0e0e0e0, 0x20202020, 0x20202020, 0xe020e0e0, 0xe0e0e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e020,
+0x20e020e0, 0xe0202020, 0xe0e0e020, 0xe020e0e0, 0x2020e0e0, 0x20e0e0e0, 0x202020e0, 0xe0202020,
+0xe020e020, 0xe0e0e0e0, 0x20e02020, 0xe020e0e0, 0xe0e0e020, 0xe0e02020, 0xe0e020e0, 0x202020e0,
+0x20e02020, 0x20e0e0e0, 0xe0e0e020, 0x2020e020, 0x20e020e0, 0x2020e0e0, 0x2020e0e0, 0xe0e0e020,
+0xe0e02020, 0x20e0e020, 0xe0e02020, 0x202020e0, 0x20e0e020, 0x20e02020, 0xe0e0e0e0, 0x202020e0,
+0x20e0e020, 0x20e0e020, 0x2020e020, 0x20e0e0e0, 0x202020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x20e0e020,
+0xe0e020e0, 0xe02020e0, 0xe02020e0, 0xe0e020e0, 0xe0e0e0e0, 0x20e02020, 0xe0202020, 0x202020e0,
+0xe020e020, 0x20202020, 0xe0e02020, 0xe0e02020, 0xe0e0e020, 0x20e0e0e0, 0xe0e0e0e0, 0xe020e020,
+0xe02020e0, 0x2020e0e0, 0xe0e02020, 0xe02020e0, 0xe0202020, 0x2020e020, 0x20202020, 0x20e0e0e0,
+0x20e020e0, 0xe0202020, 0x2020e0e0, 0xe0e0e0e0, 0x2020e020, 0x20e020e0, 0xe0202020, 0xe0202020,
+0x20e020e0, 0x20e020e0, 0xe0e020e0, 0xe020e0e0, 0x2020e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe02020e0, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0xe02020e0, 0xe0e020e0, 0x20202020,
+0x20e02020, 0xe0e02020, 0x20e0e020, 0xe020e0e0, 0xe020e0e0, 0xe0e0e0e0, 0x2020e0e0, 0x202020e0,
+0xe0202020, 0x202020e0, 0xe0e0e0e0, 0xe0e020e0, 0xe0e0e020, 0xe0202020, 0xe0e0e020, 0x2020e0e0,
+0xe0e0e0e0, 0x20e02020, 0x20202020, 0x2020e0e0, 0xe0e0e0e0, 0x20202020, 0xe02020e0, 0xe0202020,
+0xe020e020, 0x20e02020, 0xe0e020e0, 0x2020e0e0, 0x2020e020, 0xe020e020, 0x20e0e020, 0x20e020e0,
+0x20e02020, 0xe020e0e0, 0xe02020e0, 0x20e0e020, 0xe02020e0, 0xe02020e0, 0xe0e0e0e0, 0x20e0e0e0,
+0xe0e02020, 0xe020e0e0, 0xe0e020e0, 0x20e020e0, 0xe0e0e0e0, 0x20e0e0e0, 0x2020e020, 0xe0202020,
+0xe02020e0, 0xe02020e0, 0xe0e020e0, 0x2020e020, 0xe0202020, 0xe0e020e0, 0xe020e020, 0x2020e0e0,
+0xe02020e0, 0xe0202020, 0x20202020, 0xe020e020, 0x20e0e0e0, 0xe020e020, 0xe020e020, 0xe0202020,
+0xe020e0e0, 0x20e0e0e0, 0x2020e0e0, 0xe020e0e0, 0xe020e0e0, 0xe02020e0, 0x20202020, 0x2020e020,
+0x202020e0, 0x20202020, 0xe0e020e0, 0xe0e020e0, 0xe0e02020, 0xe0e0e0e0, 0xe020e020, 0x20202020,
+0x20e0e0e0, 0x20e0e0e0, 0xe0e020e0, 0x2020e020, 0x202020e0, 0x202020e0, 0x20e02020, 0xe0e0e020,
+0xe020e0e0, 0x202020e0, 0x2020e020, 0xe020e020, 0x20e020e0, 0xe020e020, 0x202020e0, 0x20e02020,
+0xe020e020, 0xe020e0e0, 0xe020e0e0, 0x2020e020, 0x20e0e020, 0xe020e0e0, 0xe020e020, 0xe0e0e0e0,
+0x20e0e0e0, 0x20e02020, 0x202020e0, 0xe0e020e0, 0x20e0e0e0, 0x2020e020, 0xe0e0e020, 0x20e020e0,
+0xe0202020, 0xe02020e0, 0xe0e02020, 0x2020e020, 0x20e0e020, 0xe020e020, 0x2020e020, 0x2020e0e0,
+0x202020e0, 0x2020e0e0, 0xe020e0e0, 0xe020e020, 0xe0e02020, 0x20e02020, 0xe0e02020, 0x2020e0e0,
+0xe0e0e020, 0xe0202020, 0x202020e0, 0x2020e0e0, 0xe0e0e020, 0x202020e0, 0x2020e020, 0x202020e0,
+0x20e020e0, 0xe0e02020, 0xe020e020, 0x2020e020, 0x20e020e0, 0x20202020, 0xe02020e0, 0xe0e0e020,
+0xe0e020e0, 0x2020e020, 0x2020e020, 0xe0e02020, 0x2020e0e0, 0x2020e020, 0xe0e0e020, 0xe0e0e0e0,
+0xe02020e0, 0x20e0e0e0, 0xe0e0e0e0, 0xe0e0e0e0, 0xe020e020, 0xe020e0e0, 0x202020e0, 0x20202020,
+0x2020e0e0, 0x20e0e020, 0xe020e0e0, 0x20e02020, 0x20202020, 0xe0e0e020, 0x20e020e0, 0x20e0e020,
+0x2020e0e0, 0x20e02020, 0x202020e0, 0x20e02020, 0xe020e0e0, 0x20e020e0, 0x20202020, 0x20e02020,
+0x2020e0e0, 0xe020e020, 0x20e0e020, 0x2020e020, 0x2020e020, 0x20e0e020, 0x202020e0, 0x202020e0
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..f6de8db
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
new file mode 100644
index 0000000..610a65a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x51720B3D, 0x1F794878, 0x5D4667E6, 0x34A2B105, 0x2FD62AA9, 0x33D1BD82, 0x11FA5252, 0xBC88743B,
+0x5997007B, 0xA975AC44, 0x887D382A, 0x28E0237D, 0x5DF5E8E5, 0x552D44D3, 0x53C9055C, 0x550B345F,
+0x3AAD2C12, 0x078213D3, 0x2B8EBA05, 0x119E2789, 0x89506275, 0x8E561FBB, 0x8AF1DBD4, 0xC13F343D,
+0xDBE99F6E, 0x68DE687D, 0xF9A1B4D3, 0x2D5756FE, 0x325830E8, 0x50A2D6C1, 0x5ED45CBE, 0xF83E0FF1,
+0x3DCD8BA4, 0xE46C05D0, 0xCD82ECBA, 0x0854C206, 0xE726C488, 0xF048846D, 0x00AB1A91, 0xD68FFE3D,
+0x7F4D05FE, 0x1202B71D, 0x0CB72578, 0x399162C9, 0x013E3EC2, 0x9EB5AD1F, 0xD8E554A3, 0xB8FE5430,
+0xAB148FFE, 0x48C16E32, 0x1807F4BB, 0xF8417646, 0x4777FD5F, 0xB77852F1, 0xB70352C6, 0x57F02C5D,
+0xCFA02D64, 0x08E26E56, 0xCFAF88D4, 0x36737403, 0x560BF71D, 0xAEDF2457, 0xC2055860, 0x40EDF15B,
+0x47B63C47, 0x8C7BD3F8, 0x09C87289, 0x0F91C176, 0x74D726D0, 0x0FF016BB, 0x9AB4E25E, 0x17DA3217,
+0x981FAC78, 0x079D55BC, 0x54B27933, 0x03410A2E, 0x00D7DAD3, 0xCA306C5D, 0x6BF2A223, 0x33DD37C6,
+0x6CD8834C, 0xB2F72F2B, 0x2697DE6D, 0xB0E17513, 0x64FF1B6D, 0x15389650, 0xAA1ABBCA, 0x5B41ABD5,
+0xAE5B149E, 0xEE07D0D9, 0x4E94190E, 0x9E9D0F73, 0x41EC7CD6, 0x17FA3EE3, 0x87AC9E55, 0xD8FB9E0A,
+0x1792BC34, 0x537FDCE3, 0x7B883768, 0xE8B311BF, 0x0B24824D, 0x8161769F, 0xE3A06DA5, 0x4D4EB31C,
+0xAB43F5A4, 0xEBD482D1, 0x7074E180, 0xC0F5558F, 0x7ADE2FF4, 0x04A890EB, 0xAF51D221, 0x65899099,
+0xC70FCEC0, 0x89621B73, 0x73E3742E, 0x36721F2F, 0x4CC865A3, 0xC68981D8, 0x8C8678A2, 0xA90557AE,
+0x4AE76EF4, 0xE4C576D6, 0xCD6D2A05, 0xF940C957, 0x31F0E7A4, 0xD6FB6301, 0x1255F423, 0x0E24DFAE,
+0xD420D059, 0xA4BBF099, 0xFEC00685, 0x126216AB, 0x6EE78BCE, 0x0ED826E1, 0xEA3F64C4, 0x07E451F4,
+0xC8A1A696, 0x5440C56A, 0xED2F82A4, 0x5A2D1434, 0x5C60A97B, 0x22542ED8, 0x35619E0E, 0x8B1F6A44,
+0x29B55494, 0x0B6AAF9C, 0x7FC459AD, 0x63E03703, 0x9477B477, 0x49CCAD5E, 0x94732F00, 0x6D19F35C,
+0xD7B4C5A5, 0x3A3FC863, 0x989F4259, 0x78241B4A, 0x36859C33, 0xBD34C4FE, 0x47729C70, 0x9160927D,
+0x5C634916, 0xFF93A815, 0x793DFC07, 0x132DA316, 0x061F271E, 0xA8BA6812, 0x34DDD632, 0xF74EE348,
+0x428703E6, 0x3803C484, 0xA8841F0A, 0xF2C11566, 0xA3A974A3, 0x1ECF7B77, 0x876966BB, 0x0AE8261E,
+0x4F9FC567, 0x87145B64, 0xF872040D, 0xCC001154, 0xDDCAD818, 0xA16975D3, 0x874B6927, 0x9006AE4E,
+0x139F8335, 0x52D892F4, 0x02DB9814, 0x8AEE0CE9, 0x228A384F, 0xB1B608EB, 0x849C96B5, 0xA624B02F,
+0x63F30AF2, 0xF22C47DD, 0x8DC6F495, 0x520763B3, 0x99E6FF46, 0xEE33CF1F, 0x79F3E452, 0x18738520,
+0xEE2E19B0, 0xCB267129, 0x8F32E4CE, 0xA98D3B2C, 0x402B5E33, 0x673F469F, 0xC57BF021, 0x6B65970D,
+0xD02101EA, 0x5806EC81, 0x03FDE9E7, 0x8488D8E1, 0xF75CA4E6, 0x24859DE8, 0x07E7C226, 0x5B04AFF7,
+0xA55FAAC7, 0x9BFF9612, 0x5FDF3D45, 0x38CFB232, 0xDA1F50EE, 0x8BCB1A18, 0x5BDAC9E3, 0xCB07A2CD,
+0x6B277AD1, 0x5166C368, 0xE38F4AB0, 0xC8B60145, 0xCA8659FD, 0x48186C3A, 0xB9B938D9, 0x31C25631,
+0xF9524B14, 0xF96AABCC, 0x30DE5E1E, 0xADDE525B, 0x91364A03, 0x7BFE4B12, 0x518DB237, 0xE6E06AE9,
+0x08C03875, 0x63861F76, 0x8CA1D2C5, 0x8766CE46, 0x0C91E129, 0x6E1A90F2, 0x956E0BDB, 0x09E94D22,
+0x836A87C0, 0x614B1950, 0x39A2C911, 0xC9E4AAAE, 0x13A82D21, 0x5722A44D, 0x72585F11, 0xED5A0549,
+0xE9065DE1, 0x523EF8A3, 0xD0A6A33D, 0xFA0897F0, 0xE7A9304C, 0xA396A9BE, 0xF0E09485, 0x6C632662,
+0x07E9ACDF, 0xD9C21AF6, 0x7F26397E, 0xD3EBF6A8, 0xC04D15F8, 0x17134F92, 0x95C7AB49, 0x622B1080,
+0xE066BB13, 0xD849FF19, 0x2D20AEB6, 0xDAA89F18, 0xF03406B9, 0x4E7F0D6F, 0x41627FCF, 0xF74B94C7,
+0x842C88D5, 0x0B3BD215, 0x87C550B4, 0x7BB39B24, 0xBAD7890B, 0x7074E1F0, 0x7EC31BEB, 0xA8DEB258,
+0xE7F95D43, 0x4AEA8A72, 0x6A1DFB9A, 0xFFCC64BC, 0xC5DA05F7, 0xC50F59F4, 0x47718364, 0x3CB70917,
+0xD070635A, 0xA9F94561, 0xF9A9E43F, 0xE3145D32, 0xED862CFB, 0x90B95177, 0x63FDD2D1, 0x2B4BED50,
+0x9CB19075, 0x7C689E22, 0x5D514DE3, 0xA654D7F4, 0x4D80443D, 0x0049F184, 0xC5BC952A, 0x21027E89,
+0x36EBDC1B, 0x4E7B570D, 0x172D470D, 0xFE0578E0, 0x418557E6, 0x0FBD99B0, 0x44AE1CB6, 0x891E4C35,
+0x1E20B86F, 0xF0BA67DD, 0x491A37DA, 0x6DB08136, 0x145279F1, 0x619AD857, 0x216914D3, 0x4F70F3B1,
+0x1CFD20FF, 0xC19C381A, 0x205215BB, 0x9F09C616, 0x478C1F7B, 0x501D7EFA, 0x2422B2A3, 0x992BBAC2,
+0x19096B7F, 0x209D76F3, 0x5F7B22CC, 0xA7144CF6, 0x59D88E8D, 0xD60F3D9C, 0x37B3C398, 0xB930D494,
+0x1133E58B, 0xEE477D53, 0x06D72053, 0xF5044CF7, 0x78A7E8C1, 0x09F17983, 0xF2A8A0B1, 0x77F180FB,
+0x60E30775, 0xBAC1F2C1, 0xFFF1351A, 0xF30951B7, 0x291F6D06, 0xAD25387E, 0x265F049B, 0x785FD7D2,
+0x65491824, 0x11769597, 0xBFB649F5, 0xA026D7CE, 0xE91ABEB2, 0xF811133A, 0xAA83358E, 0x7C62D43B,
+0x425831D7, 0x1DBCCE9D, 0x8235C15F, 0x43AA0ABE, 0xC7B29493, 0xDFC016FB, 0xEDCAC598, 0x9A11AAA6,
+0xBBEC1337, 0x02834758, 0xC206205B, 0x082456D3, 0xDCC2B044, 0x03AC56C8, 0xE27BCB56, 0x018D8AFF,
+0x9B1F4CA9, 0x67CECE57, 0xB0313823, 0x05033890, 0xF9CBD85D, 0xB395AA6D, 0x1DD71CEE, 0x01903F60,
+0xDFDDA2B2, 0xDDB3047F, 0x37B6CA26, 0x3246AF0E, 0x34D4A195, 0xAC73D9A8, 0x42ADA3B7, 0xDD5C3C54,
+0x3A72DD01, 0x7151C6F1, 0xC89C9B9C, 0xB9DB48F0, 0x46BB567F, 0xA9B6C1A9, 0xAF7E85C4, 0x68042154,
+0x8EC768E3, 0x39548F0B, 0x3CE01720, 0xFC65D725, 0xC8BE167D, 0x18BC7B2D, 0x80674517, 0x70EF0D28,
+0xA1690EC4, 0x7A799319, 0xD3AA9E04, 0xB9E030AC, 0xE27419A2, 0x176F78BC, 0x3EEE2D51, 0xB2AFC5B2,
+0x077698D9, 0x822CFB42, 0xD25FEA37, 0xA8B5C937, 0x9F370837, 0xCB65BF77, 0xDB50947D, 0x61385C2A,
+0xD541BBD8, 0xAFB82860, 0xE371CCBC, 0x1012BCE6, 0x514A2569, 0x54E24293, 0x55C5B14D, 0xBFF8A596,
+0x55123AE2, 0xBCD878AE, 0xA5FF8791, 0xCC3679B6, 0x6E259F3F, 0x31D753E7, 0xB1478405, 0xDC2E5B10,
+0x6B392239, 0xBD77A5E0, 0xFA36261B, 0x80F27129, 0xFEB94108, 0x278C047F, 0xA26A9CC1, 0x4E74CF6F,
+0x25491E28, 0xD9A6CE85, 0x35006F8D, 0x589423E3, 0x1C05EEF5, 0x008ED038, 0x8ACE06D5, 0x0B55281B,
+0xB55154DD, 0x3B195345, 0x3C28F9C9, 0xE165EC9D, 0x464CBADF, 0xF8F03418, 0x52FCBC67, 0xCB5C6973,
+0xA14FA25D, 0x973C43FF, 0xF6100F0B, 0xD4155060, 0x6CBD9CBF, 0x9B94BED1, 0xBBAA2867, 0x84B17971,
+0x3D14474C, 0xBECDCFB8, 0x9CB8E718, 0x9BD16545, 0x5C4B7A27, 0xEB1C6F14, 0x06E67AE5, 0xB68D17C6,
+0xCF2BA7ED, 0xC61BB1F8, 0xDE1CD101, 0x547FB898, 0x9AB8536C, 0x6B76F050, 0x9D59DC7B, 0xB2ECB46F,
+0x1877197E, 0xEA4B79D3, 0xCBE45D0E, 0xB99469E2, 0x9C56EABE, 0x8AA0F403, 0xAB65CDF8, 0x1F484CC1,
+0x8355CBE1, 0x6338F2A8, 0x1EEE1322, 0xBD847B99, 0xB1A569B5, 0x93E5A15A, 0xEE93C79B, 0x8FE25028,
+0xCF67B061, 0xBD2A614B, 0x9D445C5B, 0x7196C073, 0x1C8A6DE4, 0x41C09CBA, 0x65CF737A, 0x6DA36B61,
+0xAD9325C2, 0xFAAD734D, 0x715ECA40, 0x117BE977, 0xEF7DF069, 0x34DF16E8, 0x41FCA499, 0x58A5DB4F,
+0xE0F0CB7E, 0x7660DB44, 0xF3DFD005, 0x95D89968, 0x381A4768, 0xC4BF229C, 0xB1286C4B, 0xB2E2CB2D,
+0xD5095702, 0x559473EF, 0x4930B978, 0x21C2453B, 0x28F0097C, 0x1BE9FDD5, 0x1DF7C3D3, 0xCB8C83DA,
+0xE9EEAAC5, 0xEB54B497, 0x8F27C608, 0xCAB6F4BC, 0x3083244C, 0xD91367E5, 0x6D0DD8AA, 0x376A49D6,
+0x945D17A5, 0x34383F0A, 0x226C7D81, 0x539A5462, 0xE5D65B82, 0x2BACD2F9, 0xE51ACF32, 0xD4533AA4,
+0xEE47A8B1, 0xD541AB7C, 0x62998347, 0x3352FE1B, 0xF6701330, 0x45ED05C7, 0xE24E04F0, 0x07D152E0,
+0xCC17012E, 0x7B0AE79D, 0xEA8E9A4E, 0x6B9CB1D4, 0x0A14FB89, 0x1428463A, 0xCD20FE48, 0xA2F06258,
+0xC4C9935E, 0x609CA8C3, 0x9505DC5A, 0x5D6A8960, 0x25C845B7, 0xF4472F91, 0xF4BA06DA, 0xC387D335,
+0x60CAFE37, 0x54521AB6, 0xE954A5DB, 0x807AEDDF, 0xBEA54C4E, 0xAB63189D, 0xC533E9E4, 0xD122036F,
+0xB660C152, 0x16C622DC, 0xA62E4EBC, 0xC1AFA1F0, 0x3F93D72C, 0x516D9036, 0x69F429F1, 0xFF61A62C,
+0x0E0DBA6C, 0x5F8E6270, 0x37EB8C94, 0x02686070, 0x4DEFF6F1, 0xB46F4CD8, 0x9C5F4989, 0x7AF3E147,
+0xB9ABAAE9, 0x530FE486, 0xDA64455B, 0xE1AC28EE, 0xF869E55F, 0x8CDF0629, 0x28CFAE5D, 0xE42511EB,
+0x82A22ACE, 0xD81EDF39, 0xDF29CE78, 0xBD9C0B32, 0x7D55CF04, 0xD24B07E3, 0xDD8C58D6, 0x683D73F7,
+0x67ED7F4E, 0xC44DF267, 0x3348567C, 0xDC58224C, 0x0FD21085, 0xA1AAD313, 0x05D0653A, 0x4668BA1E,
+0xE8E54661, 0x67528EC6, 0x8A96C5C0, 0xAE18B780, 0x12C4F729, 0xED6897B4, 0xEB9BE180, 0x4213D183,
+0x5C2F41F9, 0xF6CF9903, 0xE137CE1C, 0x22472A15, 0x2C49EDE5, 0x4FE2B949, 0x622A5C7C, 0xC60B261A,
+0x23FFB032, 0x7557BB31, 0x73B43B29, 0xBF8F592E, 0xF77D8A06, 0xFDFAD099, 0x682F02DC, 0xE4B88537,
+0x909C487E, 0x6ACF8698, 0xF25317F0, 0x9DDD150A, 0xB6A6B219, 0x2F88A7C2, 0x4F1EFAD7, 0x6844FCEC,
+0x7CB0E34A, 0xE73F1855, 0x3BA461E4, 0x8CD5C541, 0x8FBEDD90, 0x5F7428E3, 0xCAC85442, 0x3F35E219,
+0x70DB1A13, 0x77956148, 0x73DFCA5B, 0x8AD5DFC4, 0x68D5634D, 0xB102D653, 0x5F02FA10, 0x149B86A7,
+0x8BD11AF0, 0x4E5B51AE, 0x93BC007A, 0xD2044B19, 0xCDBCCD58, 0xF72F9D4E, 0x2C6523CC, 0x64EA5F68,
+0x6B4756A7, 0xDE2200AE, 0x75604B42, 0xC272519C, 0x78351E10, 0x45A909E0, 0x7D60FC9B, 0x4AD3D619,
+0xF6CB1E85, 0xC922F020, 0x6B8ED326, 0x016123DB, 0xA4B01ECA, 0xCAEA94DF, 0x758F1531, 0x7853E744,
+0x75E076F4, 0x89E63239, 0x18076EFD, 0x73F6B66B, 0xEC1E50E9, 0x6665B92D, 0x7FE3A0A0, 0x765D6E3D,
+0x269CC3E6, 0x151BF69E, 0x5D888F2C, 0x8606D58B, 0x34556C2D, 0x772BFD84, 0xD2CEC1F1, 0x19657FC7,
+0xFE618CB3, 0xB1D72F2D, 0xE564F765, 0x75C308E3, 0xF08F38FA, 0x30353774, 0xF513517C, 0x6C49903F,
+0x7E7BBB0D, 0x40C36AD6, 0x492B7B4C, 0x39757376, 0xBB9C60F2, 0xED812418, 0xB2291400, 0x4FB57E8C,
+0x1820B510, 0x4764C4DA, 0xEE7040A6, 0x6041E905, 0xF4330270, 0x868AE751, 0xE38DEAB9, 0xD3B20918,
+0x79C258E0, 0xAC874D8E, 0x9550A947, 0x539FF577, 0x5018EB82, 0x58BC22F0, 0x100BFE26, 0x52491E2B,
+0x513761BB, 0xEB21862F, 0x0195F1F5, 0xA0A522F2, 0x1BD21E11, 0x3A15B38B, 0x1530FE09, 0x3841E8CB,
+0x74B56759, 0xAC907E5E, 0xCC8695B2, 0x513FCAD4, 0x2E284F99, 0x09802A83, 0xFC67F995, 0x6A2BA176,
+0xCE37BAE8, 0x270D8DB8, 0x424D3D63, 0xD0E0F8B8, 0xF01ECFF3, 0x0A4F0B47, 0x6837A59D, 0x76D32DA6,
+0xB24A85D7, 0xAF950042, 0xFFCD9AB0, 0x6BD79F9A, 0x52DF8B2A, 0x62D81BFC, 0x2FF92AAE, 0x578EBB2E,
+0x669772BC, 0x2F755594, 0x71C48903, 0x5AEB6CE7, 0xD0D4695C, 0xD0082CF2, 0x499BC2D2, 0xF4177760,
+0xDE7EE37D, 0x9CC47CE2, 0x55270C58, 0x51DA31C6, 0x6FF550C4, 0x91970735, 0x8604C4F2, 0x21D8812F,
+0x116D329D, 0xCC43378E, 0xCD5C5414, 0xFA23B2CF, 0xC4EA168B, 0x0B95D110, 0x027C1BD9, 0x902522CB,
+0x9D35781A, 0x0FD9620A, 0x0D235356, 0xB0155399, 0xAD93D8DC, 0x863D90A5, 0x07F31447, 0x52C32D67,
+0x42BF7F12, 0x3EA615E2, 0x2EF7C68A, 0xB266CAF2, 0xBF10E1DD, 0x0289B129, 0xC765DE2B, 0x0425F56A,
+0xEF6725AF, 0x15482D61, 0x299BC121, 0x37E3F009, 0x4E1B40CD, 0x21CFD81A, 0x89F59D43, 0xEAE869A5,
+0xC5DA5D72, 0x3D2E05B5, 0x40B1E42F, 0x243CECAC, 0x3E8011E3, 0x05706D92, 0xADB36FB7, 0x368A76C1,
+0x861D14E1, 0x6A75CDF1, 0x9C170293, 0x5D3E7920, 0x2846D4EA, 0xF0A839E9, 0x456E8313, 0x9AFA5F5A,
+0x88E7C02A, 0xE6D7B0C0, 0x888A3119, 0xB7E0C142, 0x33A2672C, 0xF629CD26, 0x1AD95E2D, 0x847C2ACE,
+0x9A6178E6, 0xD1965890, 0xA0AB9C4E, 0xC6F84E66, 0x2EF71F5A, 0x466416A2, 0x64DA94FD, 0xDA420C3F,
+0x628D9DD2, 0xB0660BC9, 0x73D738F7, 0x23474708, 0xB1C01B97, 0x24C409BB, 0xCDA973F1, 0x921F315B,
+0x34E41AD2, 0x98E3D86E, 0x8E9EB06C, 0xFD01C0C5, 0xB53BF406, 0xFC55AA14, 0x465F25EA, 0xC9015011,
+0x2A7981DE, 0xEBA54881, 0xE1DD1AA1, 0xEB0D557A, 0x24E00D48, 0x1B062CEC, 0xBCBEFD4D, 0x4224EE50,
+0xAE018A67, 0x86F89F72, 0x16DF37F0, 0x14280530, 0x8A4FCBA2, 0x34B82D2F, 0x5C75AFD3, 0x9A883077,
+0xBDAD5896, 0xF2D49057, 0x93443C2C, 0x26FC7728, 0xBE68CD8A, 0xF2E58177, 0xFC662BFB, 0x12A8B923,
+0x97E2D7FB, 0x94B46697, 0x3E40F2A6, 0x2B1C779D, 0x429261C8, 0xDC35EACB, 0xB3599132, 0x82411F96,
+0xCF95101B, 0x0ED29D5A, 0x983CBB10, 0x53B856F8, 0x0BD21F78, 0x2D0F70AC, 0x8D9F7BE9, 0x6C289AF6,
+0x0951B4E8, 0x18420FDE, 0x3A0C1647, 0xD7581C3C, 0xB6A581AA, 0x86C36E86, 0xED0DADE7, 0x3DC0A3F8,
+0x9D2486C5, 0x43280493, 0x51A78F3B, 0xA6F3C39D, 0xE4AB1CC9, 0xC1C8E1B3, 0xF4A5CD45, 0x43762C67,
+0x67CA6AC0, 0xBB693E74, 0x95B7DC41, 0xE5C32875, 0xAD1DF5A3, 0x9AEEDB72, 0x4DC689C1, 0x8D1A43CB,
+0xFF3C24C7, 0x6E13B0FD, 0xB80796BC, 0xAA29E2C2, 0x8D41CBFA, 0x08F193A2, 0x166D91BB, 0x5DE3BA7B,
+0xF026AAFB, 0x2D4FF0EB, 0x00763051, 0xA5D87EC5, 0xF2D0952F, 0x264B84D3, 0x7D52BA15, 0xA4DBC32A,
+0x6D37D449, 0x867C429B, 0x24F649DE, 0xA1C05AF9, 0x036864D0, 0xE0C427AE, 0xB66B56F7, 0x4A92DF71,
+0x2BF6EFD0, 0x1527185B, 0x1DB501A0, 0x48E33DFB, 0x799FD1C2, 0x9BE71138, 0x186F8C4B, 0x40637F9C,
+0xCBD2B6D6, 0xB7D2866B, 0xB99F91B1, 0x656DC541, 0x3115BEBA, 0x7F7E186F, 0x33237B58, 0x8F27330E,
+0x629DF2BA, 0x0D65CABA, 0x6EB639E6, 0x75B4838D, 0xB71F0CC9, 0x0A73282E, 0xC5D6E9CC, 0x00E23512,
+0x643B61B8, 0x184DA6CD, 0x507562EC, 0x401A7564, 0x6502C287, 0x1498D3DC, 0xCDB69377, 0x6785C09E,
+0x99A5B15C, 0xEA52FBB5, 0x9CC1FE10, 0x213B92FE, 0x92869B62, 0x0002B391, 0xF6196A22, 0x14E8CCEE,
+0x06952624, 0x8755C50A, 0xCF9FB6D1, 0x8024245F, 0xB330224B, 0xB69B4E23, 0xE900C840, 0x17378F6B,
+0xB1C5C9AA, 0x365D98D7, 0x84372922, 0xA8859E29, 0x8CC062D0, 0x5D14948F, 0x79631FDF, 0x4603A8F6,
+0x3A944E65, 0xFB11FBB7, 0x977B4797, 0xD327ECA0, 0x2C66F4A6, 0xC1ED6C71, 0xCC54322A, 0x666A1D2F,
+0xF9957A72, 0x708FD038, 0xF4939492, 0x16C308AC, 0xBDFE8C4F, 0x03A56B55, 0x599EB4DC, 0x03B7F563,
+0x6CEF20E2, 0x1E830B0A, 0xBE9CC6E7, 0x2F73F67C, 0xFF26AA29, 0x38E01FFE, 0xFCDDB7C0, 0xAD82FD69,
+0xDE2B29BE, 0xEEE44C1A, 0x02E81890, 0x97A26194, 0xB6660513, 0x37953153, 0x8C99F39A, 0xB5257B11,
+0xB5FB5C93, 0x06B16E49, 0xC0C4311C, 0x21517366, 0x534A32F0, 0xF72873CF, 0x9C447EA4, 0x821A428B,
+0x92080B41, 0xF9207690, 0xEC3121A2, 0x88923ADF, 0xB22DD5EF, 0xACCDF948, 0x5FB73CF7, 0x68AD33AD,
+0x1C3F8C54, 0xC7360226, 0xE538F3C7, 0xF0C1418E, 0xC590BD5A, 0x14160C26, 0x2E266276, 0x7CE58F02,
+0xE5A255BD, 0xBEA2A6CA, 0xE85527FF, 0xAB62F48A, 0xF3D56430, 0x36B38A77, 0x4A8E2E37, 0x6B5E55EA,
+0x6F814FED, 0xC17C4E67, 0xC296DF1E, 0x59E9D04D, 0xBC78F5B3, 0xAB37D967, 0xF8428744, 0x6303DDF9,
+0xE1807D98, 0xA0BAE3E3, 0x26E84D01, 0x618E08FA, 0x0CF0FC7A, 0x911A771C, 0xDB458E3E, 0x5D920C83,
+0xFFC40809, 0x235DCFFE, 0x68E1C98A, 0x9020BC6B, 0xD1A00FEE, 0xAE76B089, 0xC8E6F169, 0xDFC541F8,
+0x65876337, 0xDD1D7ACF, 0x5441C29E, 0xA7B5CDC5, 0xDF068CC9, 0xD9AEF898, 0x8748E9F9, 0x8D46B66B,
+0x41CEADE7, 0xD228472C, 0xBAAC5EA3, 0x1459D639, 0x46D7005A, 0x3646D722, 0x5098793C, 0xC3BADAE9,
+0x23831605, 0x88D56902, 0x7D22FBF7, 0x6963BC9B, 0xFFAA0CC0, 0x20ACAEF8, 0x3EB1E8BA, 0x4367A693,
+0x2B15F4A8, 0xEBF05245, 0x1B19BC91, 0x63A52E8F, 0x64E44548, 0x31ADCA08, 0xB8CDD353, 0x55357C6B,
+0xB7549F77, 0xFDA90353, 0x19A52D09, 0x2E630C5A, 0xE251717A, 0xD496D0CD, 0x302392B5, 0xB720E90E,
+0xDECE39D2, 0x167EB923, 0x4AEC7C87, 0x166F0D11, 0x0A7716C0, 0x5EA8A35E, 0x61818795, 0x25619A2F,
+0x0C36E1EB, 0x5301166A, 0x7E6C0972, 0x4C2ACC5C, 0x19379672, 0xB6C89205, 0xB44525A9, 0x4334A835,
+0x522CCADD, 0x8100BFCF, 0xE7FBB2AA, 0xBD2078D4, 0x82BC039C, 0x0028F607, 0x596A819D, 0xC55F98D3,
+0x9741C7C5, 0x2CADFA60, 0x8C0C37DF, 0x14F486EE, 0x43831895, 0x348BED8C, 0x6D96F7DE, 0x561D71EB,
+0x99251352, 0xDBFF7F02, 0x0D2B5D71, 0x61A3F1F6, 0xF6BDDD54, 0x3C1EE6CF, 0x100F993F, 0x522C993E,
+0x81C8B272, 0xBC024046, 0xD3C7F659, 0x0AFC9809, 0x3951666D, 0xA76382D4, 0x213254FA, 0xA0F79581,
+0xA05BDEBE, 0xC424733F, 0x568AF0E2, 0xA79EEB13, 0x38A54B1F, 0x426C64D8, 0xEB63779A, 0xAD0C8182,
+0xFE3C9D54, 0xAD867829, 0x2E1558F7, 0x3B2F60CA, 0x854BDA1D, 0x81E879EB, 0xDB6B191F, 0xA4D81A7D,
+0xB08D004C, 0x257CB37B, 0xD2AE9EE1, 0xADE547CA, 0x1513E54B, 0xE515E8A8, 0xB63382EE, 0xBB5952B7,
+0x3888D3F4, 0x11B9F6A1, 0x736007FC, 0xCAC4DB49, 0xC65BCED3, 0x1534E63C, 0x72B34D87, 0xB46BDA5A,
+0x0B09131B, 0x3248E1A5, 0x982C52D5, 0x312F5B0A, 0x8B5221B7, 0x560EAE75, 0x86E74A54, 0xC45B6ED0,
+0x430FCA58, 0xB54CA555, 0x83E701B6, 0x5E3F1A11, 0xE42595FC, 0xC5D30EBD, 0xCDC3D6A9, 0x281D97DB,
+0x3D48E424, 0xC8F5E788, 0x0A38BD4E, 0x67619920, 0xBA91BD8A, 0x4C2685A8, 0xE12F2D99, 0x68860336,
+0x1EFAD0DE, 0x82E773D9, 0xA9B81507, 0x4F793718, 0x03C89FDE, 0xAAFA74B3, 0xA9923B7F, 0xC60D6383,
+0x25523B53, 0x94B8F271, 0x05F62AAB, 0xD22036AF, 0xFB84E8E3, 0xD26B7725, 0x52CAF750, 0xA6B90733,
+0x1679D26B, 0x46C51D02, 0x872DBA4A, 0x8A6BBACA, 0x44B2C653, 0x4BE93B46, 0x4E50CD1D, 0x360E7674,
+0xDE46E0A9, 0x29165A8F, 0x36769217, 0x25692D35, 0x09C78FBF, 0xAF2CD00A, 0x4E6104A9, 0x30A7CD1D,
+0x2E4CF64B, 0x3E343974, 0x376D1C2C, 0x7CEA27D5, 0xB49AD3F4, 0x8CA5464C, 0x929DB7DD, 0xED365DDC,
+0xCE4C30BB, 0xB309DB4A, 0xB8CF523D, 0xBC1A5DB5, 0x46941CCA, 0x0BB801F3, 0xE5E7BCA4, 0xD2775721,
+0xD12216E1, 0xD1C30356, 0x487CA764, 0xDAA6F07A, 0xB55D9865, 0x1FD2A768, 0x75FB14C6, 0xB95EFD60,
+0xF04B3712, 0x43C690B7, 0xB36E72FD, 0xF19B180A, 0x10885E98, 0x574DFE46, 0xE6E0857C, 0x7D957916,
+0xBA2C5422, 0x901BE8CD, 0x710ED3A6, 0x6B654715, 0x18D47B35, 0xED3DBEEA, 0xDA2EFEFC, 0x1435655C,
+0x48518EA4, 0x925868CF, 0xF7DF8142, 0xABBD187D, 0x664071FC, 0x8B0D1DAE, 0x93B0E1B0, 0x493CBA04,
+0x1DFE1D84, 0x6076959D, 0x0BBD1D1F, 0x174B8F15, 0x05EADB39, 0x85882865, 0xCA2E67B9, 0xDA6B7F16,
+0x6BDECD74, 0x30451F7D, 0xF2CDB314, 0x1B059577, 0xEBA0AAD3, 0xF34F55EC, 0x5642B9F2, 0x35B79FAA,
+0x1BF4C0F5, 0x07553B70, 0xA7D6E2CE, 0x46BFC421, 0xC79D957F, 0x4A1F4664, 0xA553888F, 0x96C1E3F4,
+0xE26DDFDC, 0x9701D42B, 0x7885B76C, 0x2AF0334E, 0xF1C99A18, 0xD4DF3CC6, 0x862368B7, 0x209E33E0,
+0xDE37A458, 0x85189E5A, 0x480B41FA, 0x65596FF4, 0x7F3ED63F, 0x24FF7C1A, 0xD4FA1AE3, 0x0476407B,
+0xF31B57D9, 0x48C12741, 0xCC81C4FA, 0x842E6F92, 0x96AD0091, 0x6DA5E294, 0xBBF7990A, 0xDCC365CC,
+0x588EC677, 0x01541D90, 0x9C1F0C9F, 0xAF545419, 0x15F252FB, 0xFC17416F, 0x2D0AEBA8, 0x20C9F171,
+0x72D7FD24, 0x5ABB1FBC, 0x8C78541F, 0x7DDCA0C5, 0xD6052EDC, 0x1A9B17D5, 0xAF1A0520, 0x41B75608,
+0xCDFD6875, 0x8B090E1E, 0xE051BD80, 0x3880A8CA, 0x7CE8C7F9, 0xBD174BF9, 0x330C93E7, 0x153E3663,
+0xD40FE5AC, 0x18D3524D, 0x2DE90E40, 0xD00FD5FD, 0x3E341A48, 0x4B692F17, 0xBA1846B9, 0x6F6BBF38,
+0xF65D9FC6, 0x79DD8BE8, 0x96697CB7, 0x57A46B02, 0xDA36F017, 0x5C61CA7F, 0x438EEE7C, 0x288BE1F6,
+0xD461CA09, 0xE21A8707, 0x23D613AC, 0xE202078F, 0x435C7ABE, 0x543F7C2E, 0x9C86F08A, 0x9FE5D7EF,
+0xDE3B6F2F, 0xAF314EC0, 0x480F41DB, 0xDB9CCF69, 0xAA84D589, 0xBB86095C, 0x4EB3989C, 0x43AFA06F,
+0x43CBC88D, 0xCFF61FFF, 0x3B19F6AF, 0x7F4DB62A, 0x6877C1BD, 0x00049088, 0x985E6893, 0x25AF7B17,
+0x3B8CC125, 0x110D8178, 0x4225B1D1, 0x6AB332EF, 0x03DAAF48, 0xA727EBD1, 0xC290B4FA, 0x25DEB8F5,
+0xD191E391, 0x16C68527, 0xCDA26352, 0xD015DE2D, 0x1741279C, 0x6FF0F803, 0xCAFA80EF, 0xD642D9F6,
+0xED1DC232, 0x3C59A8C8, 0x9D2225BA, 0x7C0BFC04, 0xDB644EFC, 0xE4B3F2A4, 0x69443508, 0x3D80A30D,
+0xD3B6B1D0, 0x31ACCF5F, 0x80CD2E1A, 0x57825477, 0xF1264F44, 0xEAE834D2, 0x1D92A406, 0xA83D1578,
+0x080992B7, 0x288382FB, 0x12A81D35, 0x4B1075BB, 0xD901809E, 0xAEF2FF44, 0xB5AB83E2, 0x3D2CFB1D,
+0xBC3B924F, 0xDBABC7D2, 0x3D21FE5E, 0xED96310C, 0xD7A58284, 0xAD97D931, 0xB3F22626, 0xE17B26C9,
+0x753C5590, 0x658D2059, 0x10542CC5, 0x1111B130, 0x4511BDC6, 0x4B0130D2, 0xB9A49E56, 0x7B3C0040,
+0x14A7F5B1, 0x284CD74B, 0x5986AA3A, 0x288A6778, 0xCF8C345B, 0x7EC2DB9C, 0x4143723F, 0x8EFFF053,
+0x37F636FB, 0xB3B2C326, 0xB0C691FB, 0xF8B17E9B, 0xC18E4AC3, 0x87E5AEAB, 0xE10C6BCE, 0xC2E5D43C,
+0x16483523, 0x5811BB6E, 0x2491077F, 0xAADD640A, 0xEB482771, 0xE2CF2352, 0x118F3B30, 0x65CAD3D3,
+0x321FE964, 0xE323B837, 0x4661C10A, 0x3E0B9B59, 0xC910DC9A, 0xF469111F, 0xB84BC256, 0x7D4F988A,
+0xBE471C62, 0xAE0B49E3, 0x5CF09417, 0xDA56D516, 0xD058BC34, 0x4ECF94FD, 0x262E56EE, 0x40A6F15D,
+0xF4B3011A, 0xB9A90E28, 0xD16F10D0, 0x78D27564, 0xD2999E23, 0xFE2FC577, 0x51D1CB6C, 0x9305B848,
+0x9C18BB0E, 0xFC325BD2, 0x22CC897F, 0x7BECBF34, 0x71FA7C5C, 0x896A83B9, 0x7B77EE42, 0x9DECA2FE,
+0x99A4DA7F, 0x0577D802, 0xF623F0E5, 0xC13A882A, 0x8A0EACF4, 0x771E5959, 0xBC717207, 0x4DA27722,
+0x3B57A0CB, 0x3CE0C56E, 0xDD13EECB, 0x0E8FB826, 0x49D6FCF5, 0x9C059DB5, 0x75D235AE, 0x5E8EF898,
+0x3D4D21EE, 0x9293C72F, 0x3AE81056, 0x7E881C2A, 0x734578F3, 0xBCA210E5, 0x9F69FEFB, 0x79E858EA,
+0x59338994, 0x77F5BF5A, 0x62CC7CF7, 0x324B66AE, 0xB61F0F28, 0x5960913D, 0x8408FD29, 0x32EA8286,
+0x5540E8CF, 0xCF9ED028, 0xEE5E4CD5, 0xE1F6DE47, 0x66492D8B, 0x33731885, 0x06D58B2F, 0xA22C4480,
+0x720A693C, 0x71DE4D01, 0x40D9C3B0, 0x79034CC1, 0x3C696507, 0xB68925CD, 0xD04ECFF9, 0xF39B20E7,
+0x0878361E, 0x148D1A6C, 0xBEB29DB3, 0xC8A7CAA5, 0x5DD28BF5, 0x3ED0FDB1, 0x9F2F17F0, 0xAEB77A1F,
+0x85A3376C, 0xE45C2545, 0xC3AD7E05, 0xC778D187, 0x28CB977B, 0x935896BC, 0x3062366E, 0xE19F8C28,
+0x613CC306, 0xDE682224, 0xD8681BE6, 0xD07EC9A8, 0x361D7118, 0xC1980698, 0xB9F1A444, 0x19AEF7CD,
+0xEDB3B800, 0xDDF00DF9, 0x434AD5EC, 0x1B9A9F94, 0x473F8951, 0x42A873D2, 0x8FFA7322, 0x2385EEC1,
+0x0B5E64AF, 0x93E6A894, 0x5FE84189, 0x50B49DD1, 0x0F4DA031, 0x195755BE, 0x32D75892, 0x0ACC8DC3,
+0x8004D52D, 0x71468A4C, 0x52212406, 0x4287C465, 0xDF11D168, 0xCC65162A, 0xF5ABF6D7, 0x1FCF4564,
+0x336B65B5, 0x6D8D79F3, 0xEE173A9D, 0xF8B7FEC7, 0x3499122B, 0x3A66F559, 0x638B0106, 0x9AC6A2A2,
+0x506AEFA7, 0x5BFA19AC, 0x0041D429, 0xCC84FBCD, 0x92AB1098, 0x35B14F91, 0x4CA47441, 0x8BEFB0FD,
+0xA676A214, 0xE0BCFF1B, 0xB66BBCFA, 0xF7F51AE3, 0x8923E853, 0x7C8E2648, 0x63DF4DFA, 0x5B126708,
+0x4CF77405, 0x62FC871B, 0xE72B0321, 0x0AAD3B56, 0x85F9D3B6, 0xCBC955E6, 0xAAB642A6, 0x84889402,
+0xCC4F93D8, 0xCCD64C70, 0x6A057B76, 0x3E2772FC, 0x2EA5818A, 0x12529546, 0x52475902, 0x5E880125,
+0x5DA0456C, 0xE7E0B221, 0x67B28F28, 0xFF2BE95D, 0x77E57E3D, 0x0D17692C, 0xD7C794E1, 0x3E84593A,
+0x25336650, 0xBC797326, 0xC15F09B6, 0xF478DE56, 0x4B8FB9DD, 0x7CBBDD49, 0xA6BB7109, 0xC6A8E4AD,
+0xDAF13B13, 0xA27DA108, 0x03F2BCE7, 0x4DC09AEC, 0x28CF76CA, 0xDBF1C1DE, 0x8BD483AE, 0x920C9F94,
+0xC8F8DAFD, 0x1AD6F0E1, 0x1A98DFFA, 0x958A88B6, 0xA4DFDF05, 0x2DCDC1C1, 0xAF1DB965, 0xC49BC2F8,
+0xFBE0068E, 0xDBF0EDB3, 0xE802C7A5, 0x13231111, 0xFE0DEB02, 0x07520A34, 0x48EAF3C2, 0x14BC90FF,
+0xE90FA247, 0x387A087A, 0x33C9B353, 0xF10C31EA, 0xCE1D9AFC, 0xB1CA2313, 0xA64D0F07, 0xB819C617,
+0xDDC74CE9, 0x1E71FD85, 0xF53E59A3, 0x03AD9E1C, 0xD7732E22, 0x7FC3C3B6, 0x01E8B625, 0xC66BC83E,
+0xD79B59C4, 0xE0C2A9BF, 0x6A867FB3, 0x6FAEE85A, 0x0272F51B, 0xFF5C02C8, 0xE5898EA5, 0xE6F1A24F,
+0x7A635176, 0x0CAE04B6, 0x62B2CB88, 0xACC872A2, 0x4CC37EC5, 0x541BD489, 0xA79318E6, 0x10E757F7,
+0x27B15205, 0xB1A7F8E6, 0xD97C6A7E, 0xDC1531F4, 0x32AD9F27, 0x503FECE3, 0x2FE7ADDA, 0xA87FCED5,
+0x3B2491F2, 0xDE3CBDA6, 0xD9B0DAE2, 0xF9E8C840, 0x59889C6E, 0x5C36F39C, 0x5A34AB42, 0xA9F0D73D,
+0x1DDA3D46, 0xEAD8A643, 0x4BB1EEB4, 0x26F9DDC3, 0x4080BDFB, 0x06CCB813, 0x7FEA0F7A, 0x733EB400,
+0xA0924D92, 0x81A2F4AC, 0x2186A2FB, 0x65E3FE75, 0x1C3CEF14, 0x2AD276BF, 0x755A9FBB, 0xA0C06172,
+0xE865A631, 0x51342ADE, 0x4BB57166, 0x9541788E, 0x43560A1E, 0xA6C99C47, 0x3DABB2DF, 0xEE0CDFCA,
+0x73FD7A8F, 0x9BB98F6E, 0x396300BF, 0x2B8F632E, 0x3B7C2C58, 0x6E0B3422, 0x7989D727, 0x0284E1CD,
+0x672E2062, 0xC29D80E7, 0xF4431487, 0x63C036A4, 0x92AED164, 0xD8B2D5A5, 0x5EDB7F85, 0x200F678F,
+0xE666306F, 0x19EB1C1F, 0x568C784B, 0x7EAB553C, 0xD3A81CA7, 0xADFB1A35, 0x81F6C982, 0x5D404242,
+0x1F37F1D8, 0xA0248CA5, 0xCB9429C7, 0x81D2FB09, 0xBF2CCE61, 0x34F94870, 0xCEA29187, 0x8CD6B738,
+0xC852A643, 0xE6FF9838, 0xF672E339, 0xBC9CF529, 0xBC1A7270, 0xF332DE45, 0x2274324F, 0x19D3ADFC,
+0x3A9D6F9F, 0xB6623720, 0x1C0D53C6, 0x9C9B005D, 0xC807DB70, 0xDBEB4D1A, 0x23DF5E6A, 0x31653D24,
+0xE9EE9A3A, 0x883C2682, 0x4FDFDBB8, 0x01931B79, 0xB96B2953, 0xD1BBB9EA, 0xF804DC6F, 0x9FF07047,
+0x0676AEE3, 0x34346AC5, 0x15061183, 0xBD07BC81, 0xB644448D, 0x4C27AE5D, 0xB72888F1, 0x25B28D85,
+0x1528B52C, 0xFEAEE891, 0xAE86255E, 0xA275F0FA, 0x9AA569C4, 0xD8D3C17A, 0x44EAA95F, 0xC8B949BB,
+0x1ECAB3B7, 0xC9BABFC2, 0x2241A16C, 0xAF37C8C0, 0xFC8B9DE0, 0x67AE2B30, 0x1EE955B5, 0x11540BA4,
+0xCEF49C81, 0x955D12F4, 0x5DA56ED9, 0x6D163091, 0x6DBB9A12, 0xA5F18DCF, 0x81C5969D, 0x4BFEFF8B,
+0x2409B4A4, 0xF9802712, 0x95688E12, 0x543A9B08, 0xE7D077F3, 0x543C6AF5, 0xFCF0F959, 0x21B73D30,
+0x117B771D, 0x84678E41, 0x6E8D7916, 0xAAFDA927, 0x404BEBAA, 0x4390DCBE, 0xFD8C4A5C, 0x77027A4B,
+0xCDF46AC2, 0x664ABC99, 0x60A2DE93, 0x75CB8849, 0x6EB635D5, 0x528DA55F, 0xE329AA8A, 0x52B6381B,
+0x5E83B9A3, 0x67808F27, 0xB005F8CD, 0x24234196, 0x802EAA19, 0x9156536E, 0x607876B6, 0x8C6FE71A,
+0x1E83B387, 0x3992472D, 0xAB035E7C, 0x94620352, 0x8E9F5ACB, 0x17D19729, 0x84D30444, 0xDAC9C8A0,
+0xADA6B067, 0xAFB41C42, 0x26AEC18F, 0xF01DE12D, 0x2B6BABE7, 0x72E63284, 0xC7F47DCA, 0x6BD64571,
+0x76BB68C7, 0xCBCDBC20, 0x90A8C3B0, 0x89E963FC, 0xECB61C6F, 0xB58DC18E, 0xBA68A67E, 0xC21640FB,
+0x8BC1D0E5, 0xCB47716B, 0x3C33F7CD, 0xAADD9DB6, 0x8C6A8A66, 0xCD30BF4D, 0x7FF76111, 0xAE29F53E,
+0xFC32445F, 0x450FDE2B, 0xD5F634F6, 0x2F5F6741, 0x32477719, 0x70A0F8B5, 0xE264D3C2, 0x025DBBFA,
+0x3FE0FEEE, 0xB4DD24C7, 0xB230275A, 0x911FE262, 0xD78ABA2A, 0x79C6A18F, 0x005735F6, 0x24DB115C,
+0x6F128739, 0xFBBC7CAE, 0x7C3E4B46, 0xB0D8EE87, 0x33F7C8FB, 0xF01EB196, 0x405B5B38, 0x906E56B4,
+0x2EAC774E, 0x9986FA3E, 0x5E6A832C, 0xDC4B4CB8, 0x10195B71, 0x06D70C7F, 0xA0562BB0, 0xBAF04C11,
+0xF63A8D4D, 0x13F5779B, 0xC5415095, 0x90D790C1, 0xC0F5DB55, 0x49F4237A, 0x44402AAB, 0x6F35EFA7,
+0xA96804E4, 0x617AA899, 0x0A01ABBD, 0x8F217DB6, 0xAF742EBF, 0x879DC6C6, 0xFE3F21E7, 0x170E9968,
+0x41C689BB, 0xBBECB2CC, 0xAC39446B, 0x6D890AF1, 0xEA31805C, 0x33C1DCAF, 0xFF67FDA7, 0x95E170F2,
+0xE37E5224, 0xFD6A0993, 0x4FBAE35A, 0xE928A7E1, 0xE3440663, 0x0A7F1911, 0x09B931B5, 0x7BFD8B80,
+0xFEBD421D, 0xFFA48EB6, 0x64096703, 0x24FD686D, 0x155131F6, 0x2770D1AE, 0xE473653C, 0x3678E19B,
+0x04F21250, 0x08B87FC1, 0xB1917773, 0x64080643, 0xDCF69FB8, 0xF088C3B9, 0x6F64A653, 0x9F348DEA,
+0xABF0F1C1, 0x1FD39B64, 0x3E47445B, 0x6E3B4769, 0x722B1E1B, 0x98EEAE63, 0xFF308A6B, 0x192DD487,
+0xDE74AF9F, 0x44803C3C, 0x9CA2B4BE, 0x73C33EB1, 0x120437D2, 0x7C51E8D3, 0x8AE47C86, 0x4421AE8E,
+0x1B843E51, 0xA2D4BD5A, 0xD4C2312C, 0x96643276, 0x19389387, 0x9196D220, 0xB8515745, 0x6C76A378,
+0xAAD74332, 0x4EC9F23D, 0x3B7B4CE3, 0xC57C623A, 0x76683805, 0x9E98002C, 0x757C422E, 0xBFBD2CB3,
+0xDBF1C71A, 0x306DDB37, 0xD0395249, 0x88A5A466, 0x8D256D8A, 0x192E05F0, 0x2E79E646, 0xE7FCE9DB,
+0xFE24A0C6, 0xB73CEB3B, 0xB9D73638, 0x182DC4BB, 0x5D90723C, 0x6DC608A4, 0x37EFD61D, 0xA34FF13F,
+0x8E2F6AA5, 0x72E20FBE, 0x3DED3B24, 0x17F3202E, 0xDE6FAF05, 0x1F62CF17, 0xE70EEDF1, 0x5127AF8D,
+0xCFC38BFA, 0x3F9CED78, 0x1252D1EC, 0x35E38087, 0xC1F8C137, 0xF7BEFA55, 0x2F6F4CA1, 0x55F78636,
+0xA1A8CEBB, 0x55756604, 0xAFB47899, 0x49E98916, 0x064B04BF, 0xB05FBB4E, 0xB090E573, 0x71D2DF7F,
+0xCDC5C859, 0xE06917F0, 0xA3BDD7A5, 0x408E0DB5, 0xF827C3A4, 0xDCE8765A, 0xE3503B8D, 0x7231CD7C,
+0x84A5D1AE, 0x57013680, 0xDFE4B620, 0x22CB1ED9, 0xA6D08DB3, 0xF73DE329, 0x9DC07300, 0xC05619CC,
+0x35CE8F19, 0x6BEFF184, 0x8D727E4D, 0xF049E4FD, 0x0B0065A4, 0x13D7F103, 0x33A57BB7, 0xC4B32C81,
+0x6CA81879, 0x5CA3BB0B, 0x616996A9, 0x5162FC8A, 0x78CFBD91, 0x35B5D061, 0x31A15388, 0x4979A49F,
+0x6961B983, 0x8E81C934, 0xFC91C8D6, 0xEACCA784, 0xBC6147A1, 0xD24C85AC, 0xBCE4997E, 0xC2DD865B,
+0x985BC21D, 0x9E214DB5, 0xCC7AD88C, 0xB29366BD, 0x12C0DFE6, 0xB711F2C0, 0x7F190EFD, 0x11FF5762,
+0x68171769, 0x1C317A09, 0x6ECAF23D, 0x39130782, 0xD35F2B8A, 0x66E23F0D, 0x37B19F2B, 0x80DAB769,
+0x3825D05F, 0x27479598, 0xB27009BD, 0xDDF527D1, 0x4DBA9737, 0xF9830DA6, 0x71C74142, 0x417A1B0B,
+0x04F012DF, 0x9BD2DEB7, 0x5C313EA3, 0xC3CEC933, 0x3C91B67C, 0xB195244C, 0xC20C3141, 0x4EA31975,
+0xBAEF2E5A, 0xC97272D3, 0xF63D2D33, 0x30D36620, 0x2E49DD8F, 0x785342A0, 0xDE91568E, 0x498E563F,
+0x709D4C2A, 0xDE2A7505, 0x3DC8E2E7, 0xFEE88D97, 0x572E4E5C, 0x5DB919DF, 0xE599F2CB, 0x64F82990,
+0xFA75943E, 0x8B45E86B, 0x77B86A4B, 0x737B9EB5, 0xAED21BCA, 0x47AE7139, 0x3E8D1BE2, 0x390429BB,
+0x70DF6616, 0x968EB93C, 0x581493AC, 0x2B49EF71, 0xCD86A439, 0xEC5546D8, 0x60F3A256, 0x431B36D2,
+0xA6CB5F34, 0xC8647E9D, 0x596360A5, 0x311DF2EE, 0x437A8EDC, 0x68147C13, 0x9AAB35E9, 0x1B9B5DB9,
+0x0F07812C, 0x1EBD9599, 0x2D309AFD, 0xD73C19EE, 0x26ECE3F6, 0x165920B6, 0x7AEE9A42, 0x996EC0C2,
+0xF5CA22E3, 0x790F8588, 0x4C43A978, 0xC0F7B318, 0x8F7A0D22, 0xFD29886B, 0xC4646C39, 0xD8B71318,
+0xB84D73F0, 0x2DE1AE68, 0x15D89CF8, 0x14F5C92E, 0x4AF8C647, 0x59FC2ED5, 0xE675A4B6, 0x9B6A3BC8,
+0x2DD3A622, 0xEE84A970, 0xC1ECE2A3, 0x9BD35712, 0x0BF92118, 0x9D95D05F, 0x70F22FBE, 0xF957EF0C,
+0xB9061C55, 0x683D5261, 0x4E6407A3, 0xA255592E, 0xA09B0F75, 0xB7EE6A65, 0x6B2F3276, 0xFA72F28A,
+0x4814FD8C, 0x66FD3FE0, 0xFA2018CC, 0x2EA5E8BE, 0x9EC25609, 0x291C5B0B, 0x0356E5F7, 0x17E3F404,
+0x32B59D15, 0x5E2D077E, 0x33368EF6, 0x205E7D68, 0x13A185C2, 0xD18A4A4F, 0xEEA519A8, 0x75336424,
+0xB45D6C2C, 0xF87FADF8, 0xBE7E97EF, 0x6648D675, 0xB75E4805, 0x8CD9EAFD, 0x4D4129DC, 0xDF0288BC,
+0x31505210, 0xF6A55759, 0x8E1841CD, 0xFFA76200, 0xE9EE7413, 0xAB556F7D, 0x9E546AFC, 0x53B879DE,
+0xCAAEB70C, 0x933ADD65, 0x193F9ED0, 0x6918952D, 0x6CF5738C, 0xAA355007, 0x7155BEB1, 0xA8B666AD,
+0x98619E48, 0xA2568CE1, 0xFEA05B64, 0x4D8607D4, 0xF7272A11, 0x1A591C15, 0x4A442780, 0xEEA07ADE,
+0x5AF3FA18, 0xF71A88E2, 0x0B1437F2, 0x2E785A77, 0x1C0817DE, 0x98E7815C, 0xEAD7A46D, 0x340138CE,
+0x21931342, 0xED73CE2A, 0xF762BE52, 0x79EAAB2A, 0xFC91D6F2, 0x7C810D6F, 0xBB43DDB5, 0x032CA7EC,
+0xC8B1B040, 0x349C45FE, 0xD67C1B41, 0xB424B8FF, 0xEA9DBDAA, 0x050086B1, 0xFE331D2F, 0x597AA146,
+0x04B98580, 0xEDBA7472, 0x2C42B80F, 0x945A6C23, 0xBCA5CD27, 0x6095D51B, 0x9CA34A73, 0x742F571A,
+0x37A76CB5, 0x819D8A93, 0x47D1EC23, 0x03796A44, 0x22A0208A, 0xE66592DB, 0x95E7F7B8, 0x254E1766,
+0x909F1C3E, 0x151827C0, 0x6ADB63B5, 0x3914AE4D, 0x1FDA8A3E, 0x26458722, 0x26E167F6, 0x6FE66025,
+0xFA9365F5, 0xCDBE40F1, 0x2B4FF777, 0x8E5912D1, 0xE7ABA49A, 0x36DCE397, 0xFE1A585A, 0xC7277F30,
+0x730DE97A, 0x0F306C9D, 0x0EFA5687, 0x64BD276D, 0xFC9E8146, 0x5EC220B8, 0xA222FECE, 0xC4758667,
+0xD63109E1, 0x4640CE29, 0xE6568AD9, 0xFC1FD135, 0x83B0DFF9, 0x8BB57E5F, 0xB70A47DB, 0xF1385706,
+0xA73D2B57, 0xE666AEA7, 0xF2462188, 0x93CB3685, 0xB42C64C4, 0x13AD2671, 0x827C1446, 0x140735C2,
+0xE7D2B7A4, 0xBDFCE9A5, 0xEDAE7A89, 0x8AB32A3C, 0x3320FB36, 0x627FA8BD, 0x5A9102BC, 0x73C6B88F,
+0x2624F821, 0x83773723, 0x5301BF7C, 0xA4AF42B6, 0xABCB98AF, 0xC9B1FECD, 0xC6A3F14F, 0x67F20D0E,
+0xE6A28B1D, 0x9810596F, 0x8E2B9A0D, 0xB3CF829D, 0x795CBB60, 0x7B5EE38F, 0x1E572EDE, 0xE0A8297B,
+0x433B04CA, 0x7D70FC8E, 0xB7441918, 0x3B5DFB81, 0x0023DC7D, 0x22598D97, 0xE016D12C, 0x4032E870,
+0xF4491931, 0xEBEC05C5, 0x88BB87F0, 0x13750B6D, 0xF60096C9, 0xE8CE7C25, 0xD3B3B11D, 0xFD38BDF0,
+0xA0883261, 0x04F1B29F, 0x4027E40A, 0x00E43173, 0x23E596E4, 0x41380852, 0x49A2DB0F, 0x1BB51F91,
+0xD21C63B5, 0x53911683, 0xCD51EFE6, 0x7E23617B, 0x7F5E71B3, 0x4823FBA8, 0xB7DDEFE4, 0xB4BA19A6,
+0x04C1F4B4, 0x79FBBA25, 0x645B8207, 0xFC0C22D1, 0x0C3FF0E4, 0x5BEB599D, 0x8EEF265F, 0x8500B6C7,
+0xCD2567DD, 0x70E8EA70, 0xE1844A00, 0xD771DADC, 0xECF45BA7, 0x8BB4B428, 0xA43182C7, 0xAE6E7F66,
+0x1FF3AC41, 0x43BDC300, 0x193D7DC6, 0x3AFB9EE1, 0x938A935D, 0x73C754FC, 0xD54450CF, 0x558241F9,
+0x9C72AC1B, 0x1F5A9F7A, 0x558F193C, 0x01F55BE8, 0xC63F081E, 0xE8E98E72, 0x067CEBFF, 0xA70BAC31,
+0x0889884F, 0xCA4DA415, 0x457DD785, 0xC02BFAEA, 0xC76A8EDD, 0x2F68A64F, 0x9FF3BD4B, 0x3410BB09,
+0x42CF4833, 0xCFB8BDF7, 0x42A5FD9F, 0x79202E86, 0xA4868093, 0x319A9EF5, 0xA3386778, 0x35305DB3,
+0xCAD0F323, 0x6CA4E196, 0x4213F6AC, 0x6733623A, 0x4ADAA04C, 0x156F4839, 0xB5A5CC4D, 0x97A78471,
+0xC747DA83, 0x84E7E309, 0xD48912D8, 0xC7F0CAE7, 0xFD9A9543, 0x91AA52F3, 0x55DED6D1, 0x61EBDB0D,
+0x7E3167A9, 0x3C1B0275, 0x517E66E9, 0x60C6F8C9, 0x02073079, 0x46D41B0D, 0xBE7B636B, 0x261CEC8E,
+0x4CA5E685, 0xD6BA3B9A, 0xBC2F96AB, 0x563DAFF5, 0x462E959E, 0x9A9F92C4, 0x8049C941, 0x71A521F8,
+0x6B783E8E, 0x190E33E5, 0x5EA9186F, 0x7A0469D8, 0xB830ECCA, 0x4CE828D4, 0xEB087E47, 0xB4D8730F,
+0x655C64E3, 0xCB42BB00, 0x4494F98D, 0x894BB24A, 0x549F7FD4, 0xECEA1E4F, 0x2ABC8EC8, 0x2B225085,
+0x5CEB9E65, 0xCAF983A0, 0x99D3A970, 0x534587D1, 0xCC3B7F60, 0x2A0727BB, 0x76CDF175, 0x044F8818,
+0x3886A523, 0x8DDF9E20, 0xF5B93A09, 0xAB7B1E75, 0xE4565AC5, 0xC993D13E, 0xFA787AEE, 0x6F4DF3B4,
+0x200138F5, 0x53BCCFE2, 0x8C09F780, 0xFF04F48A, 0xEDEE4250, 0xB3A6ECFA, 0x1C3131EE, 0x9EB97F1D,
+0x494E9CAA, 0xAA9DCE18, 0xE7E83CBD, 0xE8370251, 0x7C2BAEDE, 0x26E97727, 0x9B219EF5, 0xF82BCEF5,
+0x4F0CA1D2, 0x7A46AB06, 0xD8AF5285, 0xA00281D8, 0xBF56CC86, 0x22E67FD9, 0x8CAC8EEC, 0xB4FB720D,
+0xE9603573, 0x4E7BFA8D, 0x5E6DA0DB, 0x41B34A79, 0x82A4F034, 0x5F72F6ED, 0xF19C6BB2, 0x571AB961,
+0xC8234D5E, 0xA0859CD4, 0x618EBAAD, 0x7C8D7217, 0xFEF31407, 0x9AA25276, 0x651AE115, 0x679BD467,
+0x39C6027D, 0x8A18A29A, 0xBEB52FE6, 0xE36F3249, 0xDC53FFB7, 0x3E1D1B45, 0x9E1F7387, 0x97506A52,
+0xF8F661BA, 0xA6EB4481, 0x9A5C8F36, 0xD8C58918, 0x5BB9614E, 0x94FA893B, 0x71394B4B, 0x8198DA00,
+0xF73C7B24, 0x08A6ACC1, 0x6DEFDC13, 0xB333A1AB, 0x0CAFA4BA, 0x9F5B5B04, 0x1CB6FDF6, 0xF91705C6,
+0x2AFE58AC, 0x6230B2B3, 0xB1C9C92B, 0xB0D2EF43, 0x7AC8E4CB, 0x5F5F7D4F, 0x56B9A230, 0xD32231F8,
+0xACC6BA5C, 0xB599223B, 0x1F4D2A31, 0xDF6FE4C3, 0x1246E7E5, 0x5849BD36, 0x0B4DD9DE, 0xF2D36FC2,
+0x279343DA, 0xD1AAC6D8, 0xE306D4E3, 0xCC57F3BB, 0x9587B8B5, 0x61F6A33C, 0xE9B7FCBB, 0x20B893B8,
+0x302C9B42, 0x556BA4F2, 0xC29AF430, 0xDFC71EAF, 0x5A5B5440, 0x72153770, 0x0AF63DAA, 0xB5409A65,
+0x760E3326, 0xD3412571, 0xF6AF0AEC, 0x2EF37E92, 0x87796543, 0x6E066B3E, 0xF1A80FCD, 0x61E1ACA8,
+0xCA2D40BD, 0xD5A1EBDD, 0x469BD73A, 0x9233236F, 0xA7321C4F, 0x077AC2A9, 0x5327E3C0, 0xB6FD074D,
+0xD57B66A5, 0x5C9581A8, 0xE7A4DBF8, 0x8C26D721, 0xED4351D5, 0x5DE096D2, 0x086394D0, 0x99FB9F6D,
+0xD75B593A, 0xB312B61D, 0xC319EF43, 0xA105A2E7, 0xCFC7508C, 0xD7F8A4F2, 0xB7ADEB79, 0x1B2BE24B,
+0x279A8C95, 0x0291FD8D, 0x128D91C9, 0x30231099, 0xB417281C, 0x529DEE0C, 0x82E92AA9, 0xCCCD3DE1,
+0x92E36FFC, 0x59877146, 0x15D6EFC2, 0xA1C6E5B1, 0x568C49C4, 0xA29A7722, 0x2F8A7E1A, 0x91F2BF23,
+0xFB21FABC, 0x1011E9A2, 0x2A864710, 0x15905297, 0x70529EB1, 0x3F43900A, 0x04D4769C, 0xCA834F3E,
+0x31DB67BE, 0x381BC50D, 0x33AD9B47, 0xA1A0C447, 0x172734A0, 0x3A9C5E87, 0x31E051EF, 0xFC53F9BE,
+0x6E1EE227, 0x6631DB35, 0xD065B39C, 0x5E840FF6, 0xD5D22D32, 0xF2AF86F2, 0x7472EC73, 0x998C086A,
+0x93C2D00C, 0xC2DF5450, 0x73AC86D7, 0xFE58701D, 0x03C52E8E, 0x7660653E, 0xC5B99255, 0x0737F5AE,
+0x4E94E0A0, 0xE4AF3C1E, 0xA7D2EA67, 0xAC41A9C8, 0x5F1F6589, 0x1BCE73A1, 0x4D64E222, 0x3E49139B,
+0x67B45BE8, 0x21BF1C3F, 0xC475E746, 0x978AFD2D, 0x0533110A, 0x59D09B17, 0xEDF0DCE9, 0xEE333451,
+0x59899F64, 0x9FF69D84, 0x0E3FE08B, 0x04A7E859, 0xAF3666D7, 0x6F854FCA, 0x4E69068E, 0xEA427E47,
+0x07475EB9, 0x6F4996A1, 0xD1080F5B, 0x21160CD6, 0xF9F41BC7, 0x820DFE2C, 0x3545B1BA, 0xB21A9FC0,
+0xF0BAE0D3, 0x9F80597B, 0x85F850A6, 0x7A3CC84F, 0xE179A88B, 0x320C489C, 0xA5677258, 0x9C3E2389,
+0x107FAFAF, 0xB3A3B5BB, 0xD15BED11, 0x6FFEC597, 0x9B967375, 0xD94F3EE2, 0x67ACA769, 0xA031FE43,
+0x9CE5660A, 0xB159AE34, 0x1A3CA566, 0xE9066DED, 0xDB5693A7, 0x08F536C7, 0x7778082E, 0xCFBAB37C,
+0x9A271626, 0x2DE9D31E, 0xF57F9690, 0x2A44A5BF, 0xBDFE949A, 0x3988D72A, 0xB93CE6E0, 0x6A89A1F2,
+0xF83E9DE1, 0x7D113899, 0xC4E24446, 0xF681851C, 0x63F075C2, 0x025B753C, 0xB854F51B, 0x84B81BF6,
+0x1393B07A, 0x4922FC5E, 0xA3FE4F9B, 0x8E9BA90B, 0xBC73E346, 0x9791A958, 0x9DC73FF7, 0xC2D86BC7,
+0x006DC8CF, 0x9C99FAC4, 0x4E32CF60, 0x8D6B3674, 0x49475B7D, 0xDD740D00, 0x3E3AF88C, 0x08154560,
+0x923094E9, 0x48EDB683, 0x6D0F1A0B, 0x28A25A2E, 0x45510885, 0xCFDB3407, 0x05261294, 0x5D51D4E4,
+0x0F7ECEDB, 0x0307A967, 0x14E23B2E, 0x91CAC073, 0x8121028D, 0x4C4CD0F7, 0xA3EFEB55, 0x75578D45,
+0xA0356765, 0x716FBE8C, 0xE25B794D, 0xC5E78C32, 0xD7048076, 0xF1B40A7F, 0xCDAF6CEE, 0xCE074856,
+0x4D87C73E, 0x2D32CCD7, 0x1787959B, 0x177BD6E2, 0x1EBF54C5, 0x5D841B43, 0x16AA7EE4, 0x97CD8E25,
+0xF2A6842E, 0xB0844112, 0x5C5F922F, 0x7131AD8B, 0xCD7069D9, 0xA2EE43B8, 0x20925E66, 0x927525F8,
+0x82530D50, 0xE04D4EB1, 0xA5E33C82, 0xC3882999, 0x96667A94, 0x17CC81FF, 0x06986AEE, 0xE6495124,
+0x08A6F286, 0xC182341F, 0xC1626DC3, 0x266CCF37, 0x96BD8D08, 0xFD87F547, 0x83898EC7, 0x75E689C3,
+0x5BF37766, 0x3D83E73E, 0x7C9EC2A9, 0x26D2DB06, 0x5E9B502B, 0x829F8C9C, 0x63306DE7, 0xE018D672,
+0x893ACCB1, 0x731FF2FC, 0xAF1D175C, 0xEC3644E7, 0xC042E3EB, 0x88A8B12A, 0x9A47954D, 0x83BBE643,
+0x562E4A22, 0xBD41F4B5, 0x0299F8B8, 0xE3C786D4, 0x2161F5F9, 0xF740F6E2, 0x50039811, 0xDB1F4A11,
+0x5011A2A8, 0x9E43E3D4, 0x0F4D704A, 0x48D3A611, 0x8754752B, 0xC1267559, 0x3FEBEC20, 0xB85462B2,
+0xC6D240A2, 0x3477716E, 0x691CFA32, 0x4F7F8C8A, 0xED0B5201, 0xCA78011C, 0x6DD1D5BF, 0xC56FE8B4,
+0x9905578E, 0x1F6A4E43, 0xC9505322, 0x5B418CCA, 0x9797D788, 0x517AB900, 0xB2C84245, 0xC905790F,
+0x63A893B0, 0x8619AFC1, 0xDEFBADD0, 0x5D335214, 0x6EB34E21, 0x229BA606, 0xA960DC57, 0x397E1845,
+0x7AD825D5, 0x04529A10, 0xB7413ECD, 0x7E8FE4EF, 0x408D321F, 0x41D334D2, 0x3E3DE539, 0x68C77F96,
+0x589D1984, 0xDAFCF2F0, 0xC883C6E7, 0xA3F21A26, 0x77174113, 0x43A1D27B, 0xCCBF8ADB, 0xCE888AF4,
+0xA9D459B1, 0xFD351B78, 0xA7EA59BA, 0x746290CA, 0x7FF04E69, 0xD5E4C718, 0x4E793E84, 0x2288ED81,
+0x69FC6BB4, 0x5AEF958C, 0x0995692C, 0x31194621, 0xB95928F0, 0xDAF39FA4, 0x115B277D, 0x054C1B3D,
+0xCED0D71E, 0x30F27DA1, 0xE905B54E, 0x07487935, 0xD9345DBC, 0xAF4E7C97, 0xD6C78D0C, 0x73C0CBF8,
+0x2FBA8327, 0x703E05EC, 0xD9590703, 0xC05B5F22, 0xC80B2709, 0x47A1ADD7, 0x47056D3B, 0xA02C2510,
+0x7CFA448A, 0x5AA3FFBD, 0x9BC4CC74, 0xF39B8FBC, 0x8697DFFB, 0x04AF7AA3, 0xE3806D5D, 0x9232A7E8,
+0x854B72E4, 0x050519BB, 0x466C9527, 0x748AD44B, 0x0D0A2FDC, 0x6A74A97E, 0xA1B3C5EA, 0x6AB66EFA,
+0xF1302467, 0xED4CB9B6, 0x333D667A, 0x903549AC, 0x7155F28F, 0x93AB3F52, 0x639E222A, 0xF05E21BD,
+0x3283FEC2, 0xD9C8B392, 0x748CE5F3, 0xDD6F3351, 0x83F2B2DE, 0x47FE7BF7, 0xBB5426AE, 0x34BB89C1,
+0x8B68E975, 0xA1731A32, 0xBCC76D43, 0xE4185FF5, 0x89D4F0D7, 0xF4749E02, 0x58C8238B, 0x6A2EF7B1,
+0x702684BE, 0x37E11FBB, 0xBD34509A, 0x5B0ABDBA, 0x23DAA0A1, 0x1FE10A01, 0x31D2E2BF, 0x28E4DC70,
+0xCBCE4AD0, 0x5733651D, 0x7E78A53E, 0x10E4F21D, 0x47EB360C, 0x627D18AD, 0x1D900A59, 0x0FB10F2B,
+0xFD66644A, 0x8CAA8C4B, 0xA4D98B10, 0xCEC86571, 0x64863B56, 0x5D88E0E0, 0x4745922A, 0x0D5BB28B,
+0xE9DD4DF6, 0x4AE3BAEE, 0x6B529542, 0xAB928E15, 0xCC6081C9, 0x66E4F650, 0x10C16D40, 0x229D1E86,
+0x69EA8978, 0x93E0C4BE, 0xD2D3CC55, 0x47548A27, 0x7215C3C8, 0x841D59E0, 0xB1060191, 0x276A75D1,
+0x79D4913F, 0x239A08E6, 0xAAD440AC, 0x111BBAFC, 0x259FFF0B, 0x3E10F276, 0x111EAD9C, 0xE3B555BB,
+0x98CF5E31, 0x59233796, 0x2A8CB703, 0xF2F509E6, 0x05EC46C5, 0x13C7059E, 0xF19BEC8F, 0xF9158C6A,
+0x93E349FB, 0x0B14E34D, 0x3AE32475, 0x746FCA5C, 0xAC42C0A9, 0xA3D94D0D, 0x1EE8AF64, 0x9DF85329,
+0xD8DBB861, 0x79DD3A3D, 0x69211585, 0xA0A4061C, 0x5E679458, 0x2B38CF29, 0xEBAC1B74, 0x839F9A39,
+0x0DBD2627, 0x332B3C75, 0xBECB84C1, 0xEFD21DC2, 0xD0E9AED2, 0xA87EF36B, 0x5545E02D, 0x257C7734,
+0x7E6F4AF4, 0x55822C6B, 0x68658888, 0xC07C74C1, 0x5DE4BA38, 0x17A4C851, 0x14955CEB, 0x99A43AEB,
+0x88140C5A, 0xDC47AB84, 0xF0679961, 0x7310D518, 0xAD75FB5A, 0x418EB118, 0x5128BDB6, 0x83BC1AA4,
+0xBC2769C9, 0x55A44C27, 0xD8B3DEEF, 0xC7CE05C3, 0x3E1FBA4F, 0x884698D7, 0xA85DFACF, 0x385CF73F,
+0x17A23FAF, 0x10FBAFF0, 0xD302F5A2, 0xC8EB341F, 0x80C01C4A, 0xFD26EACA, 0xCA7C3444, 0x7153B159,
+0xC1D13ACC, 0xE95AAD8F, 0x9329A117, 0xF5F39779, 0xC9699E7D, 0x2542F0FE, 0x0D683BB8, 0x95813141,
+0xA58136F4, 0xDEE6BA3F, 0x1F45C91B, 0x6611DCC8, 0xF7CBBEA9, 0x9017E89A, 0x5D8C0198, 0x0CF5AC7C,
+0x045C7F6D, 0xB5434EEE, 0xDF045438, 0x4A2D5A94, 0x821BBDC1, 0x69FD8355, 0x2534CAC3, 0x3BF984FE,
+0x96CE6C3E, 0x93D7A73C, 0xB19FF5DB, 0x1AD2C251, 0xCA6EFD05, 0xA9B2213F, 0x5D9954F1, 0x24486750,
+0xF0AAE090, 0x3E96CAEF, 0x0B24FEF5, 0x35CA9D37, 0x88A5DD39, 0x00C93D23, 0xAB049482, 0xE060F5F8,
+0x567415A4, 0xD9B87E49, 0x171A9051, 0x19263657, 0x7D48E90C, 0xE2C345AC, 0x17CB9331, 0x139CE4E2,
+0x5E091B62, 0xC7D5B547, 0xCB49A10A, 0x15B41728, 0x88F12F85, 0x25EF85FD, 0x23298154, 0x597B6145,
+0x1D1E0D3F, 0x975F69AA, 0x20BD38B3, 0x00F02CC2, 0xE15152A9, 0x6FD3FB98, 0xB0A5549D, 0xD4DD074A,
+0x61C91B16, 0x02D0E146, 0x15C8A910, 0xE1308D61, 0x5EA7BD85, 0x96A8E4B9, 0x1627FE3E, 0xDAE5D530,
+0x3C39D95D, 0x0D08CE17, 0x36E9938F, 0x02B068A7, 0xE36FBE22, 0x6867A6A5, 0x0C5A1BA3, 0xA3179777,
+0xE5E63FA0, 0xEAD1A9A5, 0xE472BF3D, 0x805EF3FA, 0xF4859204, 0x7B5E0895, 0xC1BE3CA2, 0xCAD12291,
+0xDB553D20, 0x72D81A5F, 0x79E4CB85, 0xBB679C11, 0x43AECF95, 0xD87F8474, 0xCC8922B4, 0x6FDE8058,
+0xA89687C7, 0xE794D6EC, 0x269FC35D, 0xCCE5FDF8, 0xEBAABEE5, 0x211B0387, 0xF9B819E0, 0x491E5904,
+0x95688133, 0x0F77F6B1, 0xBB00470D, 0xDEE27F37, 0x09240837, 0x2863C039, 0x8EC3D4E2, 0x5B078668,
+0xE3422DA5, 0x130C5923, 0x5E0A0B0F, 0x3F6090FC, 0x70E2EA9E, 0x19EEB03C, 0xA090948C, 0x7AE6EF09,
+0x941B3ACB, 0x34487D39, 0x53602DF5, 0x69428B46, 0x775687FB, 0xB90B3411, 0x584545CD, 0x0249489F,
+0x00EF5935, 0xD4B99BE9, 0x94247471, 0x742F4F59, 0x3E7BE151, 0x19E5B3AA, 0x04A487B4, 0xF7185E86,
+0x48A40C7B, 0x89737A0B, 0xDE5924E5, 0x8CB6D8A5, 0xD8A69590, 0xED82C74F, 0x8BAAE6FD, 0x8EE809D3,
+0xF573025A, 0xC1CAF74A, 0xE9DA52CA, 0x60CA5E9E, 0x923F9B38, 0x1D462BD6, 0x138E1186, 0xCFEE3037,
+0x0590B5D6, 0xA0CF76E5, 0xCDC8804E, 0xC80F2D6E, 0x2248A8BB, 0x1CEDBC0A, 0xFB9634A4, 0x06B63D5B,
+0x8BB4E3B7, 0x8A127E24, 0xE335BBD9, 0x499CE86B, 0x2E63603F, 0x454AB93D, 0xCF647ECA, 0x26D000E5,
+0x814632F7, 0xCDC5A206, 0x0C67D133, 0x6C556502, 0x68DDF823, 0x71C178DB, 0x49AE555B, 0x1E5CA4FA,
+0x4EF57D9E, 0x0D0B46A5, 0x11F45C8F, 0x90A5583B, 0x3D4178E6, 0xB34FC0E7, 0xA1166173, 0x5FE4D2DA,
+0xF2203CF3, 0xBADC8704, 0xAC36CABF, 0xADB338A6, 0x6707B6FB, 0x04E27FE7, 0xDB35F63C, 0x41EC40D3,
+0x35EF9B6F, 0x27E49162, 0xAD2B7731, 0x5F5BFBD1, 0xF0323017, 0x9E7BC89A, 0xDCF8EC44, 0x0D1CCF9D,
+0x3DCD5B4C, 0x3EA9E6EB, 0xD14FD73F, 0x7AC757AA, 0x1DAEFEBC, 0x7B8824C9, 0x32F7642D, 0x441C7028,
+0xD80EA3FA, 0x993F7DDF, 0x67C98608, 0x5FEAAA06, 0xDEED07AE, 0x2FE7BABA, 0x0054EB0C, 0x4C9C9C59,
+0xFE7A0591, 0xE16E4899, 0x0E96F98C, 0xBFFD7905, 0x4B7EEB6F, 0xACAB7AF1, 0xED94E50D, 0x1D54509C,
+0x1F674DD8, 0x5F15E126, 0x0A325F80, 0x3E69D533, 0x011257BA, 0x293C0372, 0x9EFD9AF2, 0x6AECB865,
+0xA80F8E3F, 0x010B88FB, 0xAFEFDFEC, 0xF2ED6028, 0xB272D292, 0x37872932, 0x8A1EC20D, 0x354401AC,
+0x0C041EA4, 0x8F6AE1C2, 0x129A78CB, 0x2D45420D, 0xDAFDEE06, 0xD823B429, 0xF9731383, 0xF8D59385,
+0x562B3969, 0x85A6EF40, 0xC3F52DC0, 0x18985989, 0x2C1591E0, 0x2DAE78F7, 0xA487D549, 0xC895669F,
+0x753230D1, 0x3C9EDFAA, 0x86689D41, 0xC1B29858, 0xE19352A7, 0x1912FACF, 0xB25F6A64, 0x2C91C5E0,
+0x1D403578, 0xC8C852EE, 0x71D44CC6, 0x39CE6C55, 0xF5C47544, 0x41C024C6, 0x241A2D46, 0xE28BE889,
+0xB63CF7DC, 0xC62E31E0, 0x10FBD915, 0x82FD51A4, 0x8E48B861, 0xDC1C19AB, 0x213131B5, 0x10E30B36,
+0xFB105584, 0xFA9BCAE0, 0x70B357DB, 0x3B83F577, 0xA70A44B0, 0xC011AA80, 0x24CD07A5, 0xC6323958,
+0x1EF050A8, 0xBB2AE6BC, 0x3702C0FB, 0xF6582433, 0xBBC27452, 0xD141B0C2, 0xAB552A21, 0x4CD4F6AE,
+0xB59D3839, 0x0BFE38C8, 0x75AE44B9, 0x6AA6E59C, 0xFF4A8412, 0xB0826A92, 0xEAB0795E, 0xF26F7055,
+0xA255FA73, 0xDB844ECD, 0x29BB7F22, 0x7E935EC4, 0xC8B9D0EA, 0x66DCDF9C, 0x44BBF3D0, 0x7A1939AD,
+0x2A1FD957, 0x66CB9359, 0x6B61C7BA, 0xEEFCF3B1, 0xC8ECBB17, 0x4CA033E2, 0x51B63A32, 0x88BB1033,
+0x76FC08D9, 0xDB69BA1A, 0xDAE83A7A, 0x5F82F964, 0xBF04AC4C, 0x152764AE, 0xB53201A7, 0xF16ECF46,
+0xE7F939A0, 0x47E6426E, 0xE876FEDD, 0xCA64FDCB, 0x8765EFA7, 0x729B2D40, 0x01A01B34, 0x8E4499B5,
+0xC88A3EF3, 0xC65A8AEB, 0xE8E88969, 0xB402F3C5, 0x3B9C0AE8, 0x45CEAFBC, 0x4514B544, 0x5FA3A78C,
+0x01048AA9, 0x4FB4DA8E, 0xCF931DD7, 0x5500BD51, 0x2899118B, 0x5EC88DDB, 0x2E82D1D6, 0x9F7E3616,
+0x894F3C3C, 0xA645432A, 0x10524BCC, 0x44428F4E, 0x135CE8AF, 0xB4CAFB34, 0xFA36DF76, 0x7E9F8B0D,
+0x43E44E05, 0xD4154CE2, 0xF928A5DE, 0x950FB59B, 0xA62DE487, 0x7C0D5C3E, 0x00D414E4, 0x1061282C,
+0x2C78A81B, 0x8FF2F77C, 0x961FE3B8, 0x37A4E1AC, 0x1A4D425C, 0x9A401B76, 0xA9334873, 0x7D0EB328,
+0xBC0DD9E5, 0x5D0C1D9F, 0x86DF4418, 0xF2DDE687, 0x9B485811, 0x89DCF1C3, 0xD2AD9097, 0x56996E31,
+0xE095CAC5, 0xCE830548, 0x0A53E857, 0x2A302BA6, 0xAF290B69, 0x19F7C7D9, 0xEB50ECCF, 0x044F8232,
+0x85BC41DE, 0x6E230145, 0x54172E75, 0xCE84C8DE, 0xFB7E1A5C, 0x0CE7F9E9, 0xF2E2D53C, 0xDA3F7564,
+0xACA72FC8, 0x58AFC64A, 0x38EE67C9, 0xE692ED59, 0xFFBB2C0B, 0xEBA3480E, 0x741006EF, 0x11017AA3,
+0x46B9100B, 0xE6F6A5BC, 0x6645DA2E, 0x031333D8, 0x61FBBCBA, 0xABA620D9, 0x035A7E97, 0xDA0EA62E,
+0x82ABF1A5, 0x1978663C, 0xAD692373, 0x836F9313, 0x2AF3CF42, 0x5C1529C0, 0x7F1BC452, 0x4F695A09,
+0x08F47933, 0xD5AC9A15, 0xBA2FF443, 0x095929DF, 0xDCFE2C8A, 0xF278EFF7, 0xEFC02BEA, 0x3F4F5334,
+0x3A09C318, 0x5EC4290B, 0x5E985869, 0x0955310C, 0x2851C9C3, 0x8D30A976, 0xD5096321, 0x0245BD89,
+0x534DECAF, 0x9C228C46, 0xEB6008D1, 0x6B1C291B, 0xAA861186, 0xDA101355, 0xE41FF0F6, 0x0D5FC0AC,
+0xE2763A0C, 0x2E07D166, 0xA8281837, 0xA9C4B514, 0x7D12A45E, 0x68B8BE4A, 0x4281AC06, 0x122D517F,
+0xC8AFDE69, 0x117F7A9A, 0xB53AC279, 0x174FFC91, 0xF6605790, 0x5DF93460, 0x5B1ACC82, 0xA5742490,
+0x1D18A655, 0x513A8579, 0x57AF0B0D, 0x5600310B, 0x998B036A, 0xA50E7CC0, 0x1FEE9AB4, 0x700FCF89,
+0xC8C9C582, 0xE0878A1E, 0x5CBD10F0, 0xCCB9831A, 0x8DF913CA, 0x6942647B, 0xBD195F1E, 0x5F2885D8,
+0xDD109C38, 0xF0E56DDE, 0x79FCFC00, 0x1E309A9C, 0xF814DBD4, 0xCA739BAF, 0xB79B9B05, 0xF61C096A,
+0x17F24B18, 0xA1499C26, 0xD9781DC9, 0x395F0DFD, 0x0C243886, 0xD6B741A9, 0x71E1394B, 0xACFCD89A,
+0xBFF3E6FB, 0x18F68B20, 0x766410DE, 0xCD521A95, 0x904A7476, 0x9488B196, 0x685ED84C, 0x862C775B,
+0x1B87AF76, 0xFD0B3571, 0x853D3CFD, 0x34D6833B, 0xF9356C36, 0x5FFF7723, 0x4E8016EB, 0x2AAD70DA,
+0x2B21DAE9, 0x973CBC84, 0x3AE3CDA8, 0x31F5B26C, 0xE1CD0599, 0x3CE18D7B, 0x6EB6163B, 0x5537D1FF,
+0x0C245ACB, 0xC880CCC9, 0x6E563E2C, 0x9538B272, 0x3437D833, 0x3006E873, 0xEBEE828C, 0x17845DEF,
+0x523D5B89, 0x8CD73BAE, 0x61467CE7, 0x9E397E4C, 0x0FCE02F9, 0xD5C857AB, 0xC48599BC, 0xE97BD64A,
+0x4D199EE8, 0x26E29DBD, 0xC11F6B62, 0xA330785F, 0xD07A6334, 0x724D2A98, 0xC15FDC86, 0x31BD2408,
+0xED01A43A, 0xBD6347E0, 0xA4D6B448, 0x628E5182, 0x7DC87893, 0x7A842E7D, 0x97B7CB13, 0x3083E5E3,
+0xB7E9E372, 0x4910570D, 0x2CDF89E7, 0x72260947, 0x1D0154E1, 0x4EA8B6B2, 0x815D0A56, 0x5A221C5C,
+0x69E191DB, 0x8CD76EA1, 0x02487EA4, 0xA55A4BC2, 0x2EC9F1D3, 0x1E36AA11, 0xB3026AE8, 0x98295736,
+0x0D95214C, 0x73F70BB0, 0xA6AA496F, 0xD23C6A91, 0xB3CEC7C5, 0x73C1A95F, 0xA477E6BA, 0xB616A4D7,
+0x83964707, 0xB019EE36, 0x99F2D581, 0xA0CFDE8B, 0x137CAEA9, 0xCC3EFE92, 0xE981D800, 0x3281117A,
+0xE3E6F3C0, 0x11B5E835, 0xD71DC20A, 0x4933E151, 0x910A9BEB, 0xB08A226D, 0x0C6D868C, 0x931BC662,
+0xDA18BBD7, 0x217520EC, 0xA60C6783, 0x26323307, 0x5AC41D45, 0xF4AC2363, 0x06E2E9F8, 0xD89CB954,
+0x30A8D996, 0xA5EE71B0, 0xCBA57F6F, 0x46F78F9B, 0x0ECAC3A4, 0x5F85AB25, 0xF7CF0E45, 0xE4568188,
+0xA587E22F, 0xD773CC18, 0x4A86093B, 0xF09D8FF7, 0xBA3E8111, 0x62377922, 0x19F37002, 0xDDA8C290,
+0x16D58F19, 0xE1C44548, 0x5898DC30, 0x053CE11D, 0x75E06372, 0x3C4BE82B, 0xEF7B4A63, 0x82738620,
+0x9E3F3EA3, 0x94CCF09E, 0x3A6F05C2, 0x747D1994, 0x265DDDCC, 0x03D1B1F9, 0xC1576B01, 0xCC96CCF8,
+0x65519F5E, 0xCFD2502D, 0xA89F8DA8, 0x53C4CDE6, 0x532130A8, 0xDA06A07B, 0xBC82C4A6, 0xAF2AB639,
+0xD1897514, 0xF8137F6F, 0xED5E0D4B, 0xC357DD0F, 0x808AA750, 0xA1B86BAE, 0x23381E04, 0x5EFCD1D2,
+0xBFCF33E7, 0x8DA44647, 0x5651016F, 0xD28A0D60, 0xA90E42B8, 0x4DCC5CEA, 0x98A02CE8, 0x68898C10,
+0xCAB17E5C, 0xBE666135, 0x124B1792, 0x9920D148, 0x6BC53877, 0xCA794669, 0xF6EE654D, 0x1877B8E9,
+0xDF07387D, 0x6AB56065, 0x81C6E78C, 0xA839BC35, 0xA7085323, 0xA757B551, 0x60FDEF39, 0xE4842267,
+0x02A49D4A, 0x821D99A3, 0xDC45FDC8, 0xA9BDE163, 0xE3487850, 0x29B5B834, 0x07A36831, 0xAC9EAB52,
+0xCF2FE5AA, 0x5472DFC7, 0x9A3FC130, 0x3E1A22BF, 0xE1A5873A, 0x35E1318D, 0xBD41CA97, 0x720D3D3F,
+0xD1182587, 0xBC8423A0, 0xAA661EA7, 0xA2B88012, 0x5595F087, 0x8971282A, 0x417B442B, 0x6F4EC46C,
+0x19C6CAC8, 0xF59C43FC, 0xF1F73AE3, 0x96236722, 0x3EE66099, 0x564F3FFD, 0x4E870161, 0x2AC8E536,
+0xC27AA60F, 0x3A2FF128, 0xEDC3CD17, 0xAF5C7A60, 0xD40127C9, 0x8480370E, 0x8B214948, 0xF5315DF4,
+0x89944298, 0x934AA41A, 0x23FE0276, 0x414D9252, 0x8F78F46E, 0x2569918B, 0xF656C00D, 0xA01E4E13,
+0xAD24E6E8, 0xFB86447C, 0xC4999F56, 0x387B0710, 0x57358A95, 0x290A9174, 0x042440D8, 0x21B5D1CC,
+0xA6BDEC2C, 0x3083BEB6, 0x655B825F, 0xE54D836B, 0x8BE1A40F, 0xBA269216, 0x67304804, 0x601F4F76,
+0xF576C237, 0xAA79599E, 0x838D9142, 0xEDA99E85, 0xC43E1F80, 0x108914D0, 0xCEEAD6C4, 0x1F3A658C,
+0xA7D7FE5E, 0x6AD837B5, 0x2E9E8286, 0xBF66814B, 0x09D0AF85, 0xAB7823EF, 0xDE5B38C7, 0x6810A608,
+0x1161B488, 0xB5053E5A, 0x782EFDE0, 0x3453A68B, 0x963D64DC, 0x6203A078, 0xEEFCA4C7, 0x631B9F0C,
+0x921FDD91, 0x81019397, 0x42B0CB73, 0xE4AE7EC1, 0xBEAF1FDF, 0xC12657FB, 0x27A5D62D, 0xC1F57367,
+0x1023A06E, 0x27174E26, 0xED186314, 0x5EAB3D00, 0xB59BEBB2, 0x1EDB7014, 0x094B2515, 0x38F9ADD3,
+0x7109D1A4, 0x41C858F9, 0x516E2CB6, 0x60ECDF1F, 0xDB5B9150, 0x5585AC80, 0xD3896615, 0xF86B1821,
+0xD5579DCE, 0x862388DF, 0xABAA5BFD, 0x0AC810AB, 0xD7BB2BD2, 0x5EBCEC52, 0xB0736E68, 0x5B063E76,
+0x1782AE94, 0xCCDECF2F, 0x29DD639D, 0x3FCDCD30, 0x84C8A4EE, 0x1B0BB9F4, 0x4F0AC271, 0xB1C6BDDA,
+0xF1607CDC, 0x4DBABDD4, 0x80D6BBE6, 0xF41E9366, 0xA135C385, 0x1958481C, 0x45968092, 0xD4891D1B,
+0xE766F732, 0x63449C34, 0x6C629169, 0x7986545D, 0x193F0D78, 0x8F8B42C4, 0x218A1A87, 0x99BB7E36,
+0xE1D527D5, 0x1457E103, 0xE2D24F9B, 0xC3C07A5C, 0x95C496E7, 0xD7A6BA66, 0x6303343B, 0x5F160517,
+0x2CF1E43E, 0x4840107C, 0xA0BA7439, 0x6DDF3C50, 0xFAFF3355, 0x1CAF86F0, 0x74C006B6, 0xDD916C2C,
+0x2162FA2E, 0x6515DD70, 0x0FA16C32, 0x322878E5, 0xA738F272, 0xF7F5BC34, 0x829B6C52, 0x4CEB4822,
+0xB4D6700A, 0x22B0C2A3, 0x56D1D0B6, 0x0B37BE4F, 0xDEB7ED1C, 0x3E609011, 0x7906D9AC, 0x24D34C0C,
+0x4E7BF365, 0x33ECF689, 0xFE4CFD84, 0x153EBFEA, 0xEE511CF7, 0xE0E9326F, 0x6C458B28, 0xDC7F00D6,
+0xC25BD14B, 0x2143DD06, 0xAC86993C, 0x04735D21, 0x574CC875, 0x4D5B942B, 0x03AA6ED6, 0xFBCE71C2,
+0x5AEF0AA9, 0x7DDBB4F5, 0xC879F2F3, 0x887560EC, 0x1E55A155, 0x9A4F5E5C, 0x356EBCE6, 0x60562F8F,
+0xF41B4C27, 0x3268EBF5, 0x31D8CBB5, 0x26C024F5, 0x25784BBD, 0x7AEDBCDD, 0x6F7970FD, 0x99A63285,
+0x9718C4D7, 0x83239AEA, 0xED020D8D, 0x8801CE87, 0xDD84450C, 0xC4E5ED28, 0xCB0A0158, 0x7922981F,
+0xFBE2913D, 0x2877D654, 0x17EEA162, 0xBC3CC88F, 0x18306EBE, 0xA67C48A7, 0x1DEAB146, 0x1BFE6AD8,
+0x25813161, 0x91AD701A, 0x15240820, 0x3F3B0FD3, 0xD2DCD8AE, 0x301BB1C2, 0xBB1135BB, 0xF609F89B,
+0x2EB7A9C5, 0xABA6DF46, 0x2998A822, 0x5D1CA697, 0xC34EBBD9, 0x94533AC7, 0x2B246F3B, 0x4E9404A7,
+0x56256EB4, 0x75B4C02F, 0x91AAF988, 0xD1E291CF, 0xAA56D6C6, 0x90E869A3, 0x1F1AC03A, 0x619A60F0,
+0x062DC365, 0x83971A75, 0xAAB72DC2, 0x901E6C97, 0x4448516C, 0x23A6BD50, 0x70949BE6, 0x2ACF2586,
+0x0B775F96, 0x21D7C5CC, 0x73364F15, 0x43D25EE7, 0x90E847D3, 0x52F7CF77, 0xC7929A97, 0xAFDC9E74,
+0xA1F0FE1F, 0x51798994, 0x4BF3977B, 0x993BA0BF, 0x98E1CB5F, 0x336362C1, 0xA109F1A8, 0xEABD45FA,
+0x1BD32EEE, 0x05D06FDA, 0x163B9FD7, 0x109626DC, 0x8BDBEE6C, 0xC8AE2549, 0xD55E728E, 0x81F10C50,
+0x131D24DE, 0x05B0C8DE, 0x4230E740, 0xF01F70D4, 0x9264DF25, 0xC30E719F, 0xAD24A900, 0x4096F674,
+0xD04958DF, 0xE9D5ECEF, 0x848E9A56, 0x69A03749, 0x075EC432, 0x947DFFF7, 0x54ED7ABF, 0x9DFBFDB7,
+0x736D8B8D, 0x412DC4E8, 0xD77F815A, 0x627F8046, 0x82AB4F7E, 0xD6702589, 0x51822286, 0x50E5FE91,
+0x44F27292, 0xD0E21C3A, 0xBCC64A75, 0x04888208, 0x6F820A18, 0x009C21E4, 0x2BE0DDE8, 0xC9056874,
+0xA9181962, 0xF51FBF8A, 0x84501216, 0x3474B79F, 0x03DE44DE, 0x66F26BF4, 0xD56E6210, 0xB29980C4,
+0x79DD29AA, 0xF714E554, 0x2CA00BA2, 0xB8D6FB3D, 0x7A1F6160, 0x59283C98, 0xC7A17C1F, 0xD9A42E65,
+0x94C56D5D, 0xE470CDED, 0xE749638A, 0x91E77953, 0x489EAF1F, 0xF276AE33, 0x8853963E, 0xAD7D9714,
+0xA1AA4E8A, 0x3AFAEAD4, 0xD1D828B1, 0x271B6270, 0xD1FD2822, 0xD04CD1E3, 0x7B959D1F, 0xB525C4CF,
+0x6875BCFF, 0x7A6B9DFB, 0x0AA9673E, 0xC3975B92, 0x13A53856, 0xE7749240, 0x34B76603, 0x55AC66F6,
+0x91925F92, 0xEDF20E6C, 0xEC400A82, 0x862B4C20, 0xB14BF98A, 0xC6A238CD, 0x595488D0, 0xB1AE413F,
+0xE1E1208A, 0x4BF37430, 0x61770680, 0xF440A4B0, 0x85357717, 0x3FF22E41, 0x22112ABF, 0x074462C4,
+0x3E2EBCF3, 0xDBF854FC, 0x21ED59A5, 0x61014AD9, 0x5AD07B5D, 0x9E9103C2, 0x3FFC0FAA, 0x65C64D82,
+0x04DE2D8D, 0x9219D8F8, 0xC25E558A, 0x9F2BDD57, 0x99EC033A, 0x5F32FC01, 0x09D8EF24, 0x8EAF9458,
+0xC8EB59C7, 0x594A25F8, 0xBFA83A0F, 0xBC2E5D74, 0xA0D49C31, 0x098D74A8, 0x3F6AB1FC, 0x13AA4950,
+0xBEBAB5C6, 0xD4028F26, 0x4B404B2D, 0xBCEB7284, 0x94213B28, 0xEB2EA724, 0x230B9649, 0xD25D453C,
+0x278E2DBC, 0xB698A0FB, 0xD5D4C6C9, 0xB83B718E, 0x8244A8FD, 0xD6FB05AE, 0xACE61C0D, 0x4C85D2B4,
+0x37B11347, 0xBDA93B23, 0x73210899, 0x049025D8, 0xB07652A5, 0xD4BB03B9, 0x125E8D3F, 0x86E4BE2C,
+0x430A2D09, 0xB7A6B746, 0x942C88B4, 0xC84E2283, 0x5E88AD99, 0x19CC7E58, 0x82A72734, 0x0444D31C,
+0xABE1D1C0, 0xAE874874, 0xC21CF708, 0x9088E53C, 0xF9F3BA7C, 0x5984ABAE, 0xED1C50A8, 0x83D167B8,
+0x17FBF4CB, 0xFD8B8E5B, 0xA601A450, 0x09210028, 0xDBB09AC0, 0x3CFB0DDA, 0x9DBC9700, 0x9B2EF0C8,
+0x2D16FB1D, 0xD9F2373B, 0x3656C2F7, 0x9512784B, 0x224887A9, 0xA222E9E5, 0x6A713969, 0xDCA4F593,
+0xB525E299, 0xD9A3C25E, 0x3F315486, 0x514EE52D, 0x995E2C44, 0xDDF7D879, 0xBBA05866, 0x09373432,
+0xA352296B, 0x4073B7D5, 0x2DA3380A, 0x92B1D2F1, 0x401B533C, 0x8DA476AB, 0x02EBB72E, 0x83F2D49B,
+0xA979F7F1, 0x634D9F1A, 0x8779DB3B, 0xA8C2728F, 0xAFC7FAEA, 0xD916072F, 0xC50A0516, 0xBD762B1B,
+0xA1D832A8, 0x513D88E9, 0x54E5122A, 0x5CFE1BD7, 0x6A5F678F, 0xAD409889, 0xCB6409FF, 0x4E47478D,
+0x6F1F5D97, 0x6F9181F6, 0x167FD760, 0x69F3D961, 0x5CC62F0C, 0xE6EBDA48, 0xA73EDD6F, 0xD771EAE9,
+0x98993616, 0x54531D15, 0xE6BAFE23, 0xCE0C4FE0, 0x7665EDD3, 0xCA0E2864, 0x0E00C7AA, 0xFB9589CA,
+0x3E45BC73, 0x9DD3D3B2, 0xF4858555, 0x6864D444, 0x26B320E5, 0xFAA0D75B, 0x6AF18A0B, 0x6F753473,
+0xD81FE314, 0x2C251AE0, 0x8A48160C, 0x0669D485, 0x533706F4, 0x46A9B0D2, 0x07E960A3, 0x18B91BDF,
+0xAA7C3784, 0x6067875B, 0xC2F7AD4F, 0x77281412, 0xAE6E1984, 0x2F46F53E, 0x74833DBE, 0xD7C4F57F,
+0xAC0224F3, 0x402CB673, 0xF2F33187, 0x43C63CD5, 0x63370C5A, 0x28EAA0B3, 0x15DC0827, 0xF8C13195,
+0xCA7A2301, 0xDA580E64, 0xBC992A21, 0x71FFF777, 0xC55C854E, 0x8D67C095, 0x0C79DCCC, 0x01F820AC,
+0x730966FA, 0x7CB7E3A1, 0x05716CA1, 0x05EA7146, 0x4B21BB4C, 0x57A3A46C, 0xA380C973, 0x0DFFF6E9,
+0x18EE3F11, 0xD8ABDCDF, 0x46E2E144, 0x8F88A329, 0x27C4D6F0, 0xDD4DB1AD, 0x560C9C46, 0xBF1EA842,
+0x68CD1864, 0x29AEE044, 0xCFFE9445, 0x3184F012, 0xB63EF1EF, 0x783E1258, 0xB6E3CE5E, 0x036759B8,
+0x28843EB9, 0x5B169A32, 0xB5FAAC49, 0x72161C31, 0x28EF56DB, 0x913BEC87, 0xDC38B2AA, 0x251D2C95,
+0x9AB65980, 0x5C567F15, 0x7B64B3B0, 0xFDE314E3, 0x3367A8E2, 0xE8087853, 0x05EEF21A, 0xA052A1C3,
+0x654C635A, 0x1868E5E2, 0x997FFC2D, 0xB09B7E98, 0xB3062859, 0xBC1E9BDD, 0xC2A1F4AF, 0x811BBDC2,
+0x174B86DB, 0x9979B634, 0x0F80A1EF, 0xA32CA185, 0x3E7149BE, 0x6AC8A06F, 0x3FB5DDAF, 0x3B7837F2,
+0xD1737C8B, 0xF8A72FA2, 0x2C2635FF, 0x0D5BD18E, 0x4780FD30, 0x8D29F1DE, 0x917DF894, 0xE52C9199,
+0xBFDB3EEC, 0x50E8FFB4, 0xFEF9A1BE, 0x82EFAFD1, 0xEA6694C9, 0x933E880D, 0x46CB6648, 0x6644D5A3,
+0xC8900988, 0xAACC23AB, 0xC8A93A92, 0x18FCB781, 0xD1F0018B, 0xF7E864E6, 0x7F5A7EB3, 0x79214E31,
+0x9682B826, 0xABFA04D4, 0x1DF77F92, 0x907FED6B, 0xD6840AA9, 0x67BAE9BA, 0x4D779B6C, 0xA3CA179C,
+0x9C5B2D8E, 0x1A2CAF1A, 0x0CB80652, 0x981100F0, 0x5C05DAEC, 0xC9E0ABD1, 0x640E910A, 0x3963AB5C,
+0xF10B1CC1, 0xA4959874, 0x48373922, 0x6435B742, 0xF3D4862D, 0xABF551F0, 0x03690B59, 0xE54BEBC5,
+0x9FC92B57, 0x8748BE97, 0x3F29F60D, 0xB0005606, 0x807B1CE8, 0x5307F987, 0x62D2DF3C, 0xC358BE3F,
+0xEB5C5520, 0x3F436B62, 0x71A6E46D, 0x0F335ABF, 0x444AFCA8, 0x89E2AADA, 0x87633F7B, 0xEC095AB1,
+0x25637515, 0xA75EE080, 0xD1011787, 0x07559196, 0x23705BD0, 0xFAF47373, 0x306EA9FB, 0x378D28C7,
+0x4B94695E, 0x44B153B2, 0xF5BD9D87, 0x00530E86, 0x2A1EB708, 0xA8D6B4E1, 0x5DDCA1B6, 0x62390240,
+0x455F2DFC, 0xE4A0E4DA, 0xBDAB0312, 0xB60DE28D, 0x101CEFC2, 0xBCA1132C, 0x0EC8B7CE, 0x90C50439,
+0x9031D7AA, 0x3124E69A, 0x726D201E, 0xA2E941F4, 0x0EC45CD1, 0x14EC8C41, 0xAFF54C66, 0x8D78C343,
+0xA31FB828, 0x4D3E55C0, 0x58C3E3E1, 0xB77CB4C3, 0x0CCA5EB6, 0xE8E9A34E, 0x7FCB63D9, 0x3147C71A,
+0x8DB3205C, 0xDBCACBBF, 0x16530793, 0xA6239263, 0xD7EC7506, 0x8BB600A8, 0xE9C6E150, 0x0B2D5E1F,
+0xBBF82859, 0x7DEF70FF, 0x09D7FAAA, 0x953F2DD7, 0xF0FC710E, 0x630C6807, 0xDC24EDC1, 0x606AE8B7,
+0x073544A7, 0xD9E6FECD, 0x139DA3D8, 0x4182A763, 0x88EDA595, 0x666EBEC4, 0x1E36D7F2, 0x4A5BADDC,
+0x31FCB68B, 0x2015E9B8, 0x7ADF8DF7, 0xE8ABB96F, 0xCCC1F920, 0xE3636221, 0x09987F74, 0x52A542D7,
+0x388732CE, 0x3D554B67, 0x7414DF5B, 0xDC5D7BF8, 0xB7EDB499, 0xEAAD6511, 0x1AF6F596, 0x9EA079E3,
+0x6220072E, 0x9E5BCB2D, 0xBE976247, 0x2304F0B1, 0x9476CDBA, 0xDC708109, 0x97DCDD7C, 0x83FCDE68,
+0x00E24B6B, 0x539B70BC, 0xFD9F786A, 0xADF4931A, 0x5B1705E6, 0xEB4FEAB2, 0x5BB9576F, 0x9E1F5591,
+0x41F4961F, 0xAA2ED7EC, 0x84A7282E, 0x37FD9AF2, 0xFCEDBDC3, 0x1ED640FE, 0x82B16A9A, 0x3D3B6835,
+0x43A3A708, 0x84E423AA, 0x14FC7706, 0xA6DCF024, 0xA852AAB5, 0x65E059CD, 0x2051A5B0, 0x4F9C0914,
+0xB272345D, 0x39FE0BBF, 0x6C85C71C, 0x6C73CC08, 0xD371EB98, 0x22F050E0, 0x01205ACB, 0x02C2B8FB,
+0x4AC82D13, 0x23E076CE, 0x628E6EEA, 0x00C6FF81, 0xF77E9951, 0x5C874674, 0xF130FC4A, 0x84C65D86,
+0x8A3C2896, 0x78236D9F, 0xB104B35A, 0x248FE9B7, 0x7ED9B82F, 0xD95F06D7, 0xC1D5D383, 0x1C8E422D,
+0xD5E73F2E, 0x5003F0D4, 0xB5317382, 0xD8261070, 0x704F4999, 0x3509A734, 0x70A48705, 0x3861CA10,
+0x934D4F1A, 0x2ABE75FC, 0xC3EB62CF, 0xBC0DBE0A, 0xAD50449F, 0x4B73E0E2, 0x296AF528, 0xA40C5251,
+0xBFD6439F, 0x0329B191, 0xC20B364D, 0x2A05B5B1, 0x9191BD32, 0x94B3B25E, 0x8E00BF0B, 0x1526856C,
+0x090033E3, 0x07B6AD6D, 0x0087EFB2, 0x3E9F1C1C, 0x2C0FA3B3, 0xF945E13B, 0x6A120B24, 0x15CD3AB0,
+0x3A71A968, 0x6E3816C5, 0x96A73EC7, 0x927DA68D, 0xDD5527ED, 0x0F262BE4, 0x44C6EBA6, 0x75060DB7,
+0x959F8F6F, 0x03D576A7, 0x7E5245B6, 0x2ED4CC6C, 0xCC6FBDD7, 0xCB5C841D, 0x0A05E417, 0xDC6E714A,
+0xC1E4ED32, 0xE36753DB, 0x8FA41499, 0xBFD5AFD0, 0x6D570030, 0xFF4FCC92, 0x3E4E9100, 0x2FFEE55A,
+0xE715EDA7, 0xB3968AEE, 0x32333CC9, 0x041C7725, 0x54D53497, 0xD14BEB71, 0x13DB6AC9, 0xE1517AE7,
+0x74337094, 0xEFAB3BEC, 0x0ACA155D, 0x4F11631D, 0xC60ECE8F, 0xE797CD53, 0x8244C0E4, 0x74545E18,
+0x7B81FC67, 0x06590B01, 0x4066C7BA, 0x5FFC36B6, 0xB2117E30, 0x2EC8BC45, 0x613866E0, 0x0BCD4E3C,
+0x7EF32966, 0x78154302, 0x78F55AAE, 0xCC58F20B, 0xFB5422C9, 0xDE8C2F19, 0x80FEED38, 0xC5DCCEAE,
+0x4B1ED055, 0xA2572821, 0x759CFD0C, 0x7F997C01, 0xCA262D01, 0x59B0EFF1, 0x80503178, 0x223B023B,
+0xFF102F39, 0xAE87349B, 0x71EFF1D1, 0xB3A6621B, 0xD0072E7A, 0xCA0BD8AD, 0x03859968, 0x681CD574,
+0xD7B989D0, 0xF27815A5, 0x79CD664C, 0xCDD20E74, 0x1DB706FA, 0xE303D88C, 0xA1549CE0, 0xC3AE20C6,
+0x73BA3AEA, 0x2CD4F246, 0x22AA6341, 0xE902B307, 0x819BA7D3, 0x39D1B0DD, 0xC8FDBCD9, 0x6BF46CC6,
+0x26548ACE, 0x73B4AEAD, 0x550B71EC, 0xCBBA3330, 0xD597E961, 0xFCC7A453, 0x34FA66FB, 0xFA45CCBE,
+0x7F4E2435, 0xAFE613F1, 0x04A250EF, 0xC12D30EE, 0x4630450D, 0xD8B0BC01, 0x22D8C004, 0xDFEBAE77,
+0xC947016A, 0xA702A96F, 0x1727D2A7, 0x0E8503BA, 0xFFE82E4E, 0x6265B45F, 0x3C84B972, 0xB00563E4,
+0x3E2DD33C, 0xE022F7EB, 0xE85E2A9B, 0xA3531EFD, 0xA6F451F1, 0x5598706F, 0x741B96A8, 0x8EC9CD4E,
+0xE807428D, 0xCEEAF262, 0xE9146491, 0x8DE1F40B, 0x35EC308A, 0x488B8AB4, 0x369CC00A, 0xED217AB9,
+0x4F09F415, 0xEA74654E, 0x1B0EEB0C, 0x1CEBB3E7, 0xDDD9EAB7, 0x983AED61, 0xDDD6860E, 0x49AEB559,
+0x02AB54F7, 0x3F297BC3, 0xF91F4F28, 0xE3654014, 0x1F559DDD, 0xA22429EE, 0x8ACB7891, 0x5ABCA0A1,
+0x35B3A54A, 0x9A665772, 0x47763281, 0xD60F6F46, 0x5C09F267, 0x1D395872, 0x14FF5624, 0xE5ADDB46,
+0x3B360E2A, 0xB6226FDF, 0xC101B86C, 0x54A4532A, 0x93ABBDFD, 0xB852BD12, 0x129A5002, 0x9C6CB6FA,
+0xC31B037D, 0xFB5F9670, 0x3802C79A, 0x1BBE0E2A, 0xE5B7F874, 0x6E57B6BF, 0xE0C72982, 0xA9443D5D,
+0xB1DA196C, 0x3B146F55, 0xF54A5855, 0x3A4E8D6C, 0xE9B32205, 0xBC9DA1D1, 0x53093EDD, 0xA158718D,
+0x91E34FE6, 0xC435CDB5, 0xD3363D05, 0x8BC5EDEA, 0x628747DF, 0xD09CD76C, 0xE9F1EEC8, 0xED4B82DA,
+0xAD7B5083, 0xCC7BDBB2, 0x5DA33CF9, 0xA9594735, 0x4B6305C3, 0x2C2EB65F, 0xC65A82A5, 0x35A58751,
+0xD58BC1AF, 0xBDA05DD3, 0xD3BF7436, 0x06C7E51F, 0xE216FB65, 0xD73015F7, 0x237E71EB, 0x914DCB68,
+0xB61A238D, 0x1F04AE1E, 0xA9C737E4, 0x204F7E68, 0x39C44996, 0xBEB3B69C, 0x47AE8262, 0xCEA60892,
+0x14731FF7, 0xE6F050DD, 0x4EAA68B0, 0x653470DC, 0x14C8BE4D, 0x21B6030C, 0xBDE6FD3C, 0x0541765B,
+0xA73E59C7, 0xEAD07C14, 0xB99AC885, 0xF39446F7, 0x59EEB547, 0x1BE5BC3D, 0x4132465C, 0x007C4AD1,
+0x5EA16295, 0x8284E9EA, 0xF82D0BA7, 0x0A87E020, 0xDF911195, 0x4F752183, 0xA4157B7E, 0x1024129A,
+0x9F3482EF, 0x474154FB, 0x36BF3621, 0x9CC2FD88, 0x52D087C8, 0xAB8CD640, 0xEC68DCD8, 0x6AC36888,
+0x587A27DD, 0x1A62C0D0, 0x484D5014, 0xAA57F909, 0x96E77A19, 0xC9722A45, 0xBE22335B, 0xA3B1A7F5,
+0xD441919E, 0xC511D8AF, 0xF677DA64, 0x369BF359, 0x7FBDAC52, 0x5F3861E6, 0xBBCD6AA9, 0x5B5F0F40,
+0x2BB82F14, 0xB2131C88, 0xF577CE12, 0xB6D4E259, 0xBD9F38C3, 0xC722A813, 0x40AD813B, 0x4B381809,
+0xECD92E9D, 0x245D1518, 0x55D1BB3D, 0x9C277083, 0x85F8551F, 0x00E94FF7, 0x60C77C3C, 0x40EF10F9,
+0x83722EF4, 0x088C811F, 0xDDFB099D, 0x931A265B, 0xFA64A080, 0xE9C22C04, 0x1A6BEDD4, 0x85A80CA9,
+0x5B0BDA0B, 0x3387666F, 0x07FDA57F, 0xBF1C5EC9, 0x4274C338, 0x7C639502, 0x31AB1418, 0xBA5EAE85,
+0x4EA3AFF3, 0x3F3BB836, 0x8598DDAA, 0x3ADF0464, 0x307E185C, 0x194596BC, 0x4A4DF7C2, 0x7B8CC1EF,
+0xA16E1EFB, 0x599C3786, 0xF20879EE, 0x6FD5EC9D, 0xF586441C, 0x04858B21, 0x70CC2EBE, 0xADE98CE0,
+0x1DF4263B, 0x9BFE3B01, 0x35CECD03, 0xD19DF6B0, 0x5E6C099D, 0xE86E51D2, 0x46A194FD, 0x4BF64456,
+0x4DCD8831, 0x4377AA94, 0x2CE2BD72, 0xC90C5897, 0x47F95EE0, 0xF2941143, 0xF6654C2C, 0x49CC7D45,
+0xB498FCBE, 0x791713ED, 0x3CA912AB, 0x2F103269, 0x63FD081C, 0xD8D7D1D7, 0x3CBF87D9, 0xCE5A8D11,
+0xB0318AF3, 0x0B2D17EE, 0xF0E40B6F, 0xFB2589FE, 0x3A8B2F25, 0x6994ECCE, 0x72F83A67, 0x0A834B3C,
+0x809C6FFC, 0x89F0A30F, 0x6F4C9779, 0xE386E0E8, 0x24509CB8, 0x10E678A4, 0x8D794811, 0xA3EC755E,
+0x717B6AAB, 0x4BC9C9D4, 0x9BF45C0B, 0xD7352482, 0xED5FC4A3, 0x363FEB0B, 0x31602E25, 0xF329D0EE,
+0x1EE5314F, 0x47CBED59, 0x99F379E0, 0x1DD3B481, 0x7CBF0AD0, 0xCA7FADAA, 0xB2B82F5B, 0xC8A3CE2E,
+0x0798C9DE, 0x6AC95338, 0x1272056F, 0x5C100328, 0x7854D34C, 0x5D65B503, 0x4D3A2F57, 0x994922FB,
+0x59D738B6, 0x9D15BD4F, 0x558508E2, 0x0F72E4D7, 0xC2C91EC2, 0x3B7BB706, 0x0860354C, 0xBE0B0685,
+0x3600ED18, 0x7BA7B7D7, 0x3C65176C, 0x27E7EC7F, 0x92BC848A, 0x16D9E8F2, 0x90E4E83E, 0xB9C6C13D,
+0xA01A401F, 0xC354F431, 0xA64FA608, 0xDF48CD1F, 0xFD2DED63, 0xAA21C6CA, 0x861F453F, 0x9D933193,
+0x8B0E7418, 0x64210F7F, 0x2BF32AE8, 0x18AD720E, 0x9F59B9DD, 0x94DFB404, 0x1ACDE1E8, 0xE546C7E2,
+0xACC1B314, 0x9444A6DF, 0x20823138, 0xBDA243C5, 0x331790D5, 0x3EF2966C, 0x9480D27E, 0x2241D946,
+0xF41F17FD, 0x59A4A782, 0xF7B4FB13, 0xA247EFED, 0x9512E8E5, 0x66570136, 0xBF506714, 0x9FA30B45,
+0xCEC0F57E, 0x7A4C4D5A, 0x499B9F03, 0xC3EC852F, 0x9C365777, 0xCD327614, 0x6856C138, 0x56F40CBD,
+0xAFEAE4B3, 0xCEBCAC05, 0x17F20729, 0xDB2F8FA7, 0x521FCEA4, 0x53ED398F, 0x4BDF870A, 0x8D045572,
+0x40289F0B, 0x0741338D, 0x7463EF6A, 0xA321F40A, 0x46223EE2, 0xECD98A9A, 0xE4244BEF, 0xB155EDCE,
+0x8E4DF6D4, 0x4D1BACB6, 0x258C048E, 0xF3651C04, 0x41A204ED, 0x8BD8134D, 0x1457E153, 0xAE31C01C,
+0x34AE84DB, 0xB8AC76A7, 0xEF05536A, 0x606738AD, 0x3F3D776A, 0x1748A733, 0x2CFC0F99, 0xD44C4C65,
+0x10AE9713, 0xC06AD1CD, 0x035DC017, 0x71F7D37E, 0x69F51520, 0x05395E96, 0x7AFEA1D4, 0xD8C805AC,
+0x5A4E9313, 0x1DF446E3, 0xC1643078, 0x2B4509A4, 0x39A961D0, 0x862A3C44, 0x2B88EA87, 0x6608A193,
+0x12884CD8, 0xBA9D57DC, 0x719812C8, 0x6799B768, 0x5C977424, 0x224EECFE, 0x7C25016A, 0x76F2F44E,
+0xB91915E3, 0x0646575B, 0x93F69F88, 0xB9803CAF, 0x9137EC54, 0xA016823C, 0x84CAC8B9, 0x6445EB8B,
+0xE2434194, 0x4DC549E6, 0x63AAF6AC, 0x38498616, 0xA1A6B2A2, 0x5224CE5D, 0x5F7E6E64, 0xDA761B9D,
+0xFB27A804, 0xD9CA3995, 0xEB9F3F13, 0xCB6410F7, 0x72176AC5, 0x21CF30E7, 0x091BF490, 0x3192D17D,
+0x1D97719D, 0xAB62B41D, 0xFBF9730F, 0x6F9250FB, 0xF24EE2EC, 0xBD491390, 0x4CF11E33, 0x307D6C7F,
+0x56C1F6B1, 0x1682BCD6, 0x76F5AC3D, 0x88B25481, 0x64EFFD0D, 0x25A0EA37, 0x3D1DE9F1, 0x026963FA,
+0x545AE800, 0x0350C27D, 0x864EC2C6, 0x2C32391B, 0x1DA57B49, 0x4F7E72F7, 0x8B0C6271, 0x19022919,
+0x95B5A4FF, 0x7AE0CF38, 0xB1872645, 0x430E66F7, 0x0F07499E, 0x4A526A3C, 0x826EE07D, 0xCEF7188E,
+0xB363950C, 0x7EFC0955, 0x64DFE6FE, 0x4C981A92, 0xE0842775, 0x30EB4A20, 0x08F6F830, 0x1DCAB9B0,
+0x1CD6B3D2, 0x5A768CB4, 0xF9864305, 0x322E0E29, 0xAD0EE00E, 0xC7BEAE41, 0xC0BAC204, 0xBF9DA922,
+0x4A794D75, 0x5E5BDECF, 0x7060E623, 0xC8FAA029, 0x84573879, 0x56A3076D, 0xDBDBE247, 0xEBD37D7C,
+0x52EE2F8B, 0x616A38DA, 0xFA82697B, 0xFDA705FA, 0x9B3E2E70, 0x135B88A3, 0x23D2F2D3, 0xD9C66017,
+0x076D271E, 0xD9557974, 0x5A28455B, 0xF598CD12, 0xCB0E3D6D, 0x11F3E1EC, 0x3C0F41CC, 0x8097CF74,
+0x1B53B1A4, 0x094C191F, 0x5756BCE4, 0x443E6D6D, 0x29B6D477, 0xE310BB6B, 0x07A1ECB5, 0xC4B38907,
+0xBCDD1301, 0x6F9BDBFC, 0x80B12B77, 0x2E944BDE, 0xBDFD1EB9, 0x169D96A6, 0x092C7F63, 0xF23E1EF8,
+0xAFA574A9, 0xCB8015B0, 0x6A422790, 0x42FA6F74, 0x6B862A8A, 0x3968D4DB, 0x01262003, 0x4A2C8AAB,
+0x4D75DA80, 0x7B4159CF, 0xD0967C0D, 0x7EE7DDBF, 0xD1502233, 0xAF701064, 0x2B2AEF63, 0x946448B7,
+0xCBEEFB7E, 0x3480BA1A, 0xA5117C25, 0x85F5446F, 0x995E8063, 0xC6B90917, 0x87733039, 0x4B510481,
+0x9D94B817, 0x83A49F8F, 0x7B0471B3, 0x176083D5, 0xD2EAEBD6, 0x6A5BBF8B, 0xC1EBF022, 0xB5FAE24B,
+0x0A9E1A31, 0x2D737AAB, 0xA5D8AEF5, 0x8CBC816D, 0x899FF6A7, 0xFB3FD029, 0xCF266053, 0xE1C5137A,
+0xB4B4A5EF, 0xC57FBD24, 0x0115216B, 0x6A7C8D7B, 0xF6FF6E23, 0x272FD00A, 0x24C32AFC, 0x1FC1D4B4,
+0xCB4CB16A, 0x4E8E0BDB, 0x17F46279, 0xE0E2CB27, 0x453F7663, 0x68E80351, 0x0A2A301A, 0x5A2FB9F6,
+0x29824C1C, 0x647EFDB4, 0x6899A5D5, 0xCCF3A06E, 0xA6FC7892, 0xE6E8BA0D, 0x43F800C3, 0xBBA936F9,
+0xED412CD4, 0xBCE7F82C, 0x1CBE0878, 0xB2626B82, 0xC739EB0A, 0xDDC0822F, 0x7B9958D5, 0x45AD766D,
+0xDAA39A62, 0x5380331B, 0x05FF26F5, 0x5F0CA3EC, 0x19FD906E, 0x1A30A5BD, 0x33788A31, 0xB9D1D7FD,
+0x2156BBCE, 0x1EF2B85B, 0x0F029757, 0x343C31F3, 0xF76E89B4, 0x33FA8194, 0xEEE76A05, 0xC50EEF22,
+0xFD65E32F, 0x05804E86, 0x0385B59D, 0x22C59CA9, 0x372908D1, 0xBBDCEA53, 0x17CF36DD, 0xAA26E8B6,
+0x1E0EF97D, 0x3628F813, 0xE1D0F17F, 0x1EF05060, 0x55CF29B8, 0x7276254D, 0x5A864224, 0xC2803085,
+0x155EEF6C, 0x4AD3D52D, 0xB2586F2F, 0x744A3E04, 0x5044F47A, 0xD470E7B8, 0xBB7F2D35, 0x70491D73,
+0x71BDBF29, 0xCB6CC4EC, 0xBCE70B18, 0x1119D2BD, 0x2F032B6A, 0x1FC1F81E, 0x09765746, 0xD39A2BBC,
+0x28605C09, 0x77235514, 0x8C6E2C7F, 0x36BC004F, 0x229EE3A3, 0x8DE2B47B, 0x5836026A, 0xA632A206,
+0x156C5135, 0xCB737E6F, 0xA35B9EE8, 0xF93F8F5A, 0x1A18C6BA, 0x9ECB8877, 0xCFA3C87D, 0x53848C01,
+0xF0D9D12A, 0x345D32AC, 0x9F180A87, 0x1F3C9F6E, 0x1D5AF2C5, 0xF018F717, 0x72F6B4FD, 0x8332EFD5,
+0xA921926D, 0x024EED2D, 0xAB87F9C8, 0x85072D6F, 0x61B91A05, 0xA6630361, 0x710BC236, 0x1DCA51D3,
+0x7B3C6497, 0xE528ECA2, 0x1B107C88, 0x8437C935, 0xD2D5364C, 0x95256DE4, 0xDF98C6D9, 0x7895C4D2,
+0x03F4175E, 0xBEA51C1E, 0xC02CB1BD, 0xEDC8BB14, 0x4B0B4D14, 0x347A2A21, 0xDE98821E, 0x3D28C01D,
+0xB8CC391A, 0x4321AD0B, 0x4A64079D, 0x63C7D98C, 0x95A5FFDD, 0x3203EF17, 0xEBF0927C, 0x75121B13,
+0x04784862, 0x61DCC975, 0xA2F58FA9, 0x115A346B, 0x21272E61, 0x530FA57B, 0xC4656139, 0x96761B04,
+0x8E9B15B3, 0x06A0DB49, 0x555AD88B, 0xA5BFC130, 0x0D366A26, 0xD4157039, 0x341DD62E, 0xA93BADE3,
+0x087FE343, 0x6548EFF8, 0x6426A0AC, 0xDAE976B7, 0x63B77606, 0xA0316D05, 0xCBBA75F7, 0xE3343E3D,
+0xE9074A6D, 0x004C4590, 0xAB6AC8F9, 0x6267A2E0, 0x35B4ED3A, 0x0F9476A7, 0x0E815EA0, 0x301DD5EC,
+0x8D877881, 0xF7A9256E, 0xE21CCB3F, 0x0D4DDECF, 0x86512320, 0x556AEC54, 0x07D3A52B, 0x1E317896,
+0x0D5726B9, 0x669B19BF, 0x3D155020, 0x31B15E38, 0x9316D466, 0x7C13BAA5, 0xA819D978, 0x10A03253,
+0x5A79B9CC, 0x7BDBACA1, 0xD7AD4DC8, 0x3671D49B, 0xA4D6E963, 0x2348FCD2, 0xED4D9E78, 0xFB1BC33B,
+0x2920B740, 0x4EC2D635, 0xFAA8B674, 0xEF090002, 0x590C402C, 0x96F4EADC, 0x612442ED, 0xF61F3620,
+0x4A935989, 0xB8560133, 0x22FF37DF, 0x48C41FCF, 0xAAEF3A81, 0x45C75537, 0x41AC7560, 0x419BD6F5,
+0xBA507157, 0x69C3D4F8, 0xA9789575, 0xFF20A2ED, 0xBFCA8F8F, 0xA0E9BD89, 0x9AC9E758, 0x31893093,
+0x6760E9C4, 0xC201326F, 0xC532F26F, 0xFAC33466, 0xA8D5AF61, 0xFEDB2574, 0x0F8E5FF1, 0xD27911F0,
+0x859851DA, 0xC2FED909, 0x106B1D39, 0xBE017AF2, 0x57B34654, 0x30CF920E, 0x9354F13B, 0xA554AB2F,
+0x9F4A744E, 0xA792D136, 0x95CD6144, 0x153739E2, 0x29226C16, 0x23F092D2, 0xE8043AD3, 0x7BC0C727,
+0x00D37137, 0xBCEAF21D, 0xE18D8C45, 0x3A136E19, 0xFCC74D52, 0x74941700, 0xE34771FD, 0x2C314D24,
+0xAA8B971C, 0xD0528CD2, 0x195E160A, 0x9F513122, 0x018D0E51, 0x6049ACD5, 0xDD6143B5, 0xA6166758,
+0x69DEBB7B, 0x6D2AF171, 0xE13B3AD9, 0x53973ADE, 0xC760ED15, 0xB79D6C6C, 0xC6D275B4, 0xFD7E7EE3,
+0xA17B5408, 0x04E0EAF4, 0x4DD9D131, 0x7651DD53, 0x16F76981, 0x359EF7D5, 0xCEBBA37E, 0x8DC66BDE,
+0x1CBA6AEF, 0x6D98A339, 0xA1058FF9, 0x01D72D50, 0x98AA493A, 0x20D0707B, 0xE7FE9F6A, 0x144C8B5F,
+0x560989E8, 0x1D78D854, 0xE4396B84, 0xADE349CA, 0xC851F6E9, 0x0186A009, 0x0A38F417, 0xB99937AF,
+0xBD778403, 0xF528F77B, 0x684D151E, 0x1968C826, 0xBB89609D, 0x8BA52BBA, 0xF4B5659C, 0x2756A1A1,
+0xA589C07F, 0xB8201F56, 0xC9D5F5B7, 0x6B02E37A, 0x34DD42D2, 0xCC92E01F, 0x1D9CD2F0, 0x58462E2E,
+0xFD91D8A4, 0x7BD0800D, 0x4E627CE8, 0x02859701, 0xF22B7B71, 0x65BC98DF, 0x317B2108, 0x8358DF2E,
+0x042EDB73, 0x06BA2C46, 0x8E1BC1D7, 0xCEFF6C90, 0x470879EB, 0x0CD1C911, 0x1588071C, 0x78839AF3,
+0x4535BFFC, 0x1B428AE9, 0x528B0718, 0xE1C6F10E, 0x07A2A074, 0x43AD08A7, 0x6310324A, 0xE28A4A2C,
+0x876C6C7B, 0x35551399, 0x435E9DB0, 0x551F8179, 0x3D81E1A5, 0x4FC878F2, 0xC919D73A, 0x2EA6BC4E,
+0xCF18AAD7, 0xF04C382C, 0x255FE6F0, 0x70861F0C, 0x2C1C0F5C, 0xE6B5F83E, 0x9E0A5063, 0xC9F9FC45,
+0xACC7259F, 0xACA78F56, 0x2638915F, 0x575F1FC0, 0x52B79E60, 0x7BD25319, 0x895BE71F, 0x252C505E,
+0x56483710, 0x0FF3C4CB, 0x4F0088E9, 0xBC61D23D, 0x5CC57346, 0xE8552992, 0x02FECD28, 0xD5059423,
+0xE779EA32, 0x42DCF732, 0xE6E5D5B4, 0x8EB2AFE8, 0x77949225, 0x052198E6, 0x0961057D, 0xB1A3DC01,
+0xEB3BA400, 0x6C7E9B98, 0x15BF803B, 0xCF6B0B44, 0x4C4E17DE, 0xA108F72B, 0x84343FF5, 0xFA4CB8DD,
+0xE3C6CD0B, 0x794C355B, 0x2CC34BB2, 0x3F36F403, 0x732F91E1, 0xF70A53D5, 0x0BFF6602, 0x829E3037,
+0x3F9478DE, 0xA908F034, 0xDC9E7A53, 0x5C104992, 0x8C40D9D2, 0x801B3194, 0x4557EFB3, 0xDD1F20D2,
+0xBFE49DCD, 0x619A4A5B, 0xA112EF9F, 0xE3816F55, 0x5CBFB5FF, 0x29453EB0, 0x6943E142, 0x66943ABC,
+0xDAC0ABE3, 0xEE246F81, 0x8C6A3CDC, 0x6EB9B8C0, 0xFE29A1DF, 0x48539447, 0xA359929F, 0x7AA6C88A,
+0xEE047248, 0x66DF81E2, 0x0AB6B694, 0x5E90FB10, 0xFB548E28, 0xA2C88697, 0x2C9684E3, 0x7BE6FC17,
+0xEA1A6B21, 0x58A78993, 0x931E547F, 0x67052623, 0x05A22CB7, 0xBBD4864B, 0x3773A1C9, 0x0F1B242E,
+0xBC18A1B4, 0xE0DC2374, 0x13C4C1EA, 0x8439CC3B, 0xC4095DC5, 0xFFB6D59A, 0x11755D3A, 0x2BD807CB,
+0xB651CDE8, 0x8AC78E70, 0x1A00A983, 0x4DD1C341, 0x9C45F030, 0x5B510AFE, 0x615EDC03, 0x277CE16A,
+0x6714C433, 0xF8679F03, 0x9AE5E849, 0x5540C175, 0xA97F5720, 0x0E667A20, 0x0F39319C, 0x46AA2BBE,
+0xCA20C0B1, 0x42B3309E, 0x716CAC01, 0xF4852F43, 0x24C17856, 0x025B4EDE, 0x68E3EACB, 0xCA280833,
+0x333DF91F, 0xC1EDC2AD, 0x17497161, 0xEE1E25E4, 0x667CD413, 0xEC66048D, 0x17700E1F, 0xD30CA88B,
+0x5B4735C8, 0x4F7ACC0E, 0x357A02B4, 0x01D94137, 0x7E9CE4DA, 0x64E3EAD7, 0xDD31F436, 0xAD309913,
+0x0C8C4675, 0x3A4BDEAA, 0xADD4B74A, 0x3218C506, 0x857CAD47, 0xD28E5AD3, 0xB451B817, 0x5BD41352,
+0x3467F880, 0x486D98BC, 0x848CB1F9, 0xA3D30265, 0xC3231304, 0x3B8A858A, 0x973E95A4, 0x8061B391,
+0x5F42F239, 0x062D68E8, 0x9512A69B, 0xA0A10439, 0xB22C8582, 0xFCF827B9, 0x8C6232FC, 0x0F3FAE94,
+0x6A39A6B6, 0xE34F2190, 0x54512517, 0x5AB8E47B, 0x20E4C919, 0x4578C5F7, 0x697EEBE7, 0xD4B4F129,
+0x2A169A3B, 0x5549F726, 0x95AB98A6, 0x2C9D8B89, 0x10AA5982, 0x4737A3B6, 0x8A97D109, 0xC58DE588,
+0x219BD58A, 0x396C8135, 0x32DE78A1, 0x2402AC07, 0x87B35BEF, 0xB2F4DC72, 0x09C8ED9A, 0x7D0E71E4,
+0x41F314AC, 0xEFAD8FA2, 0xA0566FB6, 0xEFCEC83A, 0x51527434, 0x27837182, 0xFEADE949, 0x7280F7C4,
+0x01EB2834, 0xFBADDA8E, 0xA82C2C6E, 0xB6FCBAB4, 0x7F20ED0F, 0xBFF0702A, 0x6AD47559, 0x662B4738,
+0x2E493F8D, 0xD98BD875, 0x83B2A131, 0xCDDD4653, 0xB9BD38F3, 0x22483903, 0xC9892F75, 0x5C4AAB75,
+0x3BB3395A, 0xA5598221, 0x347F3494, 0x8E7059A0, 0x9B151AF6, 0x6C63FC23, 0x975C38CC, 0x47BB755A,
+0x364832E6, 0x365F6405, 0x5FA7B429, 0xD0A0F2EF, 0x8DD82003, 0xAE52B572, 0x08757601, 0x234D1CB3,
+0x7F9290CE, 0x1435A559, 0x697F3413, 0xF4214BE8, 0x155E120B, 0xD6B03052, 0x054C150F, 0xC39935BF,
+0x9882AE6B, 0xB6546A88, 0x2A19DECD, 0xDD8CC0DF, 0x633573AF, 0xDD47FC37, 0x173A08B4, 0x74D012BA,
+0x6E6BFE41, 0xF7B76A4D, 0x13A07D8E, 0x2CE3F8FC, 0x5EAC7639, 0xB7A8BF2E, 0x7CA9E420, 0xB64AB726,
+0xFBD98EBA, 0x1C3A7EBC, 0xAF9A1745, 0x77ED7A90, 0xE97E80A1, 0xAEA43513, 0x592C4E6F, 0x78F8ED82,
+0x647E5814, 0x1B0E704F, 0xD3A0C518, 0x598015B8, 0x8E2726B7, 0x06881E12, 0xDB7FE774, 0x91CDB6F6,
+0xE9A1863D, 0x1FEA320C, 0xED62ECAE, 0xFBD05B1F, 0x663C3CCF, 0x19884B68, 0x972B6183, 0x2D4FFE1C,
+0x1AEAC764, 0x26DED3A0, 0x943DA580, 0xDF683E97, 0xA71837AF, 0xC5710517, 0x23E2D173, 0xE3E9C54C,
+0xA410EFC5, 0x963C30C4, 0x4CFB2C65, 0xBBBE14E4, 0xB17E789D, 0xB412EA2E, 0x58D7F118, 0xAD521C68,
+0x80195716, 0xF2614A8B, 0xA8943D1C, 0xFE205600, 0x24682A3B, 0x6EEB51DD, 0x99F9C5E1, 0x8500A62E,
+0xA86B4709, 0xC7B3F911, 0xD4979203, 0xEB77576C, 0x5A672642, 0x07DC4550, 0xDAEB5145, 0x450F6116,
+0x9E18573A, 0xD05E93A8, 0x1B9F9B0A, 0x1C341F18, 0x514633F6, 0x81526053, 0x57C35021, 0xBD5C1801,
+0x945C05FB, 0xB071F7F4, 0xDB38686F, 0x788E7971, 0xF860319C, 0x606A0245, 0x53B06548, 0x932E7F26,
+0x03C0F7CD, 0xE681D251, 0xF6554D09, 0xC437C167, 0xC9E0232A, 0x5B149980, 0xF583CD92, 0x5AAA438A,
+0x2B37E226, 0x5C27B092, 0x41A4B95B, 0x131FF73D, 0xA1A435F2, 0xACF50292, 0x8D7F9E9B, 0x95AE4F72,
+0x49C927C6, 0x0EC47F60, 0x8C76E842, 0x38EA34D5, 0xE4D26D52, 0xE684C073, 0x7BA29A99, 0x58C5083B,
+0x39756ACB, 0xBC877B64, 0x0470B76D, 0x1C56020E, 0x39384DAF, 0x2E595FB5, 0xF8DB99D1, 0x95DDDA4A,
+0x2E5D49B5, 0xCB8D422B, 0x36D732A1, 0x013E16C2, 0xA1622964, 0x41F7BA56, 0xBDA235FE, 0xA5F8178A,
+0x0E9F9CDB, 0x3A67AA77, 0x3483163E, 0xEBC66115, 0xFB7B96A9, 0xB452D10D, 0x70B0DA95, 0xFF384E11,
+0xD9422243, 0xB50EC5D5, 0xFA039C62, 0xBFCBD9D2, 0x5C895929, 0xC33DC719, 0x494A9648, 0x3113BAC7,
+0x03BF55A5, 0x623E9491, 0x23D36488, 0xAC26A420, 0x158B2374, 0x1912E2AB, 0xD37B6DE0, 0xC5074EFE,
+0x6DFC6C87, 0x4FB19AA5, 0x1031D896, 0x3B031787, 0x9F580BE0, 0xB43AE757, 0xA413AD0C, 0x0F51FBD6,
+0x7FEB632C, 0x8B8AF215, 0xC7173E2B, 0x33651DDC, 0xC49E19CA, 0x8D1CE05B, 0x296596FC, 0x231E0E9B,
+0xC5D7953E, 0x91B5A814, 0x77FB7165, 0xC2B7C00B, 0x455F9C5D, 0x10E999B3, 0xCA539A1D, 0x9B37A77C,
+0xB471D787, 0x9758261B, 0xEF7857FD, 0x66D7156A, 0x88AD29C6, 0x6772724E, 0x68D49601, 0x1EA2CB86,
+0x7D088743, 0xB07E1CB6, 0x38C6C629, 0xDC538D82, 0x6347BAD5, 0x365F0F73, 0xAC2F180B, 0xF79DF103,
+0x6EC7A4BC, 0x4A2E445D, 0xCB080901, 0x98192E2E, 0x9FE6FBCC, 0x247BD022, 0x8FC7929B, 0xC2CE8758,
+0x1F2E03F9, 0x3F993F5F, 0xA8C0B8FC, 0x4D940F4F, 0xAE071A1B, 0xD9DCE611, 0x59553FF9, 0x735C7F42,
+0x9B9BC7B4, 0xFD71A970, 0x22BA58A2, 0x323EDA46, 0x59FB1A41, 0x6B140763, 0xF7012DE1, 0x3B58545A,
+0x0034E73E, 0x0719C8A8, 0xD76D094F, 0x6B65A7BB, 0xCC9BF7A6, 0xC024E57B, 0x0B1EBA5A, 0xC09986F6,
+0x23B92D66, 0x2EC461EE, 0x2C5F9508, 0x47420C22, 0xF0B8E009, 0x6EAEDF4B, 0xD96C5D93, 0x0F82483F,
+0x2B272241, 0x41AC8C27, 0xD9B37620, 0xB74ACCAE, 0xB259C8C4, 0xB694BEF0, 0x2972EE7A, 0xFAA5662E,
+0x2D0FAB9C, 0xC1804682, 0xA5A7E8C7, 0xE214BBF0, 0x48BCC4CA, 0x7632E6A1, 0xF63D6838, 0x5DA191B4,
+0x39A70AFE, 0x05000310, 0xE32F188B, 0x0E5E8EF4, 0xAAA2743B, 0xB673DBB8, 0x7BB9B95E, 0xEBA2B514,
+0x358344B3, 0xC2C89896, 0x2850E0F8, 0x02E58071, 0x04F67E36, 0x6601D2E1, 0x6F807A57, 0xD1E30B7E,
+0xB8C1BD7C, 0x969FEA75, 0x4A2E830B, 0x0BB3D790, 0xD951ACD2, 0x57C008AA, 0x9A8E9971, 0x5BA49CC7,
+0xDEC8C9AA, 0xABD149FE, 0xE669CEDB, 0xA726FBAB, 0xFA2FDB32, 0xD88A9D73, 0xD9B876A6, 0xEB1A81B2,
+0xBDF0655A, 0xF6B387B8, 0xDDF3E27E, 0x5D3E097F, 0xCE119998, 0xC01F9C9E, 0x5CB18EFD, 0xFEECE0F9,
+0x54C36BBD, 0x4489D42D, 0x9E3A6044, 0x16520E26, 0x52C7D16F, 0xE86814FC, 0xC3D8282B, 0x9BFC4752,
+0x2E5CC391, 0xDC223206, 0xBCF216B3, 0x71CCCF87, 0x515A80D1, 0x6EBCE173, 0xFD247D08, 0x6AEAE34C,
+0xB6A7C2B5, 0x600AC4AC, 0x3AB7CA85, 0x5ACD5B70, 0x184CD7E3, 0xDBB50719, 0x850342F1, 0xA99544FC,
+0x8EEFA246, 0x97EC993B, 0x3CE02984, 0x9C5DBA3D, 0x56270860, 0x1648C4EE, 0xA7798859, 0xDA58C622,
+0xB5693E2F, 0xD88D3E86, 0x871BBCCA, 0xB32B489A, 0x707EAC7B, 0xA430958B, 0x2210BF89, 0x04C1D44E,
+0x7F7FCA18, 0x74549B3A, 0xC2ED8C55, 0x6C44342D, 0x09E27D64, 0x02513414, 0x52265C9A, 0x17147666,
+0xAEB4CFA1, 0xE779D241, 0x5C89E3A5, 0x4101FE9F, 0x4C9A8C3D, 0x6FC70A87, 0x1BAEBD91, 0x9498C28E,
+0x3CA23DD8, 0xF16D850C, 0x022377C1, 0x698CA7C5, 0x7DD00D68, 0xB1D193C8, 0xFA9D4B6C, 0xE494E5FD,
+0x8E0843F7, 0xCA809FDB, 0x1C397698, 0x2EE9348B, 0x38D1BF6F, 0x642481AD, 0x08305919, 0xDDC1DCCA,
+0x9BCA9C0C, 0x544545E4, 0x798C2A36, 0x2192C3FC, 0xF62B972F, 0x2A52DEF5, 0x68898C03, 0xFEF2C5B2,
+0x8806D30E, 0x9CB13089, 0xD4B5087B, 0x00C52974, 0x4C3C074B, 0xC1C8D81C, 0x23A9432D, 0x332A954A,
+0x3C67AD93, 0x4790994B, 0xAD7C846A, 0xE0CC896A, 0xE12AE19B, 0x114863C0, 0xFEBD54E2, 0x742226F9,
+0xB5EE8CF3, 0x45081B60, 0x2874843C, 0x355C3FC0, 0xFCB20E7C, 0x13532DE9, 0x39207B87, 0x3A7D1DBB,
+0xB99BAF3E, 0xEA7126A5, 0x44F41926, 0x650ED605, 0xBD72A122, 0x3FFDAF1E, 0x74E00BC4, 0x68B26E1B,
+0x4FA2C512, 0x15F82BE4, 0x9B7E2761, 0xD695290C, 0x9D0AFC46, 0x02228986, 0xCE23F6A7, 0x1C7D0E27,
+0xE6F2EAFC, 0x41384B85, 0xA7036F39, 0x9D7D0E17, 0x43D68CC9, 0x25F57817, 0x95AE4F9F, 0x3116A9D0,
+0x2B0723ED, 0xD98A6C0F, 0x58D3CA9E, 0xD0C932AF, 0x46C8DEFB, 0xE7DFFC14, 0x3F676879, 0x8DB7619F,
+0x426B79B8, 0xDFB9BA0F, 0xF565F8D6, 0x975AB07D, 0xF46B8224, 0x3875AA18, 0xBBCB24D3, 0x133FB903,
+0xFE71118E, 0x3A1B69E2, 0xF8507B8E, 0x979B437F, 0x8C07BC97, 0x5646CFA3, 0x2849FA1A, 0xF396AF1D,
+0xDFE8712E, 0xC64A7807, 0x62A6FADB, 0xA858AFF7, 0x584F0407, 0xDC8C3D47, 0xC86FD388, 0x129BAEB3,
+0xF6B9E721, 0xCAE6CE83, 0x718362DB, 0x399CB88F, 0x9DEB15D9, 0xAA79858D, 0xA474262E, 0xDABC09AE,
+0x2B6708F3, 0x560A6E6F, 0x206462D7, 0xCD657694, 0xDF9F8025, 0xE3DEABF9, 0x5A093265, 0x2D261B92,
+0xD71BF647, 0x09BAD554, 0x4C948C09, 0x36119FE5, 0x0F9FE171, 0xFEF21B09, 0x3A96D491, 0xAD299F27,
+0xE82C770C, 0x383AD14F, 0xF86CDA7E, 0xB0FB1834, 0xDF47711D, 0x85728D5C, 0x490A433E, 0x61E6F387,
+0xC31696AB, 0x0E6559A3, 0x8151782C, 0x89AF8A87, 0xBF4E0AAA, 0xA813E027, 0x42663B90, 0xEA3496AD,
+0x8C74689E, 0x9AD1992B, 0xA5DF118F, 0x8A8A495A, 0x9E379F08, 0x38F45615, 0x2CA44851, 0x672BDF53,
+0x293B1915, 0x8BA09562, 0x99E06B05, 0xB24E5B80, 0xAB2B5D90, 0x00AF2B1B, 0x97D77A36, 0x8E9E8BB3,
+0x4921FC0E, 0xCD4AC73E, 0x77661F34, 0xC1E5F623, 0x16169B26, 0x97B3F735, 0xB05BAD69, 0xE08C31A4,
+0x56D76FA7, 0xA4BD82A0, 0xE2183360, 0x407EC429, 0x5830DBDC, 0x93DE1E92, 0x7AF18B0C, 0x0E0C1D98,
+0xEC321763, 0x525DBD90, 0x54574823, 0x0FDCD6AA, 0x08FC1242, 0xB76A7C0D, 0x6449E5E8, 0xE9685706,
+0x4D383391, 0xADD86B08, 0xDF81F31D, 0x1C560FB4, 0x436D2224, 0x57B5AE06, 0x875EDA6C, 0x48958911,
+0xC58AF352, 0x3C60483A, 0x251A570B, 0x21AECF8F, 0x52469034, 0x1FD60D41, 0xAF14A324, 0x4B48385A,
+0x75CC622F, 0xEA4176C9, 0xFAE47230, 0x32AFF67D, 0xFCF0ACDF, 0xC59686C9, 0x1EA7526F, 0x0F97772F,
+0x887F73E2, 0x4EAD0A61, 0x8FA6E4C7, 0x3A4D9DC7, 0xF3699141, 0xAA7D7C98, 0xCF698F49, 0x8881538E,
+0x5C55E269, 0xAAA39365, 0x84BDA84E, 0x872A04EA, 0xA0E742D6, 0x3B38DF74, 0x756DDB4D, 0x643E8C6A,
+0xD2835F37, 0x8E213E95, 0x0D3F15C3, 0x98273CB1, 0x1E2E5B7D, 0xE3381F6C, 0x5BB7124C, 0xB90C85D1,
+0x151A5D98, 0x9660F2C5, 0xBB43DE82, 0x04F78291, 0x623D9AB4, 0x7BE3A126, 0x142CD08F, 0xBC337E82,
+0x2F585C01, 0x7A632B10, 0x2A12B371, 0xFBCB3B2D, 0x4933B64A, 0xD35B245B, 0x8E6731C1, 0x8031BE25,
+0x3A1F7D84, 0x9DB7ADF4, 0xA4F7FE39, 0x3AEAADAB, 0x7DADDDDA, 0xD410D072, 0x2D83C2E1, 0x66F72AED,
+0x853B77B4, 0x6F645C3F, 0x56888789, 0x2D84841A, 0xA77DFB45, 0xA9B96A16, 0x8A7212CB, 0x045F4638,
+0x7F8C8210, 0xEA1EE979, 0x2CC9478C, 0x10B5F317, 0xA0643760, 0x8EED494D, 0x3AB97279, 0xEE241B72,
+0x2D9A8CC0, 0x237A50C4, 0x28AE634B, 0xC4416BFC, 0xCF2B1E3C, 0xE5EA68A7, 0x11BD9E1B, 0xE3A43958,
+0x38B3C304, 0x50D412C9, 0x34DB42F2, 0x6BF2A826, 0x738E8D16, 0x6B6E30B2, 0x0355A2E7, 0xF8C557E3,
+0x1A977240, 0x48839704, 0x44B5C2F7, 0x230F3DE2, 0xDFF556C9, 0xE140F92A, 0x30789BC4, 0x278327E7,
+0x50BFDC25, 0x975C464D, 0xD9D96278, 0x9736528C, 0xD3405400, 0x220AC407, 0xE2BA8DFA, 0x672EC917,
+0xF7E5FF0C, 0xEC791230, 0x6072ED76, 0x0031C91F, 0x69BBB13C, 0x2241B502, 0x9DCF3442, 0x41FE9F43,
+0xDB3E11C6, 0x28D7F0F1, 0x5920143C, 0x417540F3, 0xF6047617, 0xA4D943F9, 0x53B77E84, 0x5E2C51BB,
+0xF53A0107, 0x2DD4B17E, 0xC4CF0BE9, 0xF1A84F7F, 0xE8109CB1, 0xBE6E1FEE, 0xE96849F0, 0x47CE263D,
+0x527F2AFE, 0x8AEBF67D, 0x20CF9BD4, 0x46B3FB0F, 0x2FC98916, 0x5BD0E8D4, 0x3F02CCCD, 0x66AFE2C1,
+0x2EE95E74, 0x0E4E373E, 0x9B8F6286, 0x5D4DB6E6, 0x08D0A5C3, 0x3B0C4B62, 0xE1EF416B, 0x53ED220E,
+0x9D44C359, 0x8ABAF47A, 0xC666FFAC, 0xEA683B18, 0xF4AAEA99, 0x78F13439, 0xFFAD38A7, 0xA12866B8,
+0x82775A81, 0x4C133569, 0x74C6CA5D, 0x7F01DAA4, 0xC48CCD19, 0x08A57638, 0x6598193E, 0x91A32E36,
+0xF404AC0E, 0xF2C1117E, 0xD2B6FD6B, 0x2D133DEC, 0x331C91D3, 0x388266BB, 0x0527508D, 0xEAD13356,
+0xCC247FFE, 0x04B3DCBA, 0xF95D21EC, 0x0FF2BE41, 0x3AACF29D, 0xE2EAF43F, 0x9D9F7FA7, 0x319ACAB2,
+0x31D08C31, 0xDECEC55F, 0x9C335D83, 0x909B9149, 0x598EBA9F, 0xA4F0C8C5, 0xFEF4C928, 0xFA6C9760,
+0x65E3BA4C, 0xE333AB00, 0xB69D636E, 0xF1D3F045, 0xEB14DC8A, 0xF082D812, 0xE6F3A822, 0x6DDFC3DA,
+0x1E02C6B9, 0xB9016798, 0xB53AC837, 0x36952B8B, 0xD3A1B742, 0xC9CD66DD, 0x9527CAEC, 0x6CDD71C2,
+0xC053887F, 0x94262A49, 0xF72E309D, 0x320D7F93, 0xB62D7F57, 0x87C178B8, 0x04EA256D, 0xB31D7BED,
+0xFE02FFA7, 0x3A82903A, 0x4B337846, 0xECE646B8, 0x101BB18F, 0xD6AEA545, 0x89AA765B, 0x8110DB0C,
+0x06D29320, 0x0464992F, 0x0DEE98A8, 0x54B01C29, 0x2C8FE82E, 0x07E0629A, 0x6C749319, 0xFF30C210,
+0xA94CA503, 0xB6B6A243, 0xE0D9919A, 0x001BEF48, 0x81343D7F, 0x260A3529, 0xA3996744, 0x57B59960,
+0x42660CD7, 0x43E4156F, 0x6295F74E, 0x511AD885, 0xD10678D6, 0x8B4D61F4, 0xD221773E, 0xD8684B3F,
+0x6E6B9001, 0xAD4D8E53, 0x612AC125, 0x0C660159, 0x03C9F921, 0x1C1FF870, 0xF3B24BBB, 0x21A1AFF7,
+0x194690E1, 0x23A23C19, 0xE7D3C66E, 0x80804F94, 0x123FC0F6, 0x48BCA1E0, 0xCCE562B7, 0x3E843F73,
+0xA82E9DB2, 0x05B85007, 0xEBE2BF97, 0xF6C63F0E, 0x85FA78E7, 0x6DE9CE10, 0x027DFFB2, 0xAB2E9602,
+0xD1A472C2, 0xA38C6EAA, 0xA006DEE8, 0x7ED14721, 0xCD5ACE89, 0x3F2A0A60, 0x820E2C17, 0xF92E64D8,
+0xD5D9ED74, 0x673A377E, 0x41DE4B18, 0xC6A824BB, 0x3C03A855, 0x8932C1FB, 0xB206DBC2, 0x08C3B1FE,
+0x5BFF263D, 0x578A9771, 0x18068478, 0x87647560, 0x6027E0F8, 0x5A04D1A6, 0x886AC3EF, 0x7FC7B373,
+0x3EA1C703, 0xD507CB85, 0x19FF3F25, 0x77BCA6B6, 0xCF14F0BD, 0x8209DFD3, 0x182E2A45, 0xEBF49229,
+0x70BB7D9D, 0x365FB246, 0x796400A9, 0xFF272019, 0x519A2904, 0x3BE763CF, 0x3CBC9AD8, 0xDEDDBDA7,
+0xF9966BBE, 0xCC437735, 0x028537C9, 0xBEF289EA, 0x98ED0F45, 0x46A1B793, 0x48C15CD1, 0x2CBACA6F,
+0xE1D6E6D0, 0xD9B0814A, 0xA4673D23, 0xC5569364, 0x7F5A8214, 0x002A527E, 0x61C7C7B1, 0xFDCBC4C6,
+0xF7D61ED9, 0xE28A8BB3, 0x7E3116F3, 0x6DA636A0, 0x9D766CAD, 0x5B873EAB, 0x92BF0DE7, 0x5DA3A0DC,
+0xED0186CD, 0xB09E462F, 0xED87EBA0, 0x2F0AC9F4, 0x2E540EEA, 0x200F06A7, 0xCA515E4B, 0x3EAF8E36,
+0xE5C56B2C, 0x8B2808DA, 0xA7BC3E15, 0x909E1522, 0xBB60DBA2, 0x088AD314, 0x8A086A66, 0x6F17553C,
+0x422DAE74, 0x1BF992EE, 0x20941811, 0xBD6CE96E, 0x21872F08, 0x58569DCC, 0xB552ED2F, 0x7A48DE34,
+0x97249902, 0x2EAE6B17, 0xBCA4013C, 0x5F0601B3, 0x6E567A2F, 0x488F24D4, 0x6D357A64, 0xF70996B7,
+0xAC4CB1E9, 0x8C3E372C, 0x5D8BB6AD, 0x23EE338E, 0x90B88736, 0x71E6DC8C, 0xC03C07B2, 0x3EDB0C7C,
+0x0968210B, 0xB3146D6B, 0x1FFAC6CD, 0x1D795C83, 0xDC7C9029, 0x7BA007F0, 0xDD833414, 0x976A5736,
+0xF4C9B276, 0xD654E2FD, 0x3C82868C, 0x9C52BC78, 0x2C177DC7, 0xEFB4879D, 0x6E9C1C92, 0x7AC028A2,
+0xE6ABC0B4, 0x69198DE8, 0xE91CDAA7, 0xC470A34E, 0x1DB6E635, 0xB12DD1D2, 0xC4D41721, 0x9E7247C6,
+0xFE812E48, 0xF9C3B5EC, 0xFD3E9A49, 0xC23F3E82, 0x1B6E3103, 0x5718C931, 0x5F895A3B, 0x73B65C14,
+0xACE14260, 0x785F72A9, 0xA2944A06, 0xA09DFCAB, 0xF66642F2, 0x6F5AB576, 0x63649C7E, 0x6DFBC977,
+0xF20A7C97, 0xD5E7B8BD, 0xD290530C, 0x103F411A, 0x850B0E41, 0xD478B7DF, 0x1BA188C5, 0x6F62847C,
+0x3ECB2759, 0xFB4E24C0, 0x675B6DE4, 0xD3A67357, 0x515AEC61, 0x370B99FE, 0x7654EBE5, 0x593C7A8C,
+0xF3D3EF5C, 0xEF898B99, 0xD2982E95, 0xE486721C, 0x5A42D45F, 0x9D89866E, 0x3DFBCF0E, 0x42A27144,
+0x9BBD23DB, 0x8E7053F3, 0x2A4C147A, 0xA9D98F19, 0x3323117E, 0x405593F7, 0x5E841EF5, 0x62DB2176,
+0x5513D5BF, 0xA31ECE18, 0x7C00D617, 0xF702DE77, 0x4CA121BD, 0x19E12F0D, 0xFDB62A34, 0xE5CE0CEB,
+0xA2295B9E, 0x4B5AF37B, 0x3681592F, 0xB32199DA, 0xBAC2404C, 0xFF878B85, 0x30243D8F, 0xA7BC2243,
+0xABC10B20, 0x6CCAAA96, 0x2A5FD02D, 0x03665A03, 0x40161F02, 0x7CB6E01C, 0x9BAA314A, 0xB9107F18,
+0x63C89C8D, 0xB4B289D9, 0x2EDDDD6F, 0x93C66E7A, 0x6DC4050A, 0xC861316C, 0x6C654D18, 0x6A8489E5,
+0xC2FB1A4C, 0xB688C22B, 0x57A73A82, 0x92CD9DAC, 0xA45C451E, 0x7A91A0A8, 0x404B9048, 0xD2B837B2,
+0xE21AE12F, 0x691F709C, 0x62A0C8D6, 0x47AD0FD3, 0xB57B902E, 0x27A9F126, 0x9AE8AEAC, 0x285AE395,
+0x46794F00, 0x2897B1D3, 0x239D7D92, 0x76117857, 0x41D5F2C3, 0x58E6639D, 0x75A4D5E5, 0x4B5B9BFC,
+0x1BDCCD42, 0xF593E9A2, 0x2B5F4E18, 0x96126B17, 0x9DF7C3DB, 0xCF2FE0B1, 0xD2F22B67, 0x40B215D8,
+0xB5AB779A, 0xEBEE4497, 0xE05AC4C6, 0x31C771F0, 0xA62F9DAC, 0x2B396BB1, 0xE78E4E00, 0x7034B53B,
+0xE5F716EC, 0xADBC8F54, 0x63383BBA, 0x5313A00D, 0xBC4D3E32, 0xC6A15CF8, 0x3C996E91, 0xC8161D2B,
+0x2493F94C, 0x0843D489, 0x62D8AC2E, 0x42094551, 0x208071A5, 0xA59CCC3E, 0x57EB4BF2, 0x853235F9,
+0x7E5FE76E, 0xB1553809, 0x8B8FC206, 0x134BDB93, 0x7EEFA54A, 0x203703D7, 0x3B8023BB, 0x430FD591,
+0xEB15DFDE, 0xFEA68D55, 0x68A5FA90, 0xAF6EDA0A, 0x503BABEA, 0xBAFB091D, 0x10C5AE1A, 0xFA14A7F4,
+0x16B4D950, 0x21FCCCC3, 0x9451584E, 0xA23E91AB, 0xAD03E5B5, 0x680B1F7A, 0x9D26A46D, 0xE5328E39,
+0x5187455F, 0xAA88645D, 0x068E6220, 0x33A8E22F, 0xDF2E68E8, 0xDD20341B, 0x9DAD1CCA, 0xC50B7A5A,
+0x8BFC5A6A, 0x7FBB506D, 0x18CFA426, 0xFCE62786, 0x1CF4E5E0, 0x8C6A1C3B, 0xA71CC78B, 0x392E34DB,
+0xAD28320C, 0x5D37D08D, 0xD67AD492, 0x7A7A2123, 0x169AE604, 0xA265CEDF, 0xFB6C7B20, 0x654FA2C1,
+0x29B18A39, 0xF13C9956, 0x145B330B, 0x383BFF37, 0x52FC1B8D, 0x27C37B8D, 0x01EBA75A, 0xEFD8CFDC,
+0x1176B51C, 0x0A554770, 0xBC784937, 0x0C8C02D5, 0x3724BA2B, 0x8544F095, 0x073E9938, 0x83307038,
+0xE8AB0117, 0x115A8F94, 0x14539D71, 0xB0B335A3, 0x1555BBAE, 0x58FEC369, 0xA04D3A19, 0x8B906111,
+0xFAE5A89C, 0xF052CA1E, 0x24FD99AD, 0x06E306C7, 0x6B9C015C, 0xA2132315, 0x30576BDF, 0xF813D69C,
+0x70492ABE, 0xCDC46F06, 0x2E1F4D1E, 0xB6D2051C, 0xE99D870E, 0xA19B0004, 0x4F51FC41, 0x567D7DA0,
+0xE733DD61, 0x2DA2AD5B, 0x14F9191F, 0xC1E2BB4A, 0x84DDAF86, 0x55A2AC1B, 0xDEB8B114, 0xF04B0656,
+0xAEE012BD, 0x966D0938, 0x0004DA55, 0x0B882390, 0x20D7CF8C, 0x0836025E, 0x7F1C3F00, 0x928CC8F7,
+0x18571C06, 0x93E2CF4A, 0xD47BD1E0, 0xCA230FD4, 0x16CBA942, 0xF093CF09, 0x82ECC655, 0x5CE36970,
+0x5F0C3A7B, 0xDC6D6C40, 0x68C237FE, 0x70169B0A, 0x4957589F, 0x67964F2B, 0x3FB739A0, 0x0A9358CA,
+0xC2449878, 0xE26B4C7E, 0x1254F3CD, 0xD48C190C, 0x2042CFF7, 0x686F6523, 0x5B360619, 0x5C5B0962,
+0x521FD53C, 0x7F9169E6, 0x00231475, 0x2F78A1D8, 0x75225F1E, 0x090559FD, 0xAD4F500D, 0xF60325A3,
+0x8980B199, 0x7658AD26, 0x827DF8C2, 0xC1EB728C, 0xC13EAA88, 0x96FBAF7F, 0x6FCF40F7, 0x919CEBE3,
+0x5F4B538A, 0xBFE9D695, 0xF6981580, 0x0EA1D79E, 0x6AFED9C6, 0x98FC308A, 0x4DEDB59D, 0x579FC686,
+0xEEB46592, 0x17DB7FC7, 0x5F2605EC, 0x995AC16B, 0x91F40F05, 0xAEF78243, 0x22210D3B, 0x987495A7,
+0x962D9A0A, 0xFAB508EF, 0x3DC21449, 0x83C57212, 0x743B36C5, 0x428D28FE, 0x5219797D, 0x90C42F8F,
+0xEF33F020, 0xB3DD18CD, 0x29C5FDC3, 0xDC55DB9B, 0xE2E7B5E2, 0x0616A953, 0xA1E989AE, 0x49E5A13E,
+0x6B013BF6, 0x66B96C45, 0x2539408C, 0xDBA8F230, 0x692C802D, 0xEA6CD642, 0xAB063198, 0x5B591BCA,
+0xBD53862A, 0xF0B4662E, 0x7529A7EC, 0x0481C385, 0x1E8523DF, 0xAD335057, 0x385DCAF1, 0x2D1D5BAC,
+0x27E63904, 0xEF6B93B4, 0xD1EAB868, 0xDC2016B8, 0xCB7D3628, 0xB2AC8318, 0xFEDCA802, 0x589FBAD0,
+0x716669FD, 0x55EBECB7, 0x0DF001BD, 0x27FCE18D, 0x36B54143, 0xE2D9FC04, 0x0856E3E2, 0xFA6AF3FB,
+0x8BD26F13, 0xB5D44FE1, 0x129E8146, 0x17D97EA9, 0x79B1A00C, 0x12AE299A, 0x4A9BDEA2, 0xEB945E89,
+0xD8A0BACF, 0x164A8D00, 0xD8EDF7FA, 0x7BBB59A3, 0xE1633F63, 0x17B114A7, 0xA9B0C392, 0xBC41E487,
+0x43C2B779, 0x6BB3CF28, 0xBED2EC65, 0x37E2C413, 0x7C09A2B4, 0x6D24AD35, 0x7FBC8D7E, 0x9FEAB926,
+0xF4282E91, 0xD8F5A389, 0x7789FECF, 0x7664F7F2, 0xAF14C86B, 0xE2823995, 0xC3CC77DC, 0x71D49838,
+0xB172BF6B, 0x94E7860D, 0x908E7DD8, 0xDB526B1D, 0xD90BDBEA, 0xFC52555C, 0xD5856D66, 0x40C7A640,
+0xEC864C25, 0x12F9A0A5, 0xB5A92881, 0xB78DB70F, 0x83B2BA91, 0x365E404C, 0xA88A9332, 0x6BA51BD0,
+0x2203F198, 0xEF7F2107, 0x1B9A32C4, 0xF0CCFF6B, 0x3BA51BEB, 0x24DCF2B1, 0xEFE609E8, 0xAA401EB7,
+0xAB481311, 0x8186685A, 0xD9BA410A, 0x8DB98564, 0x63827AD2, 0x287858E3, 0x570B06FA, 0x82239007,
+0xD5384F62, 0x701AF6F7, 0xB5031952, 0x1763FE94, 0xEF4BFC6B, 0xBE8B202B, 0xA2D5F45F, 0xF5E7214C,
+0x5794C83F, 0x0B748266, 0x5F2E202D, 0xCDC98525, 0x7ADB30C9, 0xA0B1774D, 0xD2F6ED82, 0x5AD5A5A8,
+0x7E2B598A, 0x53A6D4BA, 0xCFAF796C, 0xD41D18CB, 0x46F47777, 0x1420A6D3, 0xCB302F90, 0x0828FC3B,
+0x48CB0ABA, 0xAA12A582, 0xDB65A13D, 0xE3DEB0A3, 0xD49D67FD, 0x0F3D5240, 0xCC5FD98B, 0x78147D46,
+0x24ADC6CB, 0x5C42D923, 0x8A63789D, 0x58E26CE0, 0x7E1C7FE6, 0x5304B534, 0x0ECA1571, 0x6C47B58B,
+0x318D0A35, 0xA2C6BCAC, 0x8F980517, 0xD914F566, 0xC3064B86, 0x3D7573CA, 0xC751685B, 0x4BD28F0F,
+0x7DFC7F3F, 0xBF0A7E76, 0x7F402E4A, 0x33CC4D44, 0x67D840DF, 0x0A566922, 0xA80D7301, 0xBA34A4A3,
+0x48C00BCB, 0x1896AC7D, 0xA325D9D2, 0x6290AD72, 0x521C049B, 0x483D428A, 0x69B6224E, 0x5A78E2F0,
+0xDCBEAA21, 0xA91C1627, 0x91F39E76, 0xA262B20A, 0xED634CC7, 0xCD34EC73, 0xE5B89F58, 0x294D6A04,
+0xB62DD283, 0xF51EA7AF, 0x7EC60CAA, 0x89FF4F63, 0x558B1B93, 0x30B1DEFD, 0x4DC033C8, 0x36912616,
+0xC1DA3CC7, 0xAF5E5269, 0x98671E82, 0xE43BA317, 0x333CF29E, 0x23FA49B9, 0xD3DFC827, 0xE801CA46,
+0x89956707, 0x598EE258, 0xCAF43C0F, 0x48745BE6, 0x0B2E495E, 0xC49B4667, 0x6F8C319B, 0x20A896F7,
+0x3653215F, 0x883CC000, 0xCA140795, 0x3FA4D086, 0x5A414E2A, 0x76A860E4, 0x894004B4, 0x87F8030A,
+0xD5F691B8, 0xBFCFFC86, 0xC4663126, 0x1DDE3CB3, 0xF8BE3E2D, 0xBDCF7D7B, 0x04A003CA, 0x3770D989,
+0x86D072F0, 0x0A7617FE, 0x04E444C2, 0xCFAE896D, 0x97327388, 0xCAEC6FF8, 0x842516B9, 0x0637882E,
+0x5A05DF63, 0xF9DA66DE, 0xB21148E5, 0xD3F29B12, 0x9D81A7C9, 0xBE6F582E, 0xAFBA0184, 0xF1938446,
+0x4487438F, 0xA40259A7, 0xF63A9C8A, 0xDB30F229, 0x3CE1F3F0, 0xDD2D2498, 0x477A2FE0, 0xAE0C3D84,
+0x858C1970, 0xC864C887, 0x09621CA9, 0x186C938A, 0xED2B809E, 0xC9890DA6, 0x70D283C5, 0x9D168C70,
+0xE5533A81, 0xCE8F3805, 0x5393EDAC, 0x0F4747E5, 0xFDCD5EFA, 0xF70098CA, 0xEF013BC3, 0x78FFC9CB,
+0xCE83567D, 0xEAAC055D, 0x7BBCD7B6, 0xD6A1CFAB, 0x5E9D90B7, 0x4576C1DF, 0x3C70E753, 0x6C93879B,
+0x23B405A7, 0xE4184EB7, 0x9674EB58, 0x4ADBAA3B, 0x9E6EDAD2, 0x96821BA4, 0x8539C38F, 0x3009F4E1,
+0x0458F94B, 0xB70F6C2D, 0xE66A4CC2, 0x0B6C664C, 0x02FC1963, 0xD5D86373, 0x8977B43F, 0xBBCBA1B3,
+0x72CFDB66, 0x1DE58E76, 0xE1099C57, 0xD52C163A, 0x06D65FB2, 0x8AEB1F15, 0xDAA80659, 0xB85E9A03,
+0xC2E7F367, 0x9BECCADC, 0x10903E02, 0x727C18F4, 0xB8A48379, 0x49D46D9F, 0x5541EA05, 0xAED07F3A,
+0xDE9436A9, 0xE56A36BA, 0xAF7302F4, 0xB92B0B9B, 0xB6396AF6, 0xA03579A0, 0x22208342, 0x8CB99895,
+0xD5EF5CB0, 0x10B42C07, 0x5020E1AF, 0x4CBFFEBE, 0x5D1CE1A3, 0x376FAFAE, 0xBED46C3E, 0x5FDCEF4A,
+0x179E279D, 0xDF508F9E, 0x0953B846, 0x8EAFE8C1, 0xC1647804, 0x9753665C, 0x7E47FEB8, 0xFD95AA69,
+0xC6F4DD10, 0x62B7EB59, 0xF534B7F6, 0x38F1156E, 0xF77F4916, 0x43F531F9, 0xD20A653E, 0xA147C8E6,
+0x7A46F7F1, 0x3A069D9B, 0x1008CC7E, 0x8CCCBED0, 0xD3900885, 0x4B3F926C, 0x93C25C0B, 0x8415E4FB,
+0x0A317184, 0xC68D8673, 0x43076B19, 0xBD608F32, 0x7A5D387E, 0x2110BDE5, 0x3054034F, 0x427CBCC5,
+0x7D4DF0A7, 0x848C3A3C, 0xA6A4FC80, 0x3ACB391E, 0x182C4990, 0x1FB001CF, 0xDFF2850C, 0xCE2FF475,
+0xB8498ECA, 0xC67238CA, 0x08F8BC35, 0xF19D9B2E, 0x4328EC91, 0xED9A6C36, 0xAF96E69C, 0x96E7F5A2,
+0xAB4D6783, 0x903348AB, 0x8439AE25, 0xA70D1AAC, 0xBBF75368, 0x8F4B0286, 0x0FA9861F, 0x46A47328,
+0x29EA50B9, 0x97D4AB9A, 0x9A62A0CB, 0xBF356048, 0xFA0A3BE5, 0x2DD97524, 0x56BA32CB, 0x82CECE76,
+0xF28E0831, 0xB834D4DC, 0x412FB271, 0x452A9986, 0xBBA3404D, 0x3697D88B, 0x4FD31603, 0x9898BE34,
+0x0BF50B87, 0xB71FD3E1, 0x4DE4CDFB, 0x5FBE64FF, 0x37062223, 0x0497D237, 0xC07F1756, 0x1749FE3B,
+0xDF16851C, 0x2F8299E1, 0x42580BD5, 0x1ED044D8, 0xD2685C96, 0xB03E030F, 0xEC1EC5C7, 0x61EB8532,
+0xDCD27E91, 0x045CF8DB, 0x13F936AE, 0x98D5BB31, 0x408C6A2F, 0x49787AC9, 0x161F3356, 0xE16B37B2,
+0x4A02BC7B, 0x42484702, 0x240B9C13, 0x6C00D307, 0x7B67CFF1, 0x2FF05572, 0x787813C4, 0xA745CF18,
+0x2C9C978A, 0x6662F3AF, 0xDC86A938, 0x06CE4567, 0xEEE1BB27, 0xE7455464, 0x5EB701E5, 0x6DC61C3E,
+0x2464040D, 0x16B64AB7, 0xD88880EC, 0x06BAB2A3, 0x1E8E377A, 0x43127A6A, 0xFAA3C6FA, 0x824C8551,
+0x36744C50, 0x70C350DA, 0x5D8C4DA2, 0x7A106CCF, 0xF7F694B4, 0xCE4BEC71, 0x9491DEAD, 0xC6E26DDA,
+0x6F43816E, 0x7F78F21A, 0xA11829F1, 0x76A5EAEA, 0x34D30A5F, 0xFB01BE2F, 0x7DEB843C, 0x5488D6ED,
+0x8FD99CF9, 0x404DD410, 0x54596E7D, 0xB89AFDBC, 0xB90B7B49, 0xF15BA117, 0x30D96B7F, 0xDA03F3CD,
+0x1C01A627, 0xFD13F380, 0x12F85307, 0x7056D4F6, 0xF70157A1, 0xB1BF5605, 0xE06514DD, 0x46A76E0B,
+0x29B63CF5, 0xF49E2692, 0xD42723BD, 0xE489B80A, 0xB04359CF, 0x84DBA8D7, 0xD6EC74A9, 0xF06C28AC,
+0x16A2C28E, 0x3EC00278, 0x47BB3288, 0xEADC524A, 0xD0D23E9C, 0x61A47B6F, 0x4D269AFE, 0xC900B24F,
+0x56444088, 0x778C5F46, 0xEBEC411C, 0x59FD2DF3, 0x1E826D6B, 0x520144C9, 0x07A3D481, 0x6B1068E3,
+0x074E3072, 0xFDE25B8B, 0x25C55A58, 0x6BD45143, 0x9724CE37, 0x771A2DAA, 0x8B781700, 0xDEA9126D,
+0x3055CE17, 0x5E5A06CA, 0x5DAE7768, 0x2181E8DA, 0x53A7E486, 0x63DAB565, 0x86780B2A, 0xB5AF185C,
+0x3089D64A, 0x0DC870E1, 0x05F7BCC3, 0x711AF03E, 0x9F656125, 0x5157A522, 0x9DCB60A9, 0x5E65C504,
+0xFAF9A0FA, 0x026B74C0, 0x817DF6EA, 0x655BABB3, 0xB0D267B4, 0xC2BD1383, 0x23AE3546, 0xB1356DB0,
+0x7D6E6E11, 0xBAC8D9F7, 0x6855827D, 0x1683312A, 0x0CB67502, 0x71C1A4CA, 0x30213F38, 0xFAF94014,
+0xCEB0CBA6, 0x620D11FF, 0xB2537060, 0xEF4A086D, 0x2442137C, 0x86B30161, 0xE5E0FD59, 0x302C54B6,
+0x09DD4A13, 0x1F6AB467, 0x3D1FB2B8, 0xE887CD27, 0xA51AD1E1, 0x056922E9, 0xA3B2AEF3, 0xCD120CB3,
+0xDCAE5B60, 0x8957BDCC, 0x8182EFE1, 0xC2FE39DD, 0xB338660C, 0xD915FBC5, 0x824977EC, 0xD0A16B2D,
+0x6C35705D, 0x42FC9B2D, 0xCC6AD747, 0xAEC4604F, 0x6422B323, 0xDE703C07, 0xB9DBD03D, 0xA5E6EE25,
+0x1552C578, 0x2ADA5112, 0xE7B2A451, 0xE04F9FDB, 0x702A370B, 0xB49ED4F0, 0x0F0881C7, 0x2FE8A1CE,
+0x9C5FE0C9, 0x2B852575, 0x424B0850, 0x02F05098, 0x35296A4A, 0xB4DEEE50, 0xE21EC137, 0xC41DF377,
+0x9B2344FE, 0x82347581, 0x0EEC003E, 0x94EEE367, 0xA75731B6, 0xAA4A9AED, 0x40ACBD53, 0x72608599,
+0xC9D6900E, 0xEEA0220D, 0x774390F1, 0xA792E3B8, 0xC201B206, 0xF71FFC19, 0x4EF49CDE, 0x0AAFA8AF,
+0x64FD6B9F, 0xBDDD9C28, 0xEDED1081, 0x87D05EA3, 0x611A0644, 0xA2C96BFF, 0x4CABCC41, 0x98ED1F34,
+0x197E462A, 0x8A025258, 0x58E73EE6, 0x2E8FBF49, 0x68499731, 0xB3642B29, 0xE7B1C091, 0x5BE646AF,
+0xAC5B2D48, 0x9734B71C, 0x3399A4B5, 0xF7EE85A5, 0x64243602, 0x96E5DA70, 0x4D062F64, 0x4E7429FF,
+0x901F524C, 0x11CDC792, 0x0EA5D848, 0x5C21965F, 0xCA3302CB, 0x1CC756CA, 0x6DE8CA7E, 0xC996FB20,
+0xE10A7AAA, 0x376E9AA4, 0xA0E78932, 0xCCE808C6, 0xB7879970, 0xC715814D, 0x6ACBE624, 0xFAAC2C6E,
+0xD7F5336D, 0xFF849FA8, 0xBF284DFD, 0x6F25D7C2, 0x5D7877B5, 0x89F63A0D, 0xB1FCFA3B, 0x37C12F44,
+0xC031AD81, 0xF826EE49, 0xB78658CD, 0x9968ED0B, 0x33B338C6, 0xC935B6A3, 0x3B2BFD7F, 0x60D0DC6E,
+0xAC9F20DB, 0x0B674B27, 0x6008BCA2, 0x0F1BC901, 0xC262E066, 0x0D95EE6E, 0x73B9EFA5, 0xB0DFEB29,
+0x83A8E7E1, 0x31751206, 0x4CF2BFD9, 0xE28A7B60, 0x980C4E3D, 0x36843121, 0x20A4385C, 0xA3814940,
+0x49FDB570, 0xC9B0600F, 0x67AF57CD, 0x6DC54777, 0x2E0BC7D2, 0x5008801D, 0x60DCD20E, 0x061F31CC,
+0x65306AB7, 0x135B130B, 0x5C9D852C, 0x2EAD403C, 0xF5EE1297, 0x73B0B812, 0x523B56B5, 0x5DBB1917,
+0x577B95C0, 0x6FFF516B, 0xF02B39B8, 0x65079E59, 0xDB666E7F, 0xA5398430, 0x657302CE, 0x82849229,
+0x9E114184, 0x7F0FE07D, 0x5FC5D295, 0x851E2138, 0xE0BC3335, 0x04313A55, 0xF1D6C3A6, 0xDE0D38FB,
+0x3028681A, 0x88CA8F8F, 0xEEA85A52, 0x82E64815, 0xD9F9DB4C, 0xE05EA64A, 0x5817CF46, 0xFEA15D26,
+0x6D1036CB, 0xB93E13E7, 0x62A25EE2, 0xE40071C2, 0xB7A9D99C, 0x8C13349C, 0xDC888FC6, 0xEFF977BC,
+0xE095C75D, 0xDF6A5151, 0x37EA0AD0, 0xD75CC241, 0x6B113358, 0xFEB97FF4, 0xD36C6EB0, 0x8B40F207,
+0xFE581956, 0x9BC639E5, 0x7238983F, 0x5DC89076, 0x35DF2FA9, 0x4D51A214, 0x2D6AC8C9, 0xE0D7EA4B,
+0x071A4E11, 0x0C5D313E, 0x701427CA, 0x11FC8373, 0xE09B802C, 0x160B75B9, 0xD1D60D3B, 0xE6F88749,
+0x661BAEC2, 0x31DBD429, 0x5AD5AA49, 0x2DC448B9, 0x7C271827, 0x4273A8DE, 0xFDDFF26A, 0xAD31CBBE,
+0x969B6E66, 0x10E0F977, 0xEACAF207, 0x5C124D5B, 0x29680874, 0xEC8B86DE, 0x5708E28F, 0x1DD797C2,
+0x1C193DCF, 0x45BFFB6C, 0xBFA126EF, 0x112B391F, 0xF88FE60B, 0xDCA6466B, 0xC0194BAC, 0xD1A031BA,
+0x07994567, 0xE3080CCA, 0x6B33AC4F, 0xD1CFBA32, 0xCE78F521, 0x2044DAAA, 0x5F9B8285, 0xC07DAB4F,
+0x0F5B1CAC, 0x85526F7B, 0x11DD71E2, 0xE83C3696, 0x2AB81918, 0xA8F36C1D, 0xEC1A2422, 0xAC2D8709,
+0xD0F52C54, 0x006E1409, 0x90351B3A, 0x92D2225B, 0x2CED280A, 0xAD4ECBF2, 0x720DD83B, 0x28D29E33,
+0x37154D0C, 0xFEF9361F, 0x1A7307D2, 0xDAACDC87, 0xF5B5239D, 0x8E654172, 0x85F6E0FA, 0xFB588FCA,
+0x041B8289, 0x63056665, 0x3B8E572A, 0xF8A6A6DC, 0x5B2A791C, 0xD6E35E02, 0x08C7052A, 0x441903BF,
+0x253754B8, 0x4C656A5D, 0xAA350C1B, 0xBD1CB2FB, 0xF0A13B3E, 0xA654B363, 0xB19E3F42, 0xEBE2FF5D,
+0x5A236AB8, 0xE26DA837, 0x897FFC7A, 0xC8E8A26C, 0x494392B3, 0xADDC09CD, 0xF701CA4E, 0x2B7578B2,
+0x737B0CE5, 0x4DD1BAD1, 0x18855015, 0x8CA40128, 0x6FAC41C3, 0x6085F1F0, 0x0F81FAFF, 0xC507DD30,
+0x3495F4C9, 0x99134046, 0x122B23A5, 0x42360A4A, 0xFC4EBB73, 0xF2E13E3C, 0xCEF17961, 0x32885E13,
+0x212C57CD, 0x5E5C9203, 0x9DC5F90C, 0x3E8D2DA5, 0x1B8ACBC3, 0x964BD320, 0x26233CCC, 0xA3912EFE,
+0x61AE56F5, 0x31D5E10E, 0x1C328515, 0xA3276FEB, 0x71AE00BD, 0xA53882EE, 0x96478AE5, 0x5156418D,
+0x201CD9E9, 0xE72DDB04, 0x4FCC1AA3, 0x23096C17, 0xD2B0AC2D, 0x7295C3E9, 0xE8BE06B5, 0x49B0AF31,
+0xF81452E4, 0x02A5DBE1, 0x6DED2789, 0xE817C69A, 0xD7F3754F, 0xB739C197, 0x35CE4231, 0x4D4143D6,
+0xCB5B05EC, 0x44B58443, 0x1CF34D21, 0x4B291058, 0x5F9775B7, 0xA57B0B7D, 0xFA0E5DD1, 0xC9FAD368,
+0xD0B11478, 0x1F8DA6A4, 0x11ADDC02, 0xE09322BF, 0x05D44AF0, 0x523A305B, 0xBA7F483C, 0x54351430,
+0xD29A4979, 0xB9FBE435, 0x2DB188AB, 0x49DFDB56, 0xCCBD9674, 0x614D8539, 0xACAE569C, 0xCCE5C24E,
+0x9825D95E, 0x3F12C811, 0x8BF4F0B6, 0x5C1AB2E7, 0x1B4AF697, 0xCA7293DC, 0x170850EA, 0x63A69026,
+0x8E243594, 0x3065D748, 0xF58E7E79, 0x97F4EEA5, 0xC3CBCEE1, 0x08DD2ACB, 0xA4FEAD27, 0x7CB08ADC,
+0xDBC25A04, 0xA2E5DBE2, 0x5EB46BBD, 0xDED19725, 0xD84A31AA, 0x97D75FEC, 0x1C0D8C9B, 0xE08508F1,
+0x68E02E3F, 0x422CB29E, 0x03C74DB8, 0x292EE9C7, 0xC79EC2C8, 0xEC0E01CD, 0x008900CE, 0xBA3D759D,
+0x82D04907, 0x26D55DED, 0xDD48428B, 0xB327A53D, 0xA53B095E, 0xECD18820, 0xF33B4B73, 0x5B715A61,
+0x06CABBFE, 0x4D9D2A3B, 0x8A8DA9D2, 0x5725746C, 0x89B7E1DF, 0x606C276A, 0xD010604E, 0x325F60C8,
+0x35501323, 0xE6FBF10D, 0x66A7384F, 0x956CFE75, 0x5455EBDB, 0x03C3DD66, 0x9409D921, 0x26E41C98,
+0xBC6A1C63, 0xC62E7DE0, 0x6AD40068, 0x90175B73, 0x4E28D937, 0x7BB5D1CE, 0xE2030C8D, 0xE9810D1E,
+0x89066B1B, 0xDB67AD86, 0xD0E43030, 0xDC9E17FD, 0x5D84463B, 0x47579248, 0x7053B0C2, 0x7194CCF8,
+0x461D0B35, 0x73F9AF98, 0xAAD433B6, 0x642E38E7, 0xF05EB6BE, 0x6160E917, 0x4CB6B8C9, 0x8E042EB5,
+0x5193847F, 0x7F8221C8, 0x94C28804, 0xEC647253, 0x49951C21, 0xAB40DC07, 0xFB26CAE3, 0xD6F0B0C5,
+0x8570E138, 0x2A3ADD72, 0x81985AF2, 0x271F8375, 0xECA68C63, 0x21214398, 0x505E68EA, 0xE734EC76,
+0x741D7673, 0x3B3D8992, 0x5716E5DE, 0xC85D48FD, 0xF2207A80, 0x2B54E610, 0x6207F7F7, 0x9D0AC41E,
+0x3F9B6620, 0xAC6265C5, 0x186D19F5, 0x2958A245, 0xF344B045, 0x98626802, 0x24D8D908, 0x17E86EA6,
+0xCF2C9FE7, 0x9F3901E7, 0x705C204B, 0x772B4487, 0x3356B789, 0x2DAA55A5, 0x07B3C042, 0x62E01FCC,
+0x1FB6807D, 0x4BA839FD, 0x3DBC2068, 0xD3AF185F, 0xB2BB6D23, 0xC8855052, 0xAE396866, 0x6ABB8EAB,
+0xB271E198, 0xFCC97E97, 0x2EFB239D, 0x36497538, 0x982D45BB, 0xB7313141, 0xA96C73BD, 0xB554DB43,
+0x185295C8, 0x1F4617F8, 0x13517266, 0x55DC5701, 0x111CD947, 0xA0739068, 0x189F682B, 0x69CBD159,
+0x09FEAC66, 0xE9B9031A, 0x39C2E7B8, 0x4B027FF1, 0xD63613C3, 0x4A035918, 0xDF983E35, 0xCBCB90BE,
+0x7ED0295D, 0x5E962959, 0xE0A6788A, 0x27486477, 0x94C4001F, 0x1E839175, 0x07F598BD, 0x98F33ECE,
+0x2620AB16, 0x534C57D3, 0xC84F2CF8, 0xBB62FFA1, 0x7060D94D, 0xC019FDF5, 0xAB4C8E28, 0xD28D3812,
+0x8C194F08, 0x87F957FE, 0x040CBF27, 0x97F519B6, 0x1828106A, 0x9E940BE3, 0x55191844, 0x941F14EC,
+0xFC2404D3, 0x0A190813, 0x7434DAB8, 0xE7C51CE3, 0xBDF97C05, 0x47039BD4, 0x846772FA, 0x05965F7E,
+0x525DD107, 0x5E861B04, 0xEAF7FD5F, 0x5C62E8D3, 0x312B0B41, 0x9114D199, 0x967EAB40, 0x3EFBAD09,
+0x8785D5EA, 0xF92D86D0, 0x3F50AE89, 0x84B9B811, 0x986DDCDB, 0xFF5FA1C0, 0xE9F57225, 0x305C47F7,
+0x5E33F1D6, 0x4C9E6F6C, 0x1B81495C, 0xFD99C276, 0x691E3CAC, 0x25DDECB2, 0x9F1B0FCB, 0xEDF4942A,
+0x4EB56690, 0x8712B337, 0xDF5815C7, 0x5051B627, 0x31AEED1D, 0x09A681B6, 0x13F530E2, 0xC037D532,
+0xDAB82E51, 0x84612585, 0x46109BAE, 0xA1D634C7, 0x3332E59B, 0xB7999A27, 0x427C4A8E, 0x9FFFB3D7,
+0x62C35F49, 0xC5ACBA47, 0x072E7F8D, 0xF64B4E1E, 0x66A74226, 0x33F7AC75, 0x64FB3EA1, 0x08A88E2B,
+0xABAA0E4D, 0xE00F461E, 0x0685E25D, 0x0AD61253, 0x4C5F7727, 0xDA7DA439, 0x022322AB, 0x11C717AF,
+0xA936C14B, 0xACE0871C, 0xE258467F, 0xD78B2230, 0x7A63D61E, 0x5388F3CE, 0x150F5E20, 0x3BBE049F,
+0x5679EFE6, 0xD2177102, 0xC5B59990, 0x31700357, 0x8900913F, 0x671341FE, 0xD5129E2E, 0x21C16041,
+0x551496E4, 0x21520897, 0xE93BF9B9, 0x6AD185B5, 0x4BA00B23, 0xA2F24410, 0x6327A08A, 0x8086A271,
+0xD16B2B2B, 0xC7299D0D, 0xBFCE1217, 0x7ED89C79, 0xF267B060, 0x17CE18EA, 0xC750B386, 0x72244ED2,
+0x165043A6, 0x235BA50F, 0x80C24F1C, 0x03C1B184, 0xCE1109ED, 0x16A4ABCF, 0x2278E20B, 0x027B6C1D,
+0x41F81BDD, 0x514AFF2E, 0xADE88BDC, 0x1F90A874, 0x424F02A0, 0x701F008A, 0xFE7A2B3B, 0xD767D03E,
+0x8D8CEF0A, 0xDE883286, 0x90E76643, 0x766FDFCF, 0x049A4905, 0x7509A39B, 0xE16EA5C0, 0x4976DF58,
+0x7A944BDD, 0xB50067DE, 0x9861FE39, 0xC627E97D, 0x9DF30A0F, 0x47665568, 0x0ECE7AFE, 0x9C95FB60,
+0x16C4B9F6, 0xC0317322, 0xE7394A3E, 0xCE097C83, 0xFD08087D, 0xEF324E3A, 0xF2C0B3D7, 0xB599EC63,
+0x2EB38A55, 0x289EFAFF, 0x995E3C54, 0xE05D283F, 0x275ABE67, 0xFCA61686, 0x81E76960, 0x1C34BF63,
+0xC4C9AC33, 0x4993778C, 0x767FDBE5, 0x53FE3E73, 0xAC6A424B, 0xC9810E98, 0x6CFF8606, 0x09B85ED0,
+0x70D96206, 0xEE556D74, 0x076586DA, 0x88113E12, 0x38FE5AAD, 0xA573CE85, 0x78F6AD04, 0x524A4BC3,
+0x1ADDE001, 0x24580D8A, 0xC5E458BB, 0x273DF0A9, 0x4C592F51, 0xA6F3F6F4, 0x19738E96, 0x9AF65527,
+0x9078CB8A, 0x620B3BC3, 0x8EE5041F, 0x9BCF2225, 0xC383220C, 0x8F7CB79A, 0x41494C19, 0x7630C9FC,
+0x68540EFF, 0xB04383AC, 0xACDE53B9, 0xB1733217, 0x15E0FB46, 0x412A472B, 0xFD9E45CD, 0xAB136B15,
+0x84A4A949, 0x3C966EAD, 0x9BA98186, 0xA28A4A7C, 0xAD245567, 0x8E54FA96, 0x13E0098A, 0x99E8B848,
+0x5A4AD773, 0x00836ADF, 0xA7F0E372, 0x2231684D, 0x6986578D, 0xED61C5AD, 0xF2C5F45C, 0x351ECE9C,
+0x36FBA8DF, 0xA1F00289, 0x17A63A63, 0x1ECE8098, 0xF1F140C8, 0x1EFC3932, 0x1621D761, 0xAF3E50BF,
+0x90BF9F9E, 0x49D891BF, 0x2FD95FA3, 0xA6B320EC, 0xD9273B29, 0xF5DC28AF, 0x953668F6, 0x84627C5F,
+0xD9E6146B, 0x4240ECE8, 0xA0F4A2CB, 0xD175FE96, 0x3478C088, 0x9EF1BFED, 0xC95E932F, 0x5787E0D2,
+0xDF56AA5C, 0x03B011F6, 0xB05D5756, 0xF9A93370, 0xAA04CC1B, 0xEBB234F6, 0x2C8BD332, 0xBA1299A6,
+0x6BA4F080, 0x09D088A2, 0x420CE06C, 0x9501D478, 0x6D15831A, 0xF964B070, 0xEC285449, 0x5FC6F79E,
+0x0B1ED49C, 0x4156D63E, 0xC5ADA495, 0x0FD23325, 0x5B279989, 0x80095A3B, 0x20E31992, 0xBD8DFCD3,
+0x4837DD91, 0xF3EB4AAA, 0xB17B6629, 0x6B80240D, 0x90180761, 0x1F82A462, 0x33F7F739, 0xBD2D1B06,
+0x1165EA93, 0x36D2484D, 0x7E287BAC, 0x33C25D7E, 0xC3840CC2, 0x46FBB402, 0x1CB2F14A, 0xDEAC0228,
+0x9A882841, 0x93D05071, 0xF3424CD7, 0x76676EB1, 0x481D09FE, 0x604B3D47, 0x6C4AB50E, 0xB7821167,
+0x91ABF580, 0x3FBE7F9A, 0x1E95513F, 0x5DFCFC6F, 0x011D08A0, 0x6F0CAB9D, 0x6AE43007, 0x025A2A75,
+0xB808E95C, 0x669126AD, 0x31DD35A6, 0x07F6E110, 0xA9437AAB, 0x57F69018, 0xED06776C, 0xCBDDE3CE,
+0x8CE79253, 0xC98B5A52, 0x7B81DEC6, 0x72112994, 0x06505B88, 0xD5B120D0, 0x6B327C2A, 0x44B64480,
+0x09CFFA51, 0x668F7E0C, 0xD4B1E6BA, 0x65C2E7D8, 0xCEF856B2, 0xF379F622, 0x6071B74D, 0xAFD68A8D,
+0x779BEA9E, 0xBAF257C0, 0xAA50369A, 0xA7F749A8, 0x62FCE462, 0x2EF6E411, 0x93204CC8, 0x707E8E1F,
+0x4E2975B6, 0x4114FE35, 0xE03D5173, 0x7C63A868, 0x9F483D57, 0x8356C13D, 0x31FBFEA0, 0x5BC3A19B,
+0x1837BA9C, 0xFD13680F, 0x39D6C06C, 0x11268B22, 0x2D50BAF7, 0xD9499657, 0x569C9003, 0xCB31D138,
+0x1E92625F, 0x129B9FC8, 0xE3C233EB, 0x12B5B7EF, 0xDE2254BA, 0x6A919F31, 0x2815A145, 0xD7FC952A,
+0x1BF18743, 0x52A70819, 0x13634747, 0x5FABC4A9, 0xBFA3455C, 0xEE9250C7, 0x4D568800, 0x4F3C742A,
+0x0FC2612E, 0xC64830D5, 0x4E04376E, 0xC8598CD3, 0xEE657EBE, 0x0EB85C07, 0xFD53DF72, 0x8320F0C9,
+0x35421A0D, 0x4B400622, 0x5A198271, 0x511EF2FC, 0x2AC2E1F5, 0xBE2B1377, 0xEAECCB54, 0x780CF6C6,
+0xC2BAAC56, 0xCAF3A17D, 0x5DE86596, 0x04EE1728, 0x9A5D2C37, 0xDD181B75, 0x2DAD8AA8, 0xE7807B18,
+0x72F8C39D, 0xC8B5F2A7, 0x150CEF0F, 0xCE5A24AA, 0x6056FE04, 0xE7982AA5, 0x42DCE76B, 0x3F93C5BB,
+0x22D8B8A1, 0xF6B783AC, 0x9EE5AE65, 0x6FF03BCB, 0x6F4140ED, 0x013F0C6D, 0xB29F0084, 0x12092B9E,
+0x63563C99, 0x481180F6, 0xBDA30A4B, 0x9F558C48, 0x644BB530, 0x5FB9FC2F, 0x9AF2D2AD, 0x5AE79610,
+0x9784C957, 0x3A2169E2, 0x9950A1B7, 0x05F17DEE, 0x5DA301EE, 0xEACAFDAC, 0x5FB09FC9, 0x11CA55A9,
+0xA8E81F2E, 0xC6E97B8E, 0xF28B3E86, 0xC179886C, 0x3692DA04, 0xF8B4EAED, 0xFB2ACD1B, 0xD203EF77,
+0xD7A82785, 0x0C606DC9, 0x7FCE1B58, 0x8E70723C, 0x3B9734FF, 0xAEE10857, 0x72986833, 0x58D7300B,
+0xDE42D1A1, 0x88566EE7, 0x4911A1D0, 0x12E7A147, 0x9045E852, 0xAE11663D, 0x98472928, 0xC1CD17A9,
+0x6AB332C3, 0xC958CA0B, 0x391EAB62, 0xF191161B, 0x6FE2ABE2, 0x8FBEA2F3, 0x70D3AF02, 0xDD854B1A,
+0x2E651BA2, 0x86457EFB, 0x13EA04E5, 0x28EFA236, 0x1F496678, 0x33C40368, 0x6AD81313, 0xC6D31E51,
+0x44D17DE0, 0x4C0CC49C, 0x851D7BB6, 0xC835A5B9, 0x14211202, 0x169EB403, 0x75DAAEAC, 0x7B24797F,
+0xE5132113, 0x832A638E, 0x74ED773C, 0x4BA9607F, 0xAA23B5D4, 0x3DE4FEA4, 0x363B5EF2, 0x2AB1F670,
+0x0B9B91D9, 0x530425A0, 0x44480C4A, 0x0B1AE1D8, 0x8C67EC82, 0xD06C7645, 0x4B71374D, 0xB9FFDCBA,
+0x6B2CEE08, 0x4032E2A4, 0x396238FB, 0xECDE467C, 0xA35439A3, 0x18B96C5F, 0x6089A79E, 0xD2459383,
+0x86505E58, 0x19E4002E, 0xFF11D333, 0x433DD514, 0x5610E496, 0xCB5D99BB, 0x16D22E7F, 0x9F1E41BA,
+0x9CA99ACF, 0x0C45E866, 0x1F908692, 0x671DACE7, 0x8A468DE1, 0xAA02B81D, 0xFBA1A255, 0xB4822ABB,
+0x7A9E6E8B, 0x27FE6F86, 0xE0C397FD, 0x0C68389D, 0x98B69A7C, 0x82AFD2B7, 0xE7BFFD3E, 0xDF52ED63,
+0x46537D46, 0xE768A273, 0x9C0F5128, 0x0434E7D0, 0x894C1E78, 0x97166CB9, 0x94297978, 0xB51954B4,
+0x51174F8D, 0xE18A8562, 0xF14F669E, 0xB2F11A01, 0xECE8A9B8, 0xFD2214AC, 0x725A05CA, 0x1261F3B8,
+0x469CE8CE, 0xA76AD56F, 0xAEF0F99E, 0xD8645AD9, 0xE5A53E76, 0x57BF502B, 0xAF46A1CD, 0x148FBBE7,
+0x712BFD0A, 0xAA6A10F4, 0x7B363DE1, 0xFF695D8E, 0x8FF4DE65, 0xF8C96291, 0x08EC27CB, 0x0E378ACB,
+0x6E0D1491, 0x8F4C91CA, 0xB5E53FC4, 0xF7240E91, 0xC1832498, 0xE3ACBEDF, 0x334F5E2A, 0x474045A8,
+0x285ED46A, 0x0813C149, 0x18C2CA55, 0x67223272, 0x78895E2C, 0x6FA32EDF, 0x94B452F2, 0x94F9A114,
+0x0DA581E4, 0x6FDB7084, 0xFB1EA9E7, 0xA3D5B02E, 0xD0EDA2DA, 0xF64821DA, 0x12A9C136, 0x57954577,
+0xCF9AD25E, 0x8AB6F482, 0x7DABD45E, 0x2C05972F, 0x80DAFEC8, 0xA5CF4423, 0x09F3B22F, 0x1BB94BFA,
+0x74B1BCD8, 0xC9C4EED5, 0x67BEC265, 0x0F4E84C5, 0xA600A54D, 0x238C8C3C, 0x9224D124, 0x0867CDC4,
+0xA7D5B5B5, 0x10AD34AA, 0x9AF2AE2E, 0x048E2216, 0x548122C9, 0x86EB4662, 0x5C023867, 0x0572EF75,
+0x8DB01DDC, 0x087F359C, 0x0152884B, 0x1CA52DB2, 0x8D1B9919, 0x0FA431E5, 0xCE72A2E6, 0x4797C93A,
+0x8C78AC64, 0x9D32BEFA, 0x5E633B0F, 0x464395F7, 0x7FEB88EC, 0xC43A5559, 0x5A34A8FD, 0xA2F1F4F3,
+0x247580AF, 0x7674AAFF, 0x61085692, 0x5B0357E0, 0x7321C252, 0xD1138803, 0xF3F57F56, 0xE7E95F00,
+0x12065207, 0xCDD4C5E3, 0x22226389, 0xD121083B, 0x0D1D0560, 0xD1070E35, 0x5D6F8F8F, 0xDE1C0EF2,
+0xA9B2A5B4, 0xFC7DA784, 0x6EE7D943, 0x29CB1F4E, 0x64836E76, 0xF07D20B2, 0xEE703CE6, 0x34788309,
+0x8D71C7B5, 0x36F17A5E, 0x61E1790F, 0x4ACC83B6, 0x278F255E, 0xDC61B632, 0x332A2E99, 0x13D56E92,
+0x4716B1CD, 0x0C649D57, 0xD13EAF9A, 0x5096627C, 0xB08A057D, 0x3769C151, 0x0047DF37, 0x21BB7B7D,
+0x12D9F07D, 0x336A1E3D, 0x0AF54A21, 0xCB354440, 0xC6486FB6, 0xCE30F25A, 0x5E891E7E, 0xAE97257A,
+0x31E1669D, 0x504E6165, 0x81FCD56C, 0x58EDAF56, 0x02004B6F, 0x75A4358D, 0x634BBF77, 0xBBAA5A51,
+0xD8A50514, 0xC3C10CC7, 0x79D88D3B, 0xECBF422C, 0x13F52DB4, 0x8122EA3B, 0xFDCEF453, 0x3575D861,
+0x92253DA4, 0xBBF49743, 0xBBDE1929, 0x35BB4212, 0x301689A2, 0x2E058C3F, 0x127EDF7E, 0xBD91500D,
+0x81C3D5F7, 0x94050973, 0x2208E17C, 0x2BA5D285, 0x22803A6F, 0xA99B9BD5, 0xE8A3AB85, 0x722C62C1,
+0x2E3697F7, 0xFD849BC2, 0xE81730CD, 0x84F3ABCE, 0x0AA3F57E, 0x4EA4E8FC, 0x7738DBFA, 0x1DB9B523,
+0xCE10CEB5, 0x40041932, 0x28A6E965, 0x272F5CB8, 0x5058337C, 0xB24C35E6, 0x28DCF258, 0x84601712,
+0x6A343CDC, 0xC0AD3B5B, 0xD404C163, 0x0D6B0AED, 0x8B436C5B, 0x4C86C694, 0x5BC0B543, 0x1F562E2F,
+0xD42B9B3A, 0x61810284, 0x99236E0A, 0x75A5EE02, 0x0BE3171B, 0xCF41E29F, 0xB16A231B, 0xC0DAE878,
+0x4D3DA4EE, 0x40EAE706, 0x54585DCF, 0x5B45806F, 0xEF3B152F, 0x379C8C31, 0x48B6BCA8, 0x9D2FF120,
+0x2E9AE717, 0x71670C93, 0x371BCFBA, 0x95D09D23, 0x3A98701B, 0x36F40C80, 0xCD8135B9, 0x7CE43245,
+0x28EEF7EF, 0x3C42D987, 0xC5B86715, 0x6FF8BDC6, 0xD24B457A, 0x51D3CF8F, 0x4397628D, 0x45C2B685,
+0x29540F8F, 0xA9318CDD, 0x7D29F381, 0xE6C327A1, 0x5D7D42A3, 0xCA51E4FC, 0xCA4DD465, 0x8CA046C9,
+0x90B75441, 0x004273EB, 0xD92E7C6D, 0x47BCAEB8, 0x37DBB4F5, 0xBE1A88C0, 0x751EC376, 0x738E08FB,
+0x0A60FA08, 0x1C968066, 0x8B8F273B, 0x91BB4CB2, 0xB4CA1199, 0x795DE8C9, 0xDF5BD804, 0x35A3568B,
+0x40C63911, 0x97F5E15D, 0x534D2019, 0xF955E7EA, 0x58C659B2, 0xEB03F821, 0x4D570AB7, 0x1E625AF1,
+0xE6FB8EB3, 0xCDDBC337, 0xE3977F8E, 0xAC7C0700, 0x8D4A5771, 0xF82C82E6, 0xD2CB0934, 0x32691BF7,
+0x25DBF04F, 0x52923B3B, 0xDA38D70E, 0x826E86D8, 0x9A376BFC, 0x9927DD3B, 0x90275D71, 0x802802AF,
+0x580ADE68, 0xE570C7D2, 0x2F686D44, 0x5B7795E6, 0x68C76722, 0xFAC03E70, 0x1460158D, 0x1E1A2245,
+0x1E219038, 0xEBF1187B, 0xAC98BB68, 0x467AA429, 0x29419424, 0x02406778, 0x3F11F6FE, 0x7E196147,
+0xC05F6C08, 0x025376A2, 0xDC2DA333, 0x250EAEEA, 0x446CDFAF, 0x66DCEEF6, 0x11B8ADC1, 0x910E70D3,
+0x0149147A, 0x28DC5414, 0xA65154BC, 0x49B533B3, 0x6E103861, 0x19D7D13B, 0xCFA439AF, 0xF702F0BB,
+0xAED55275, 0x6190C7F0, 0x9E132B33, 0xE9D9DAB3, 0x206214E7, 0xBF52EB79, 0xF878E417, 0x6D4B61B5,
+0xAA045C41, 0xDA403AF4, 0xC378A220, 0x06E1571E, 0x64016070, 0xB3FDA70F, 0x33617751, 0xB6F5F4A8,
+0x90EA21F0, 0xD0F2B2A5, 0xF0A1747C, 0xB135B369, 0xD67FE964, 0xBE8A7B2F, 0x071BE1A0, 0x4447D8B9,
+0x8B441902, 0x2646ABA1, 0x1EFE8EA0, 0x86F970FF, 0x3DDE18CA, 0x80A00320, 0xD1E2AB07, 0xC784EF9A,
+0x9F550D64, 0x8C69E19E, 0xEC156465, 0x9A13C756, 0xB4592520, 0x410881A5, 0xE85B21AA, 0x27FBB5A9,
+0x256E88AE, 0xEB3C8BB2, 0x9CE6A9A4, 0x23D64A5C, 0x6A807B35, 0xF92862F7, 0x84C0AD29, 0x382763DB,
+0x790BBA82, 0x7E6CF449, 0xB9479E5C, 0x84576270, 0x98AE4A1B, 0xEC50B177, 0x2885E71D, 0x32E500F0,
+0x69BDCEEE, 0xBDA7AD08, 0x9BEE8D27, 0xB3056B1D, 0x6C836E81, 0x302EB1C2, 0x7EE88808, 0xBA5F6F97,
+0x737FAF58, 0xFAEDD6D6, 0x8536FDC2, 0xEF0C67C3, 0x687666A5, 0x38992FF0, 0x542CF4F3, 0x50594BA1,
+0xE50BE34E, 0xA9E284C0, 0x2F74C8BE, 0xC88528F0, 0x190B30A0, 0x54F5109D, 0x35B2E962, 0xC346FE9F,
+0x77E86889, 0xE34C4A72, 0x13B88C27, 0x5D072AE1, 0x4B00F9F8, 0xED8318E4, 0x785E55EC, 0x9795F6F8,
+0xB5DB56F6, 0x8001EFDD, 0xA13258F4, 0x2275BE2E, 0x0E69AD9C, 0xF8ECF67D, 0xBD940791, 0x1576CDC7,
+0x303F1B8B, 0x8CBF4841, 0x6E8E6B6B, 0x8777B854, 0x3C9E46D5, 0x9F97CFFD, 0xAA74996A, 0x61E16DB8,
+0x29C74AF1, 0x524E919F, 0xB9683CEB, 0x2ABDCA26, 0x2C8AF864, 0xC9FC66FD, 0xD9616113, 0xA82FE6D3,
+0x464E1317, 0x4676393C, 0x8C75C1D4, 0x7606D6D7, 0x255E45B7, 0xD8DFFF30, 0x9C22E3FF, 0xC017E50E,
+0x1DBC9BC3, 0xEAB73F15, 0x5F1D30C7, 0x284617CC, 0x8F493575, 0xCA3C0FF4, 0x763F5D63, 0xB90CA38B,
+0xD6667DD8, 0x388BB80E, 0xA9FDD954, 0x75752F86, 0x01E913C9, 0xC87F06D7, 0x6A5B4454, 0xCB612C79,
+0x68D3B1A7, 0x8003BB39, 0xE419BD39, 0x16279680, 0x201D2610, 0x221B6D57, 0x85797920, 0x21EC4DF6,
+0x9654B449, 0x4FA040CC, 0xC4244711, 0x7A126F3D, 0xE7ED8602, 0x3D6C7DE5, 0x83F608A3, 0xC3FB551C,
+0x8D3FB98E, 0xEFC1C71F, 0x49F75614, 0xC73F6C8B, 0xC574E790, 0xC0D6C072, 0xD0E5B96C, 0xCB75401B,
+0x729C0AE3, 0xC56F087B, 0x1C69174E, 0xD66C7E6F, 0x27CB5328, 0x3D3A2DAD, 0x87460DA9, 0x13620D8B,
+0xB092DE75, 0x60E80C34, 0xD619535B, 0xF6F0A531, 0x116BCFA3, 0xDC071AC5, 0x7F061ECB, 0x9FB96B28,
+0xC8B7F246, 0x7ECABC18, 0xE35F0EC0, 0x948FB989, 0x6178D8C5, 0xD3072473, 0x87A3B462, 0x8CA2685B,
+0x2AF97EF3, 0x67CF667F, 0x3311AE61, 0x7C64E873, 0xA9C2A3D0, 0x9CF31F05, 0x6FB55B23, 0x5D73B68D,
+0x756F13DA, 0x6F059771, 0x34D2D8C8, 0xF847E25D, 0x8A691125, 0x8A893CF7, 0xBB8ABE21, 0x16FD9427,
+0xCFAE680B, 0xB70BBC0F, 0xBA239E51, 0x72C719BF, 0x26914258, 0x23CC243A, 0xEED59174, 0x093E5B92,
+0x3D4333F5, 0x3AFD712E, 0xF3881598, 0x6851D5F9, 0x6FDB0082, 0xDABB821F, 0xB78FDA1F, 0x48F5C15F,
+0xB79CA664, 0x173B1CD5, 0x7592E55F, 0x8E80A1DC, 0xCBED9675, 0xDCE8D3BA, 0x24E0FCA9, 0x5B634AA3,
+0x8AD5AC0D, 0xEDEC2F4E, 0x23E91875, 0xB9DB1E33, 0x175CF04B, 0x049A4195, 0x38CAAE06, 0x9D3BF8D9,
+0x47559157, 0xD34CDAEE, 0x24AA5A46, 0x07EB0D0A, 0x9B9A141B, 0x05E5D2DC, 0x888419DA, 0xBF0EDB0F,
+0x30104F8D, 0x2F4B0154, 0xAF91DB76, 0x1192C5EB, 0x4535E33C, 0x60BE986A, 0x4706568A, 0x37CB0CE0,
+0xC814B7F6, 0x89977AFE, 0x29EE49B8, 0x708B78FF, 0x4A9746B6, 0x75AAAB58, 0x59BF56E7, 0x761DABF1,
+0x80CF27DC, 0xBF602AFE, 0x974EA407, 0x4C7B9486, 0xCCEC2C15, 0x4EF6BB7C, 0x32E03D11, 0x48D3C2FB,
+0x5C999ED8, 0x637BD9FE, 0x07CBC5B9, 0x2319E4AC, 0x28A6AF88, 0xB5A5F0E4, 0xBC31598F, 0x987C8B32,
+0x0A2CBD72, 0x304910DF, 0xD33B6AE6, 0xD1ACCF4D, 0x6F3FC315, 0x66AA81D8, 0x2CF1118B, 0x77F60B8E,
+0x4EAFED1F, 0x9DEB1343, 0xB0143E4F, 0xA2A162E7, 0x2276F6B7, 0xB96546CD, 0x22FB9837, 0x05F56410,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+20
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+SYNCRC
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
new file mode 100644
index 0000000..e5fc1a4
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+output0 =
+0x9EE331AF, 0x2AB3B869, 0x980F930D, 0xCDD88511, 0xEB5F2CEA, 0x82FA1DC9, 0xF9B5C9EC, 0xB6F4436E,
+0x9A1522FA, 0x3225D473, 0x2187A0A3, 0xC5E34328, 0x1E41E4C7, 0x67B44A01, 0x89C038A0, 0xECBE2C9B,
+0xF60AA1BC, 0x7E4EAB53, 0x1736724C, 0x01FDCB11, 0x6AB1F4D9, 0xAB48D5C3, 0x85D71100, 0x6585F802,
+0x6CEFB57F, 0xAEAE2086, 0x13B991E1, 0xF3535B2E, 0xF983913A, 0x4CE284A7, 0x8A7D6255, 0x36B48680,
+0x7EA72D08, 0xA2779E89, 0x0D4DABF5, 0x78B63DB6, 0xCAB0EA2E, 0xB9A8BCC7, 0x9E2A0F46, 0x82C6EAF3,
+0xD530159D, 0xC5D0AAD8, 0xA09130D6, 0xD0
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
new file mode 100644
index 0000000..954f700
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xAAC7105F, 0x643D4393, 0xE192891C, 0x83A39F78, 0x2582F55E, 0x26CFD732, 0xC699EBB1, 0x8F2B74A2,
+0x936E735C, 0x13D70FB6, 0x24CE6E8A, 0x50347DF7, 0x48D5C2D3, 0x04785E58, 0x60CA27F7, 0x3170E8E7,
+0x3338715B, 0x3610C008, 0xBD8271EC, 0x72D3EF32, 0xDA1A389F, 0x95FA85E8, 0x9CD1CFA4, 0xAE1D7D96,
+0x3BFB9064, 0x55E28DC6, 0xF7F67F98, 0x38D000DC, 0x6BAD2E54, 0xB0E88829, 0x063A2507, 0x6E76FE1D,
+0x25997E16, 0x0CC0E59F, 0x08E51C73
+
+output0 =
+0x967245D0, 0xBAC4FC7F, 0xF1AB7C86, 0x491785A8, 0x10577FCB, 0x163CF7B8, 0x6B265A8B, 0xE1A8BB63,
+0x0F2A05D8, 0x37557F18, 0xCE7525C3, 0x0CA9387D, 0x17BE76D6, 0x5387FFDB, 0x693CAE17, 0x0798AA28,
+0x48A44F2F, 0x38140D30, 0xE5906BF2, 0x52AC2F8C, 0x33B2A4E5, 0x7B1515B6, 0xB9D55139, 0x5DDA644C,
+0x3E312F73, 0xB95C0A44, 0xE16BE459, 0xE290B588, 0x8777F5A9, 0x08B5EA39, 0x693B5812, 0xA82A2918,
+0xC978FBC7, 0x0D77A295, 0xF9F5A8EE, 0x090853F8, 0xFF4D8021, 0xE3A2632E, 0xE6CB43A7, 0x3827C151,
+0x5494AE3C, 0x0C9ABCD4, 0x934F1B32, 0x00
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
new file mode 100644
index 0000000..c2182f3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3924
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xC1BEAF7C, 0xAFB020F1, 0x79E73901, 0xC5EEBB6A, 0x214101FD, 0x028573E1, 0x74BB7698, 0xD7AC347B,
+0xA05C2979, 0x5FA47D1E
+
+output0 =
+0xB763ED53, 0xC6529760, 0x0414EC8D, 0xF708DD55, 0xCE7892F4, 0xFA2DC816, 0x09D4B196, 0x56675715,
+0x87FA9716, 0xA529691A, 0x23B239F0, 0x22
+
+basegraph=
+1
+
+z_c=
+15
+
+n_cb=
+990
+
+q_m=
+6
+
+n_filler=
+10
+
+e =
+360
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
new file mode 100644
index 0000000..bface0c
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+output0 =
+0x5E7522B1, 0x7FA3382B, 0xA908E1D8, 0x2642E58D, 0xB56933E6, 0x6405F0C9, 0xA77DAD7D, 0xEBC763C4,
+0xA09FA64C, 0x764B1E23, 0x5BF6257D, 0xAFB6ECC1, 0x54E294B1, 0x1B65DD34, 0x4B4C9B37, 0x2C7F1A31,
+0x6EF7DA88, 0x60A11548, 0x74CC96E2, 0xD19CD066, 0x6B0EBF4D, 0xE9E45047, 0xC5AF1B06, 0x940B28AB,
+0x54ED59F0, 0xA0
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
new file mode 100644
index 0000000..b63d4d8
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/12117
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xD7C9BB11, 0xFA37421E, 0x000A635D, 0xEC53B479, 0x64A76ABF, 0x73F9F150, 0xD898CDC2, 0x0DFFDC09,
+0x9C97913E, 0xBA8A4D3D, 0x408D6AC1, 0x277C1D48, 0xF4DA212C, 0x4605688C, 0x103AA068, 0x751A28D6,
+0xFE30E21D, 0xA9EAF00D, 0x8943EB0E, 0x136C8419, 0x267BD625, 0x001067
+
+output0 =
+0x5BD32C8C, 0xF917BBD9, 0xD5835701, 0x6462E24E, 0x3EFAC535, 0xE7245C31, 0xBCED3AC7, 0x0C17F702,
+0xA16C4028, 0x514AC1E2, 0x128792CA, 0xE701A245, 0xECAB018D, 0xC29A0562, 0x58F1C57E, 0xF55D550D,
+0xA7AA6F81, 0x516787A1, 0xCFAA7F82, 0x962C6449, 0x3282A6CE, 0xE2F13841, 0x86ED088C, 0x24601D7A,
+0x63A2D3E4, 0x57A1624A, 0xCF40E224
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+864
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
new file mode 100644
index 0000000..a746bba
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
@@ -0,0 +1,110 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/4740
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x50F16834, 0xF2C53996, 0x03020CA9, 0x3FE7C401, 0xDD82BA62, 0xABE166B1, 0x20567A55, 0x80D9DBFD,
+0x157E8623, 0xD0787894, 0x0850484E, 0x322CFF58, 0x0C9DB7E8, 0xF63C91F4, 0x456AE701, 0xFDA2026A,
+0x9AC638AE, 0xB31103F5, 0xDA853614, 0xCF27450B, 0x4BD897C0, 0x1A09B1C2, 0x4A45966F, 0x3ACA9167,
+0x7F77FF7F, 0x15D56E48, 0x8FA07362, 0x80BBED1D, 0xD05686E3, 0x02CEA3DD, 0xB3C0D1B6, 0x259DAE03,
+0x25977868, 0x1A150EF9, 0x6E64CC85, 0x18A1DE79, 0x526A7853, 0xD5DF5A64, 0x2348D0B4, 0x51285055,
+0x86B05C87, 0xC391340F, 0xF18BCA53, 0x8791813F, 0x50EE99A7, 0x6F2CA384, 0xAF5126BD, 0x2142AD0D,
+0x10541F50, 0xB35BF0C1, 0x70E31CB6, 0xFECF5661, 0x61880F65, 0xBC65B63E, 0xE33B131B, 0x6AF42AED,
+0xD7C04063, 0x78611438, 0x722192D8, 0xA2058194, 0xFECFD4A4, 0xC95A2C4D, 0xC9D8AAA7, 0x56F959F3,
+0xA7B78EB6, 0x167AC217, 0x544688BE, 0x4C9CE796, 0x5324925B, 0xFE87D352, 0x019413EF, 0x95825C9C,
+0x64782300, 0x2714D4E7, 0x02D6E144, 0x9613CA04, 0x7700A0F9, 0xD9774CF3, 0x0F2D4373, 0x589EE52F,
+0x16F83601, 0x149DCDBE, 0x8592209C, 0xAAA899EC, 0x6CE1A873, 0x21D51F5E, 0x0DDC1BF9, 0x02DE0E7B,
+0x2F6E9A41, 0x11FFA908, 0xCFC1DB62, 0x5D1F0F29, 0x98640FFD, 0x45183F40, 0x0E3865A7, 0xB74D193B,
+0xEA77DF41, 0xC10B76EA, 0x44A42C65, 0x8D8D36FC, 0x45DFEFB5, 0x5F90559D, 0x62502A64, 0x00F9E573,
+0x5EE77494, 0x04043D14, 0xFD072D34, 0x3AE1BF9E, 0xF49B4B0F, 0xDA220770, 0x987837FF, 0x1C5A086F,
+0xFE64CBE6, 0x9679050E, 0x31DC1AB5, 0x9B2A557F, 0x2C7F124D, 0xDFDE4E83, 0xA16A8974, 0xCE26BE95,
+0xF27287D7, 0xCE564845, 0xDB35A382, 0x875BD89E, 0x567EB179, 0x1CCC7D32, 0xC83FBCD4, 0x62EE85DB,
+0x9A68B844, 0x6458737E, 0xDB81944E, 0x80299BC2, 0x19786941, 0x5A057F54, 0x7EB814DD, 0x07855BEF,
+0x16AA4F23, 0x1EF06576, 0x41D436E0, 0x403C8F3B, 0x82903B04, 0x0B4ED74B, 0x1699CD89, 0x4F2536F3,
+0x9FF1EF0D, 0x0D63ED56, 0x6F4FF3E2, 0x77013410, 0x729F850A, 0xC4A2B941, 0xB9AA313E, 0xE040B1AE,
+0x644AD780, 0x80751C18, 0x0D47BB25, 0x8CED403F, 0xF4F8807E, 0xB84E513F, 0xDCC2033E, 0x24ECAB63,
+0x0893EAF8, 0xC68786C9, 0x9A82D1C7, 0x13B36060, 0x4B537CCE, 0xDDE3D19C, 0x99112A1D, 0x3E6654F4,
+0x162AEACA, 0x62928B3C, 0x14FCBC98, 0xB44086EC, 0x6DBCED78, 0xE717F17E, 0x3F9B5B02, 0x817599B5,
+0xF347CB34, 0x6F82B71E, 0xC337D8E9, 0x0328A267, 0x427336AA, 0xC934417E, 0xF7B5C032, 0xEA79F0CB,
+0x416FCC09, 0x208D8D80, 0x37C1E3E0, 0x76023916, 0x57350343, 0xE8FB5955, 0x461F1171, 0xF139FDEE,
+0x96BE5220, 0x96A8EFB7, 0x8773204C, 0x43E6363F, 0xFB325A1E, 0x930B38FF, 0x60ECDDFD, 0x23609CAB,
+0x4E5864E8, 0x55636167, 0x75BEE160, 0x0F181B7F, 0x9FE05BC9, 0x9C220345, 0xBC648CA6, 0xD9C544F6,
+0x2294A55C, 0x5F921636, 0xFD5EF715, 0xE9FD8A7D, 0x31342020, 0x3892B312, 0x24ECAD48, 0xF31D850E,
+0x9817D48E, 0x60A26A1F, 0x24C0643B, 0x08BB3ABA, 0x9A2026AB, 0xB6ED1347, 0xCB06B9CF, 0x81028A1F,
+0x0C141510, 0x1173AB81, 0x467D6E76, 0xFC384342, 0xE9CCF66B, 0xEA8AC735, 0x1BD82B06, 0xD4F70487,
+0x4569F29A, 0xE94759AE, 0x298CA0DE, 0x991B05EE, 0xA24EB567, 0xA4F7DDEC, 0xCB46257F, 0x18EA8A0F,
+0xB859761C, 0x8F3BB417, 0x6F07EF91, 0xD94F3769, 0x2B7ED799, 0xA63563E9, 0x175B1B9D, 0x935433D9,
+0xC5EEE108, 0xAB66F1A7, 0x45352A49, 0x22660E7F, 0x93E8B76B, 0x098FC4D5, 0xCF0F90D9, 0xA21C7C47,
+0xA2C8C2D3, 0x566824BA, 0xB1A154DC, 0x09A95A5F, 0xDEEC0D4B, 0xFBD731CC, 0x4DDD1F79, 0x885E80FD
+
+output0 =
+0xBAB69B46, 0x9AEEF4CD, 0xF65CEBB3, 0x3A351B07, 0x0B0F251B, 0xEE1A8EB8, 0xE59C8052, 0x0B2299B0,
+0x1D5CB699, 0x3F2682EA, 0x2121F8C5, 0xEFB15235, 0x704B4B26, 0xBA0E8759, 0x7FAF1CBD, 0x74CE4CA8,
+0x219D8D73, 0xABEEDB0D, 0xCAB2D229, 0xDFD73ED4, 0xAC269345, 0x88616ADC, 0x80B0EA9A, 0xD3F12C4F,
+0x4911C9FF, 0xD0F1B94D, 0x9CD97301, 0x3230D51E, 0xD1E31F4A, 0x18574172, 0xB32ED6A3, 0x59E536F0,
+0x39A86503, 0xFF4852A6, 0x95480468, 0x028B215D, 0x4BB4DEBC, 0x77D6C78A, 0xF3C455B6, 0x2113C0D6,
+0x2DB54E47, 0xB5EA54B2, 0x2CC06535, 0x2AB4A838, 0x0EBB9BC7, 0xD675F3F5, 0x7F45F8A7, 0xA8D1024D,
+0xD0513827, 0xCD53C7C6, 0x1184C8F6, 0x3BB7F6BC, 0xFD116C2C, 0xE3103FD0, 0xB0BA389F, 0x3629A9B5,
+0x40A8AA19, 0x3EE17358, 0x02312A15, 0x466ED0EB, 0x371C20BC, 0x54DAB264, 0x81948A54, 0x1FCD3C1F,
+0x1C76C4D7, 0xC8AE824D, 0xDCA04C66, 0x21EFFE40, 0x498DCB6E, 0x1842DCC4, 0x937CFAD6, 0x9220816C,
+0x10399542, 0x6F2B3DE8, 0xCFE0F0F7, 0xC55FED3F, 0xC11B593D, 0x894A3D36, 0x17C6386E, 0xE76799C7,
+0x029BB9A4, 0xC728B6B7, 0x57AB7BAD, 0xE5212EFD, 0x1B7EBC84, 0xE6D31711, 0x8332412C, 0xCCD8670E,
+0xBF2D5294, 0xE42B6C1B, 0x46A0532A, 0xD20E3D01, 0x48B61D21, 0xDCC59F01, 0xB54A5392, 0xE9A27CBD,
+0x475545D4, 0xC6222B28, 0xC6C6BA23, 0x0D624CDC, 0xA6D11E56, 0xCAE973D1, 0x83C3D00D, 0x285473B8,
+0x9D765A6C, 0x65EC16BD, 0xF2BEB004, 0x392E0DC9, 0x5972E43E, 0x74CE67F8, 0x877881C7, 0xC194D498,
+0x7EA32C7A, 0xFA616DFE, 0xB7F54D05, 0x67D5327D, 0xA1B11114, 0x797C36AC, 0xD2C4BAC0, 0xA3FC0A59,
+0x0A41CEA9, 0x72BCB459, 0xA400ACAD, 0xFF5E0DF3, 0x95330499, 0x5C61382F, 0x17DB60A4, 0xEBC08965,
+0x7BDA7D16, 0x9FDB4A48, 0x8E434902, 0xA37A8206, 0xD6FA9D98, 0x9F7524F1, 0x87484FCB, 0x3D29853B,
+0xCFB8B6E2, 0x6E8FB75E, 0xFFD9715D, 0x9BA4FA21, 0xBEE48708, 0x6994B617, 0xB861D7BB, 0x32965DD8,
+0x54AE0642, 0xE5749364, 0xB7AAEA69, 0x7A72625F, 0x561C0FD3, 0x17C4592A, 0x114FB3BA, 0xAAF6B7B2,
+0x883009FE, 0x8CB14452, 0xA8DCEE5F, 0x32490CF4, 0x12F92890, 0x8751DBDE, 0x036192FE, 0x70944BFB,
+0xCC1EA46D, 0x4A65393B, 0x0D1A8E22, 0x6353AA97, 0x93CC0B72, 0xF31E45D6, 0x7DAFBF7F, 0x564BEB7E,
+0x37965B06, 0xA405E685, 0x792A9757, 0x915293AD, 0x4913CB07, 0x75532849, 0xF7B42E2D, 0x28EC5A1A,
+0x803A3EF8, 0x7604FF7A, 0x188D7B23, 0x96A096AD, 0xE0A73048, 0x304173CB, 0xF52D61A4, 0xB9F4185C,
+0xEED3FF8C, 0x6388190C, 0x9AC54AA2, 0xD815A196, 0x5E688497, 0x123468E7, 0xB9665A24, 0x9BBADD97,
+0x7818CD07, 0x3013A569, 0x84621495, 0x35DDD4C3, 0x62B6CC53, 0xE2C90AB9, 0x80BBCA1C, 0xA069C371,
+0x0D030AF8, 0x055ECF7E, 0x680AE291, 0x13E7E136, 0xB57DF5FF, 0x85AD0124, 0xCEEF4C70, 0x6914CE71,
+0x784E3714, 0x4A8A2D63, 0x766254F9, 0x95944892, 0xFE634D11, 0x5B48B728, 0x2D95EEB4, 0xD7AD4549,
+0x3AD6AAE1, 0x01E35C22, 0x0C731A23, 0xD79593AE, 0x2ADEA548, 0xD68CE22F, 0xE245370F, 0xFD69FC84,
+0x01D3CF55, 0xE5BC524B, 0x17EF955B, 0xE596B8CA, 0x02C0DDA1, 0xACC0746A, 0x489AF9D1, 0xB42334B2,
+0x26BF94F2, 0x6D70EC02, 0x003A3F93, 0x007E706C, 0x36C5E0B5, 0xE5AA5CBA, 0xE3427640, 0x977C3A76,
+0x6A7EFED5, 0x879CC5D9, 0x07C9FA95, 0x3B7DDA84, 0x6DC13FD9, 0xA21D2B49, 0x7E741311, 0x63EB6E7D,
+0x40AB1DD5, 0xDC636C0B, 0x340DD1AE, 0x093A3A70, 0x97EA1AC5, 0x26C91F58, 0xD3F0F15A, 0x0B93E22B,
+0xB572CACA, 0x0BD45EA2, 0x4B2A4791, 0x2EBED3E8, 0x2A793B5A, 0xEA64B0A5, 0x254F5BA1, 0x46B3FB9A,
+0xB43C574E, 0xA0A42D9D, 0x9C285D2A, 0x4E188C28, 0x373B1517, 0xBD3C4473, 0x6978640B, 0x61E35E79,
+0xA9EE34BE, 0x0F40E590, 0x8DD6FF99, 0x85CECE24, 0x8F03BAC6, 0xE3356D6E, 0xA0FD2171, 0x667216E9,
+0x527044D3, 0xF2275856, 0xDAB137B0, 0x82179A34, 0x8B16DF35, 0x7951B0A4, 0x52F5D069, 0x7D1472AC,
+0x4C042345, 0x2A0C91B2, 0x7D1839D1, 0xB4222D22, 0x90335963
+
+basegraph=
+1
+
+z_c=
+384
+
+n_cb=
+25344
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+9372
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..bc84e55
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_DL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v2342.data b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
new file mode 100644
index 0000000..57c22b7
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
@@ -0,0 +1,150 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+output0 =
+0xADE67AA9, 0x1CB4EBDD, 0x74E76684, 0xE3941FC7, 0x48DAC304, 0x1E2C198D, 0xFE88B908, 0xEC21A3DE,
+0xBF314AB7, 0x634E3DCB, 0x0DA84E23, 0x58B1B22B, 0x02B837A0, 0x8B04BF38, 0xFB8DB526, 0x1BFF82E9,
+0x4226C4D0, 0xF7A9950E, 0x6DA4D0B2, 0x38E15395, 0x94C1A379, 0x243ED666, 0x3E7255B3, 0x7DB378DB,
+0xA3CE1377, 0xE0137291, 0x42DB50AC, 0xEB2D0A13, 0xCA55944A, 0x223DF8E0, 0xB800D1CF, 0xAA2E7577,
+0x50153EC5, 0x5E3C8557, 0x63DDEC8F, 0x49A256F8, 0x41ABFD56, 0xEB76A4D7, 0x4F4E9C7C, 0x3508DA39,
+0x530F9DA0, 0xFFD20E32, 0x395F7963, 0x1C48B3F7, 0xD3BC29C7, 0x4D6ED90F, 0xC1C9EF58, 0x9B9D4A13,
+0x417BF36E, 0x1BB5FDD8, 0x72793F28, 0x2F297FA5, 0x204AA988, 0x28317636, 0x87878EC8, 0x33024F9D,
+0xE651388E, 0x560ACA6E, 0xEC3D0B64, 0xCB515AAE, 0xE42B9ECD, 0x2AE2B0D1, 0xCD659A28, 0x8BD5E4D8,
+0x0D618DD6, 0x14CF8DB1, 0xE9F82BB6, 0x558C50A4, 0xA9809F8C, 0x15646823, 0x6037DB27, 0x26A0ABAA,
+0xF8DC4AC6, 0x533494C9, 0x7BF60155, 0x7BB16D05, 0x89F7A1BA, 0xCB069606, 0x6572D71A, 0x001917EB,
+0xD353913B, 0x128F78BD, 0x83BCE2A3, 0xE0065266, 0x9E7E608F, 0x25889472, 0x184ADD42, 0xD42B429B,
+0x7A8D861F, 0x54C97AB8, 0xB8B04229, 0xDF3DE03A, 0xB97E311E, 0xBB2A1FF8, 0x53AC8D5B, 0x1825B5DC,
+0x9843DD95, 0x0214EAA6, 0x3B1CF504, 0xD3BE316F, 0x9B1D3C64, 0x8EF4A268, 0xFACBC9AD, 0xDCC6033F,
+0xF801E3D1, 0x92F3E3A1, 0x1EC121AC, 0xA6747F20, 0x6ACC34EF, 0x0F641DC0, 0x42CAB9C3, 0xE04036DD,
+0x97739381, 0x9843A304, 0x929E9AB7, 0x600E057F, 0x892D5F1F, 0x0F718281, 0xD345AA58, 0xF39215C4,
+0xBCAB0B51, 0x1EBEA1B0, 0x68885471, 0xB39AD728, 0x2FF70470, 0x80D01FE5, 0xB41A95C0, 0x01DB8079,
+0xA4C9F364, 0x41860F1A, 0xEBE24F2B, 0x086BFFF0, 0x7B66DE40, 0xFFF665D6, 0x18324792, 0x1D253106,
+0xC41B9BF0, 0xC79347BA, 0x6949A396, 0x279E7A4A, 0x4029B533, 0xE8B382E2, 0x89783E24, 0x3D945C74,
+0x49BD75D8, 0xBAD731A0, 0x48B4AFAB, 0x4383B903, 0x8A6966A6, 0x170B9958, 0x58307AB6, 0x3B627463,
+0x0B981BEA, 0xD8E9A038, 0x723219E7, 0x4F6E5470, 0xE4F3CF92, 0x37AACC8A, 0xA4E46500, 0xE44DDA39,
+0x68690180, 0x33143C47, 0x9A6EE438, 0x5FA00F23, 0xD2CEE248, 0x46090D1A, 0xDE5491AE, 0x417D853E,
+0xC607B731, 0x79D7DCCF, 0x13200C03, 0x07CAB5E9, 0xB59525EA, 0xE47B66A5, 0xB125AAAB, 0x20CCFE07,
+0x82F1F4E8, 0xCF44BD2B, 0xC462D58D, 0x60A6A73B, 0x0D0CA712, 0xFE342922, 0x15123217, 0x7A02E89D,
+0x49B44659, 0xB9F3AE54, 0xAFC472BC, 0x79AF1A6D, 0x7430BA59, 0xEA13F81C, 0x33592D7D, 0x1EF1E1DC,
+0xF51FF0C8, 0x80F7B07E, 0xC1536EBB, 0x586CB41D, 0x10AF823C, 0x390EA571, 0x7D54C302, 0xA049ECBE,
+0x368C3981, 0x38B72BEE, 0x833C5F98, 0x2E18D066, 0x5742B0D2, 0xA8F5F0B8, 0x9144935D, 0x7392A908,
+0x3175DBC0, 0x29AA2F7C, 0xF53FED73, 0xFE41236B, 0x091E47EC, 0xD2195647, 0xCAAEA8B5, 0x0ED9750E,
+0xF5027456, 0xF1838780, 0x16FFE8EE, 0xA21568C6, 0xC5E4FCAF, 0x27C24C4B, 0x3DE89E8E, 0x5464ADC6,
+0x865C8493, 0x41032697, 0xD5F82075, 0x49167AF7, 0xED1AA45C, 0xA6B20018, 0xB1776BA9, 0x9F2129B6,
+0x611C417D, 0x3B72E8B6, 0x1AA7DB22, 0xF4ADF40E, 0xA24B8EFB, 0xF25C5F9D, 0xE52C047E, 0x3B8C9A26,
+0x4C0760E4, 0x73027C0E, 0x1F5977D8, 0x6CAF979D, 0xEF39719F, 0x70129F6A, 0x0CC821CD, 0x9853AE70,
+0xC3EB24E5, 0xE4EED628, 0x9F904579, 0xFD680398, 0x2C84DF92, 0xF92DA147, 0xB2F7C7C3, 0x59052EB6,
+0x4DF89375, 0x275D0C58, 0xBE32DA96, 0x7A3C4C7F, 0xC5C2B02F, 0x651B2665, 0x36E5DC9B, 0x98B1F08B,
+0x175A5AE0, 0xBEC258CA, 0xDDF6B687, 0x49E3DBE6, 0x07C1C780, 0x63E3B861, 0x05FDAAEC, 0xFA7C38A4,
+0x5EE93618, 0xF8B78C2B, 0xBB5035B7, 0x7E297AC8, 0x6CC27636, 0x30D44C50, 0xECB1065B, 0xB00AB96E,
+0x87B3C67E, 0x0AA61403, 0xF514C18B, 0xDBF3CEEB, 0x62ACA4C1, 0x9A0D1691, 0x07E3DF50, 0xC42070E8,
+0x98F349F7, 0xC1556162, 0x6F7D7109, 0xF6C7B215, 0x73748B4E, 0xAF9F5BFF, 0xDD1B8AE6, 0xA9C710AA,
+0x5965A4DA, 0x762A0F38, 0xD42C7578, 0xBA69C66D, 0x2CCABCB7, 0x932E7065, 0xD6F3F37E, 0x729F1412,
+0xE5EAEB07, 0x1C2D7291, 0x07E5E6C9, 0xCA16EED5, 0xD488558D, 0x235C11EB, 0x579B8BCA, 0xAC352250,
+0x858BD553, 0xECCBE50A, 0x370421F0, 0xA66CD423, 0x1424CB84, 0x286FBE65, 0xDFF5A1E9, 0x71ABB615,
+0xAE331217, 0xE8E333A5, 0x99044B7D, 0x26264E30, 0x35A7FEA1, 0x3E933B79, 0x4151D8A3, 0x672D78D6,
+0xC586C999, 0xEFFEFF6F, 0xD1EC082A, 0x0EB38797, 0x85F77710, 0x5FEAE876, 0x78FBE4E2, 0x6284663A,
+0x6E54B0AF, 0x5C107AF7, 0x24005DF7, 0xA994E2EC, 0xAFDDB6FF, 0x79019A53, 0xE1B8A123, 0x997B7B95,
+0x9BFC63E3, 0xEAEEB40C, 0x14AECFE6, 0xC29A3F38, 0x21833356, 0x6B65DAAC, 0x9AEADA3F, 0x16582D82,
+0xD6E7B8EC, 0xEE67A365, 0x3F33FD50, 0xABD603DC, 0x0DA08D72, 0x69E01AFD, 0x4862B58E, 0xE1DFCA98,
+0x5FE11079, 0x40992E48, 0x0589689B, 0xE836FACC, 0x87FFD4D6, 0x9F5DF070, 0x6BC69520, 0x5CF6F087,
+0x66523DC9, 0x54D0EEA3, 0xDD820FC2, 0x663BFA8E, 0x2561E952, 0xA82EDAB8, 0x3FC1092B, 0x8591A2C1,
+0x0E9E67EF, 0x4A334D9C, 0x867BB16F, 0xB6A1713F, 0xED8D7EFE, 0xF2926C44, 0xD2E97512, 0xE8301103,
+0x3DD30957, 0xEFB71B3F, 0x4AE801D5, 0x8F75F730, 0x0C34FBC9, 0x7A60C668, 0x77908ED9, 0x963C0DE4,
+0x5279E29C, 0x6759B153, 0x747E5E7B, 0x4C510BE5, 0x32BE2132, 0x54B361E0, 0xCB4D9616, 0x3C404BA4,
+0x4BA0E910, 0x05F06AD1, 0xAE3FBC5C, 0x82CB03B4, 0xF0EC45FF, 0x9888791B, 0xDE4B9813, 0xF83B4090,
+0x3CC4BA28, 0x7CFE8854, 0x9CA7BC9D, 0x0E41843E, 0xF92535F6, 0xF19CC699, 0x0821CBF4, 0xF15F3F82,
+0xCF6CC14C, 0xF27DA57E, 0xB8DB8982, 0xFC7E263D, 0x63C36111, 0x61587ABA, 0xB87CB18D, 0x2C806A64,
+0xD8DFFF2C, 0xC8540E77, 0x1A340B85, 0xB6FBA97F, 0x77A1958D, 0x419648E8, 0x80A65729, 0xC3EC1141,
+0x3909010F, 0x84F8C534, 0x2FEDE987, 0x83851AC8, 0xAE88B841, 0xE8284692, 0x3243F04B, 0x9C845E80,
+0x4A7FC52E, 0xF6B1035A, 0x59E1C576, 0x21620CB8, 0xF047E16D, 0x079284B7, 0x00B6C955, 0xA7B19103,
+0x7B9EB069, 0x733E2443, 0x489A6EAE, 0x7BB17B2C, 0x6AB4F848, 0xEFA299A2, 0xC464BE42, 0x36F27FC5,
+0xE70CEAB2, 0x6FCB4031, 0x9C0A14C0, 0x682AA1A3, 0x36E7032C, 0x57BA22A8, 0x085288CE, 0xDE62ADD4,
+0xC0138A07, 0x4A5576F5, 0xC0F33DE3, 0x919ECA7A, 0x14FFDE87, 0x362897AF, 0xD542F683, 0x86FBC0FC,
+0x8CD6DD3E, 0x25832EDF, 0xC2C9EE74, 0xB244A89B, 0xFEAF2F44, 0x1D631217, 0x80BA2267, 0x097D3F4D,
+0x406264AC, 0x0571B5FF, 0x55658770, 0xE12F6AA3, 0x666D9831, 0x37E17306, 0x88D926AB, 0xBB0CC6D9,
+0xA857A201, 0xB24E5A82, 0xF259D2AE, 0xD09D0FAE, 0x87363A50, 0x583F1CC9, 0x653F73F3, 0x0D04970B,
+0x64D1F222, 0xEF7E0E0B, 0x7F5D49DB, 0xAC4549D9, 0x707D1FCF, 0x3A151C06, 0xFE5DEC4A, 0xE3D6CCBA,
+0x0AA3DA9B, 0x4665CBC5, 0xDF7BCD0F, 0x63DD0FF5, 0xC9C2A642, 0xB40B516D, 0xE259A165, 0xE2E454E1,
+0x0A384EDD, 0x1287018F, 0x2A7A8DFD, 0xF854FCF1, 0x79CAA64E, 0x351AC522, 0xEE65C527, 0x7F160E51,
+0xF465AF5C, 0xE671974B, 0xAF75CA8D, 0x47A5EC29, 0x5F93C8AD, 0x6420D4E9, 0xA5CA4610, 0x265F0BF4,
+0x6622036C, 0xB542C8CB, 0xDFD1FA4F, 0x5869BE19, 0x14605EAE, 0xA438FEA7, 0x9523F5FA, 0xE18FCF2B,
+0x5F11F7B1, 0x7A790EBA, 0xDBDD0005, 0x024E0D8B, 0xC387778B, 0x3C0F1274, 0xA722512C, 0xEAB3C2F3,
+0x11B55F3A, 0x9C2DBBD6, 0xA76C80DC, 0xD63A5DD2, 0x320F7AF2, 0xA707544C, 0x889A3C58, 0x50CCA3B0,
+0xD54FE248, 0x22EF12A3, 0xF618F564, 0x1D9266C8, 0x4E08FB46, 0x6D1D41EB, 0x5CFF2094, 0x116ECB97,
+0x46FD4058, 0x38FBE5CC, 0xE008E8EF, 0x578FAF14, 0x3BEED1D9, 0x8C89B4CE, 0xFC0C33D7, 0x0913ECF8,
+0x498D47D1, 0x5644A9B3, 0x6EA66735, 0xA0F3BA09, 0x948B258F, 0xFA8DE3BE, 0x2FB03145, 0x8D0B61B3,
+0x42D6F53D, 0x031FD745, 0xFF86C938, 0xA32BB471, 0x50208969, 0x9F6909C9, 0x680C6D55, 0x13054044,
+0xDFDEBEF7, 0x35600E83, 0xAFB26C47, 0xCAA86F9F, 0x5B5B65A7, 0x599DA0C3, 0x789EC931, 0x0163D6D4,
+0xF7BBA271, 0x5A755052, 0xFA27CE77, 0xD66ED111, 0x7A5BD527, 0x1B26B948, 0xAA11725B, 0x4A6AC4AD,
+0xDD8EA8DF, 0xF0C618D3, 0xF97999E5, 0x00C42C38, 0x8465BE06, 0x7B6912C9, 0x4AF1F070, 0x4F93EEB0,
+0x19A400FC, 0x0F8A6744, 0x7FD642F2, 0x3AE8F32F, 0x84501DDA, 0xB39068C6, 0x2A5BE1A6, 0x08E231F0,
+0xD52F4D13, 0x89326BE0, 0x3981DD90, 0xA986F547, 0xADF1B2E8, 0x6337CFB6, 0x595FCBC0, 0x2D774749,
+0x1D6C5FF1, 0xF403CE90, 0x16792051, 0xCE248A7D, 0x43E76774, 0xA85ED14A, 0xCFBDEB69, 0xDF559AF6,
+0xC3BF33D1, 0xF03BB486, 0x107D04B0, 0x9B9E9432, 0xE4873EC4, 0xFD7C2E89, 0xFA69FD26, 0xD04F8825,
+0xB9C4FF1F, 0x30F0826C, 0x825A8A34, 0x5EBB4ADC, 0xA71C9FF5, 0xE90ECF8A, 0xFEF3270F, 0x25612AB6,
+0xF8560C1F, 0x625A9ECE, 0x12B9B123, 0xA281D55C, 0x276F3B4A, 0x6CDE95D8, 0x7EE9F866, 0xDC769A4F,
+0xC590E1F4, 0xEA845796, 0x013AFD9E, 0x6F8E1A4D, 0xBEDF18E1, 0x2CC567BD, 0x56CBAE9D, 0xF81716E8,
+0x88834AAE, 0x1C67A0AE, 0xDDB4EB33, 0xF0F874E6, 0x4DE9C550, 0xCEAC73AD, 0x5C800FD8, 0x6A31B61A,
+0xA8B3A501, 0x73639607, 0xC95BAE
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
new file mode 100644
index 0000000..584f73a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/3964 + Rv1
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x7AA59474, 0x278430DE, 0x9DAB88B6, 0x0BEEDF84, 0x5594BA62, 0xFB90C4D4, 0xCC89144F, 0x6EFA51C9,
+0xBD811CF8, 0xEEA67D31, 0x1D05C90C, 0xCF7A12F3, 0x81803381, 0x6353DEE8, 0x94A8AB97, 0x9D400375,
+0x176CDCCB, 0x1B48C20C, 0xAF6C7735, 0x1A64E19C, 0x19B2C6D1, 0xEECD84D5, 0x4B73A44A, 0x7CFED0F6,
+0xCBC04D3E, 0x1F7BA9A6, 0xD289B620, 0x561124BB, 0xEC2A98AA, 0x741D9A02, 0x118EC560, 0x61F974CC,
+0xEF2C42FE, 0x460673AD, 0xD9FE6A49, 0x08A5D3
+
+
+output0 =
+0xDA254450, 0x16BF9F14, 0x31785356, 0x9609316F, 0x14ECACF8, 0x5EAB72E8, 0xCFE9F14C, 0x7BFAF0DD,
+0xD4D21E0F, 0x2CC35B1C, 0x92EA0BCC, 0xD25EEE4D, 0xD8E2A9E7, 0x45B61C0B, 0xAE2F6F76, 0x156B1B29,
+0x8A3E15A1, 0x42B06E0A, 0x4A169C2A, 0x54E05915, 0x08197AE1, 0x8A19FB84, 0x88DBEE9A, 0x7E45B393,
+0xFF24E790, 0x6C49A2D0, 0x98AFE8BA, 0x31A7465F, 0x6298CE77, 0x28F248D4, 0xFF59D780, 0x10E4719C,
+0xDD2DEA4C, 0xC9B7F303, 0x19333FB7, 0xFB28275A, 0x6A4A2572, 0x39885BA5, 0x86B27F69, 0xB16EE7CA,
+0x7A07FAE6, 0x6628D83D, 0xEA04E4F7, 0x30
+
+basegraph=
+1
+
+z_c=
+52
+
+n_cb=
+3432
+
+q_m=
+6
+
+n_filler=
+0
+
+e =
+1380
+
+rv_index =
+1
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..79294ec
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..c72680b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
new file mode 100644
index 0000000..a1745ed
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x0ED2B9
+
+output0 =
+0x8b0f2944, 0x8769e4b0, 0x717de578, 0xee86fb44, 0x61760e25, 0x59074fe5, 0xe9a1f641, 0xbbde66f6,
+0x6c68c0bd, 0xdf09f545, 0xd68c48b3, 0x354aca5a, 0x83c83bed, 0xeef81254, 0xcf0dbc28, 0x693c50f0,
+0x9a3cd23c, 0x57e97520, 0x929baf90, 0x8e2ba7d8, 0x5ef0fb8a, 0xffe7b153, 0x9e164074, 0x4d06f0a2,
+0x6bc68e5b, 0xb8274587, 0x69641dfc, 0xf5dc89a0, 0x4f8e741c, 0x1cb682da, 0xc59ce914, 0x8354b8ba,
+0xcbc5fd4a, 0x6fbfd1ce, 0x85f0df47, 0xffdbd201, 0x45818a38, 0x048b52d1, 0x1f634faf, 0x5cb128e9,
+0xb6108c54, 0x78466eda, 0x0f6d92a6, 0x0c7b6be7, 0xe0ee748a, 0xc9a2d65f, 0x4dc2540f, 0x1f5d42cd,
+0x68f26f29, 0x57474b8a, 0x8ae2cfbe, 0x08ef2168, 0x271b2ffd, 0x2e7816f4, 0x7b00c40a, 0x3e23bfe5,
+0x2f3ee3f1, 0x86bd9ff1, 0x7a5538e5, 0x6673490f, 0xae6ba80d, 0x058e0be4, 0x14f9b51e, 0x89a1a5ef,
+0x6ff9cd55, 0x8ed590b6, 0x1907175c, 0xb7b42bf0, 0x15a84025, 0xbd33f5fa, 0xb53d53d0, 0x61d6c75a,
+0x9d8a1eda, 0xb3932c8d, 0x7f9ff48c, 0xa8ed2558, 0xa05cf8a7, 0xccdafaf5, 0xbffeee80, 0x4f48eadb,
+0xa62b030c, 0x7bd235fa, 0xa8de22b0, 0xfe31d275, 0xd29e8be0, 0x386beb07, 0xce4d8545, 0xfbc33ee4,
+0x15e5d244, 0xf6fc92ac, 0x5a84f673, 0x64e55f70, 0xfdfdffc2, 0x8726dd47, 0xf3b5a1ae, 0x9d439055,
+0x54e713da, 0xf53a4390, 0x61cf45da, 0x9c357723, 0xed8c4800, 0xfdcbb758, 0x02d86328, 0xf3d4e1f6,
+0x2fc0f911, 0xb8faadb0, 0xf4d65deb, 0x43bbc6ab, 0x7bdad277, 0x6603c0a8, 0x027903c5, 0xdabfa36a,
+0x92c58ae7, 0x6e9211b3, 0x54c48400, 0x7ecddba4, 0x81e4b116, 0x5b407871, 0x3f427c20, 0xf6ddfe52,
+0xf0eba4f5, 0x2975c9d7, 0x376fc393, 0x3b0bead4, 0x89be294a, 0xc7fd591d, 0x43c2455b, 0x9dc322fb,
+0x00ca6a02, 0x35cccdf0, 0x60d8502b, 0x0500b498, 0x35ab1618, 0x73c6ddab, 0xf0df58da, 0x3e904c4b,
+0x133d6b4b, 0xbdad7f42, 0xee7d1e0d, 0x49fe242c, 0x09e120ad, 0x646339df, 0xa0cd9509, 0x92c6c672,
+0xb864089f, 0x22225244, 0x305f8384, 0x9b4166d5, 0x704fa445, 0x9fca2e0d, 0x839c9f87, 0x7ef495a9,
+0x579e0f8c, 0xa47f1a9e, 0x86581a5c, 0xb81b9445, 0x5acc608e, 0xe369e9b3, 0xfeb80ee5, 0x1399ab02,
+0x30a74bea, 0xcf08b948, 0xb0857028, 0xcd4f9d8c, 0x61e46763, 0xbff862f4, 0x096d276c, 0x72152f4f,
+0xe98e2f04, 0x7407c828, 0x85ee9a47, 0xf99cf671, 0xd7d40758, 0x89ee7d21, 0xb8732d5f, 0x4786742e,
+0x58ca1a9e, 0xe6276c4e, 0x18f29bb1, 0x757e3350, 0xa49c393e, 0x112a978d, 0xfecfbfa2, 0xb0894694,
+0x62fdcf29, 0x7ce4fb98, 0x41eaa9ac, 0x4cfdb430, 0xfe1bbc8f, 0x03e390bf, 0x0c4f25cd, 0x53b11485,
+0xa6734572, 0x923d31aa, 0x72ccb4bf, 0x82b541cc, 0x5f6dd559, 0x7ae48be2, 0xb376651c, 0x9c707d4c,
+0xa0fd5e5c, 0xac767a3a, 0x7f8d546f, 0x83d3c07d, 0xa6059a44, 0x03da8242, 0x71112091
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24A_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v9503.data b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
new file mode 100644
index 0000000..c3911d3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
@@ -0,0 +1,196 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C, 0xE1952001, 0xB77912DE, 0x52E8BA16,
+0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403, 0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC,
+0xA40F8094, 0xABF43E46, 0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8, 0xBC563FD5,
+0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E, 0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854,
+0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB, 0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3,
+0xB8E4AFE9, 0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87, 0x3E146A49, 0x0391D092,
+0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024, 0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1,
+0xDCD211C3, 0xBF6B0B87, 0xA1624F47, 0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795, 0xEB08B437, 0x1A9899A0, 0x26484B82,
+0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B, 0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B,
+0xC01C79FA, 0x622B9FD8, 0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x6F4B
+
+output0 =
+0x6ED462FE, 0x29726470, 0xE49C87C1, 0x6594725E, 0x64C81AE1, 0xA30C91C2, 0x5B4261AB, 0x7A44E3A4,
+ 0xACBD3DC8, 0x319AF530, 0xF3B21EC1, 0xAC180011, 0x26319FF9, 0x5946FBFD, 0x6F31959A, 0x571501D9,
+ 0xFB1F62B7, 0xF19F6C36, 0x43436C4A, 0x8CA5F436, 0x18AF91B4, 0xD86ED79F, 0x8732D29C, 0x6CE3B559,
+ 0x2DEA712F, 0x52C2E21A, 0x5C4E884C, 0xD2F50500, 0x2140E848, 0xABE47066, 0x8AE3FC46, 0xF0298999,
+ 0x829FE184, 0x51D53B6B, 0x7546D03C, 0xF1CB22DA, 0xB9D6F966, 0x85660A1F, 0xC1296566, 0xB2122E16,
+ 0x2AA38C25, 0xD7AF18FC, 0x489BDDC5, 0x93183097, 0x4C694A3C, 0x40B325F8, 0xEE05DAB2, 0xA6E0C990,
+ 0x839A7753, 0x0251D207, 0x5E1EC6B5, 0xED523076, 0xD985E23A, 0x8CA88259, 0xB0EFF6D4, 0xA9D7749B,
+ 0x32CA6F0E, 0xAAA84E97, 0x0F137B83, 0xE73C3175, 0xA3940FDA, 0xD878B121, 0xFFC8D2EC, 0x95CB65AC,
+ 0xB1CBE446, 0x73520449, 0x7D929F16, 0x69D1873C, 0x85640C01, 0xF2228024, 0x0A5E0461, 0x58B0933A,
+ 0xD37E2375, 0x36CEECEF, 0xE57A48F8, 0x4A35B5C9, 0x016A16A0, 0x6F9BCF30, 0xEB7C3BD0, 0xB1AF27FE,
+ 0x9C389360, 0xA91F2142, 0x51E618D3, 0x5F045697, 0x654C6A49, 0x2E38E30C, 0x9E8F1E63, 0xF1B25686,
+ 0xA0CDFB02, 0xDAEC605D, 0xED910B79, 0xA8E1A341, 0xAD6BD0A3, 0x03BABB0D, 0x4059355C, 0x5ECB8646,
+ 0xFDD9E0C6, 0x69106FD2, 0x47BF857E, 0x740F6313, 0xAB15E1FF, 0x94B21225, 0x600FEDF3, 0x1EF83A71,
+ 0xCE6956EE, 0xE538FC7D, 0x47520BE0, 0xA1A20CF2, 0xCB452B91, 0xEACB9E3C, 0xBA242A34, 0x13C81868,
+ 0xA58AB271, 0x724B350D, 0x95131286, 0xCF74DD61, 0x1D0CF41B, 0x38D046D2, 0xB709708D, 0x4D479AA8,
+ 0x3CBF6817, 0xDF115777, 0xBE69B850, 0x071A2B4C, 0xF3246B56, 0x2881CBA0, 0xAE158E87, 0x36538CB0,
+ 0xEF879197, 0xDBA9C1C7, 0x4EF7235A, 0x56120670, 0xC22DBEC7, 0x7071A05C, 0x376ADBD4, 0x5DD586FC,
+ 0xA638A621, 0x6D49A92A, 0x66F0C925, 0x023FC9DE, 0xF7CA1D36, 0xAF19A18B, 0x2A787792, 0x518938D7,
+ 0x25DE7B4A, 0xDEBD9010, 0x9683558D, 0x9C5694C7, 0x8B2558D0, 0x790CD121, 0x0A35C0D8, 0xCD4FBCED,
+ 0xB89F3275, 0x64A49655, 0xED7992A1, 0xAFB0A4D0, 0x29A9EB1B, 0x9244B2C0, 0x2CD88F45, 0x4AA1E98E,
+ 0x8E32CC3C, 0x8BE5DC7B, 0x759C8B24, 0x8AA119BE, 0x9CFEA065, 0x071F86FD, 0xB83F8181, 0x604FF2FB,
+ 0xAACDC394, 0x0BCC72F5, 0xE9C0CB19, 0x56EAE15F, 0xD33B8DEF, 0x01A1B007, 0xBED7C1A3, 0x18788E49,
+ 0xB565EA30, 0xC269F619, 0x1CF1B024, 0x067E9F59, 0x78E61AB4, 0x3D46CFBB, 0xE58E910B, 0x8E7ACF53,
+ 0x1EB9C15D, 0x4E3C43BF, 0xEF3D8F20, 0x5CC0A030, 0xE10AE4E7, 0xABE24941, 0x9A0C4046, 0x24E090CF,
+ 0x3248C414, 0xAF76560F, 0xCD1B106C, 0x70438AD4, 0x3463D8B0, 0xD85860FE, 0xFCDF0D57, 0xA2DBC09E,
+ 0x44C728C1, 0xD8FEE73E, 0xB1E6B4A5, 0xD0CC95CD, 0xCCEF186F, 0x70AC5D98, 0x57D21267, 0x8543F446,
+ 0x15C8EAA9, 0x0DD357D4, 0x4CE9C090, 0x4E91FADF, 0xE0658E27, 0xFF7AA5D6, 0x176ED723, 0x70D009CB,
+ 0x416ADBAA, 0x1C45865D, 0x105F3A0E, 0x14730450, 0xD0FA1AC9, 0xB76F268C, 0x7B075289, 0xA9455796,
+ 0x65E02F3E, 0xB74521F2, 0xF6CAA6C7, 0x94ABFDAD, 0x1E6D1087, 0xC25A9257, 0x87FAF9A4, 0x5184A0FA,
+ 0x240023D7, 0x7AE0ED45, 0x06E0A838, 0xBB018F31, 0x0FA836D5, 0x09CF6AEC, 0x9BC4F2B2, 0xAE92D5BA,
+ 0xE724036E, 0xE5606DDE, 0x631448F9, 0xFD59B782, 0xF17052E4, 0x66EA4C50, 0xF72C1768, 0x5C24ECEC,
+ 0x6B01B118, 0x89F8A3AB, 0x465FF462, 0xC3896A00, 0xFEC06004, 0xE2DFC70C, 0x3ACF338F, 0x1552E9D0,
+ 0x9F699B77, 0x60AC6D29, 0xBF47FD38, 0x826B0CA8, 0x0515A7AC, 0x1380A222, 0x7D054EA0, 0x3D1BCEC0,
+ 0x21AB6CF3, 0xA889E915, 0xF09D9756, 0x08BA519A, 0xCFFB6BD3, 0x7D5EF4F9, 0x34A0E942, 0x8569A327,
+ 0xFDDC5269, 0x60D8D543, 0x88B34B88, 0x50DEAA10, 0xD0563E1F, 0x80CD122B, 0xDC11607F, 0xCD9D7E05,
+ 0xC0F3510E, 0x414A7545, 0xB8211557, 0x103E6F53, 0x08A47672, 0x04D9C391, 0x3281F25C, 0x7526AAD2,
+ 0x3C89B43B, 0xBA767E59, 0xA2788EAC, 0x5EF9DF3D, 0x8F72BBE6, 0xC4B52A2B, 0xE81A80E9, 0xCD6B24D5,
+ 0x4F934751, 0xA3FCC2B5, 0x1C4FB12A, 0x7C363E45, 0x237CB63A, 0x1F26D6FD, 0xAAF3FE61, 0x48D3B3A8,
+ 0xA2A77A81, 0xADCF4AB4, 0xDF94F9B4, 0x465EA838, 0xCE4BA15C, 0x75826F5A, 0xD537E32C, 0x85F8FECD,
+ 0xD07CAB1C, 0x34F91310, 0xC40B36CA, 0xCCE0297E, 0xFB276610, 0x67DF82EC, 0x8BB58FAA, 0xCEA3BDC2,
+ 0x02B21D68, 0xCC1F8A6C, 0xF902AF4E, 0x271828EA, 0x9028298A, 0xB5BF0156, 0x5A3B3188, 0x6CCB6806,
+ 0xE2F3A4A2, 0x3B776BB9, 0x66D01790, 0x133F2414, 0x1445FE7D, 0x5CC79E5B, 0xB95FD30F, 0x50971FC5,
+ 0x8D6AFECA, 0x3FB2427C, 0xC1A980EC, 0x54C9F2AF, 0x0F509DF3, 0x1B950AA4, 0x1E5B1596, 0x93E974B9,
+ 0x71D51A0F, 0xC973F4DD, 0x79BF62A6, 0xC72F58F9, 0xCAD478D6, 0x0F7C36C7, 0x05D08481, 0x43958D67,
+ 0x93F11E1A, 0xDCDDCE62, 0xB457AC62, 0xD4A98268, 0xA793471A, 0x7AB637E0, 0x1B9BA86C, 0x456B5EF7,
+ 0xD2E75711, 0xF95E6BCD, 0xD3043467, 0x056F1621, 0x21D58D4E, 0x0C9EF57E, 0x96B645B1, 0xF5A80340,
+ 0xBD9A4C7A, 0x4D94A305, 0x59D0F9B4, 0x113F56F9, 0xE0A948B5, 0xBF982299, 0xA05D1EA1, 0xE9C50F8A,
+ 0xAF6B8F04, 0x6B05485E, 0x17DD458A, 0xFB819464, 0x5CE2F61F, 0xECF95F48, 0xA26CFBA2, 0x6A0FD00F,
+ 0xA7A2CB0F, 0xFE10768D, 0x4A258743, 0xBBF2C41A, 0xF519DBEE, 0x9DA676B6, 0xE89449C9, 0x3E13EBE5,
+ 0x4A4A42A5, 0x42663182, 0xDAAF85AB, 0xCC671BCB, 0x217491EE, 0xDCC9B6F2, 0xE1A3A7EA, 0x7B13F2F9,
+ 0xCFFCBC9F, 0x3D8FF387, 0x71ABA888, 0x2D3FE4C1, 0x081AB3DC, 0xBF21BA4B, 0x4ACE0F00, 0x6F5AB592,
+ 0xD328F08C, 0x542388E9, 0xE7A4157A, 0xE8532856, 0xE8DC528E, 0x3F2356AE, 0x76867882, 0xEC11E6D0,
+ 0x0C2DD257, 0x40A7C558, 0x354F885C, 0x2A2E0757, 0x6C0A6D95, 0xE0C23A09, 0xD1F32FF7, 0x7E27842E,
+ 0x3CDFD97E, 0x2F6807FB, 0xDBED07BD, 0xA039645B, 0x324B0955, 0x73620D27, 0x0C47D75F, 0x511BD37A,
+ 0xE80C4C44, 0xA3D77AFE, 0x058B503D, 0x391AC187, 0xD7425F0B, 0x93876765, 0x10CADF4C, 0xC4F3539A,
+ 0xF17B776C, 0x017BDEFA, 0x74F4651F, 0x65FBC1E5, 0xF55CC6B6, 0x1752401A, 0x85FB6434, 0xB8FD0F06,
+ 0x4D0D80FF, 0x0DD8438D, 0x1C5844B7, 0x31ECF66B, 0xF8A8B528, 0xA9BE0373, 0xC401C7FC, 0x3BA1FFF4,
+ 0x63946BBD, 0x82514893, 0x9CE303D6, 0x51EA2484, 0x054CACA2, 0x3F812B32, 0x0F3C603F, 0x4B3D86B6,
+ 0xD33F5950, 0x3340BFC0, 0x47CEB79D, 0x1CAB5D3C, 0x74897EB5, 0x1C320D6D, 0x8F0480D2, 0x1384331B,
+ 0x8363A7B3, 0xA5439504, 0x0E06AA80, 0x4BBFF55C, 0x470094F3, 0x8DE8E9AA, 0xABA72796, 0x4333B263,
+ 0x6FEF04EB, 0xF921C722, 0x9599B4C8, 0xBFEFF55A, 0xF89AA502, 0xDFE85218, 0x0EE15930, 0x8B2AA7F8,
+ 0xDDB03823, 0x7427A3C2, 0x8E4AF556, 0x66A9640E, 0x2EA271AE, 0xFC5BB50C, 0xDC50B432, 0xF78BB3D6,
+ 0xA06156DE, 0x5A7D7A40, 0x40BD74BF, 0x882CC19B, 0xDB2B6143, 0x5532686C, 0xA6D65320, 0x6AB5B32A,
+ 0x34129535, 0x9E41D92F, 0x3D86A085, 0xA27DE0C1, 0x6FFBEC11, 0x77A4BE81, 0xCE1DF886, 0x318E96BA,
+ 0x82C84B84, 0x40B9874F, 0x39F9F9A9, 0x21E0AACB, 0x237FC858, 0xFF700E2D, 0xA840518D, 0x5E5ED583,
+ 0x7B11CB4E, 0x99733B7F, 0xFFAAF7A9, 0xB8CB13B7, 0xE67AE45C, 0xFFDA2FC2, 0x47D08BD7, 0xD68BACF6,
+ 0xDAAE30ED, 0x95735CAF, 0xF896B165, 0x395BC94E, 0xADF803B0, 0x76B82F4D, 0xF312DD33, 0x0DD0A49D,
+ 0x0852B35E, 0x4DF14366, 0xBA01C779, 0x1415A8FA, 0xDC10F525, 0x1CE06D80, 0x953089E6, 0x933C3EE5,
+ 0xC18B1022, 0xFAD11D71, 0xA1EA92BF, 0x2AE61798, 0x63D0C0CF, 0x1CF8CA34, 0xDF748AFB, 0xF0FDE897,
+ 0x26FC4399, 0xE563FFC5, 0xE6AFE218, 0x5EE3254B, 0x76565E08, 0x70F5EFBE, 0xBD66AC9A, 0x90853CB1,
+ 0xA002CE55, 0xAFE263F4, 0x804DA5A5, 0xBB971F95, 0x775BDE46, 0xEDA15B5F, 0x3D5A2CFE, 0x6D9FE953,
+ 0xE84541F5, 0x6574FB29, 0xFD3ADC69, 0x1BAEDDED, 0xE3F810C2, 0x87CC8D7C, 0xDC23F894, 0x7635A6DC,
+ 0x294E131B, 0x62FA4471, 0x83D3870E, 0xF82B9324, 0x8A493E04, 0xA8FCDF75, 0x20583A80, 0x5A94424E,
+ 0x18CED906, 0xB417F24A, 0x47089341, 0x62A432C0, 0xFDC17DFD, 0x5B89C6D2, 0xC8C8ED37, 0xD44D38B1,
+ 0x9A6DFF2C, 0x7C5ECB65, 0x76814C50, 0xB3D56A33, 0x5DF124F8, 0xDB92A5D9, 0x210F2E0D, 0x50FFFF1B,
+ 0x1B7ECD90, 0x481ED2FE, 0x094DA8E8, 0xF111F8FA, 0xAC7872DF, 0x4B8FE240, 0xA7CF01FD, 0x72AFAF1B,
+ 0x27BE7F7E, 0xE5F42B34, 0x02807296, 0x325F9CF6, 0x97EE1C92, 0xD5E6F65C, 0x7EA2490F, 0x666E3451,
+ 0xB17E6A43, 0x1AFBE46E, 0x8D2B871B, 0xD52A1A9E, 0x41EBA711, 0x9D4B906B, 0xAEB5A2F6, 0x7EC530E7,
+ 0x063FC87E, 0x48830732, 0xE5EC2B25, 0xA17B0F26, 0x2C63A878, 0x7A1362A1, 0x68B4DE31, 0x6EC14B7E,
+ 0xE65C3B05, 0x8EB452EC, 0xB6DD94CA, 0x8DC592C5, 0x402EA8BE, 0x689F131B, 0xDA3A54D1, 0x41D264AC,
+ 0xAD150ECF, 0xD7750790, 0xBD46E2A0, 0x2DC97F87, 0x2476F6AE, 0x28F4778E, 0xB4B9E75A, 0xE5532AD6,
+ 0xE58A7485, 0xDFDD2553, 0x779D3F91, 0xD89F3033, 0x42BB4152, 0x2F6EFB01, 0xF72C43BB, 0xF1DB8663,
+ 0x5BA625E2, 0x17180017, 0x151F03B3, 0x7FDA9772, 0x1DEB2F8D, 0x178DE5EE, 0xDFF10ACA, 0x2DC29F2A,
+ 0xF2797346, 0xC298535D, 0xB56C1D35, 0x6389138B, 0x54B732AE, 0x3FAF9958, 0x3BFE3E52, 0xA311D83E,
+ 0x50E7B0BD, 0xC28F97B4, 0x8C1FAAB7, 0xD22BD453, 0x4E6A4D65, 0x626B6251, 0x1F547F6C, 0xEF8105A0,
+ 0xB7A062B6, 0xE1325CC7, 0x8207E7A2, 0xB0A9E0D6, 0x097B78C1, 0xC41D4176, 0x13DB573C, 0x5291E598,
+ 0xF4D1AFB4, 0xA93FE970, 0x673042D8, 0xCC98A35A, 0xCEBD4AE5, 0x47B8BB39, 0x5F8A294E, 0x37FDA881,
+ 0x9E81D5BD, 0x47691BD1, 0xFB92FBF8, 0x24AA898D, 0x0D0B5B29, 0xE5E11928, 0x7D356637, 0xC4525D0E,
+ 0x72AFE781, 0xEBE53FCD, 0xBCBB299C, 0xC40B26D3, 0x1C049A63, 0x4621C7F8, 0xD3337531, 0xF5CCAE80,
+ 0x5D3D0BB7, 0x2246BD17, 0xF158D4F9, 0xE5CB58A2, 0x07F5F1E1, 0x9D420346, 0x952C186B, 0x9DBB2227,
+ 0x203D1639, 0xC022D8AD, 0x7A91F3DD, 0x9326CB7B, 0x2971F3FA, 0x7EF8C14B, 0xB7B468DA, 0x840A9104,
+ 0x6F811C48, 0xC0DAC40B, 0x68D75281, 0xB7DCB2D8, 0x9A216C54, 0xEE710DB9, 0x54ADDAC6, 0xF6F71ECF,
+ 0x6F1E0D83, 0xDE5ECA0D, 0xEA40DE93, 0x962D60E7, 0x6B575E29, 0xFFCC6677, 0x0D879692, 0x728CBE24,
+ 0x9011B3F8, 0xAB260F9E, 0x5D71E2CA, 0x501F6613, 0x5F16EE75, 0x0D33E974, 0x8865BBE8, 0x10495EA6,
+ 0x393032AB, 0x6C7F4A61, 0xB685D152, 0x29D429A4, 0x24CA7E33, 0xCD26F3F2, 0x78D85078, 0x0BA90BA3,
+ 0x360CB744, 0xDF999168, 0xB60B3644, 0x39EED49A, 0x4A794E4A, 0x3B6715BF, 0x92D35DC9, 0xF640ADB6,
+ 0xFA96EF3D, 0x0DC22AD1, 0x48262E68, 0x6F620F37, 0x6B29E242, 0xC6FBEEB6, 0x3034A0D9, 0x122EF44F,
+ 0x7EEF61DF, 0xF3854D20, 0x0F84C1DB, 0x0DE504BF, 0x8AE763ED, 0x369AD35F, 0x8BA7B643, 0x44933BB5,
+ 0x49E96357, 0x4C7F9884, 0x2A5BF491, 0xBB8DCDC2, 0x3873C5F5, 0x0DB1AB26, 0x09FF188A, 0x93DE180D,
+ 0xBA757CAC, 0x06AFFBE6, 0x12B37F82, 0x150D3234, 0xC2C0AB1E, 0xC8B4D8F3, 0x65B7BB96, 0xBBF951B8,
+ 0xC4A03C44, 0x7E2FF9B6, 0x86592827, 0xECE0BE1B, 0x0DB32865, 0x5FC2CD73, 0x34AD2D16, 0x3B2057A7,
+ 0xC32C663F, 0xA85CD1EB, 0xEBD5BCF3, 0x439DC2FF, 0x93379CAE, 0x99273984, 0x3659A11F, 0xD5FF53BD,
+ 0x38704C43, 0x3D782532, 0xD7306729, 0x420E909F, 0x4840C5F3, 0xDA80DF8D, 0x53395E04, 0xEF690DCF,
+ 0xF9738931, 0xE91F7065, 0x5EB901A8, 0x176C6A2C, 0x25D062AE, 0xE4CCCB95, 0x93C87277, 0xF8FF911C,
+ 0xD7AE6706, 0xE704A40E, 0x38BCF64B, 0xDDFFF9FD, 0xD1BDE381, 0xA4313A0B, 0x48DDA520, 0xD064D1E3,
+ 0xDBFD61EC, 0x7EA87E9A, 0xF894AAFD, 0xB5565368, 0x2C34933D, 0xF0F50DE9, 0xF91EB25C, 0xE3EC3B8E,
+ 0x5E9409A7, 0xB2A9D39A, 0xB6B19F3F, 0xA6685DC9, 0xCAFC5B74, 0x4CC15F7F, 0x114E5709, 0x31B6E0EB,
+ 0x8CDAA5C4, 0xF5ABD631, 0x12A4A9C0, 0x969011BE, 0x9AB39E96, 0x0D406569, 0x8AE25103, 0x68474C26,
+ 0x9E8D006F, 0x9C8E4F0B, 0x314630FD, 0x2F30B254, 0xFE88FCF4, 0x941FBE2D, 0xC03B55A3, 0xEE474898,
+ 0xEC9B3BD2, 0xDDE00C4B, 0x7F192B54, 0xA25A0DC1, 0xDCF18F59, 0x55F674B4, 0xF6734A46, 0x92B7A7E2,
+ 0xCEDA18D8, 0x90EA738E, 0x7C98FEE8, 0xFC3DE7ED, 0x4075569F, 0x8989B676, 0x326B34DA, 0x52AC749C,
+ 0xAF71ACF8, 0xDC1F65F4, 0x408459F9, 0xD46B650F, 0xFAEDB779, 0xBC0C6EDB, 0xF68DB879, 0x40071FCD,
+ 0x2D01AC86, 0x7952D58A, 0x4F7A42BA, 0xD5C9306C, 0xFA7CC252, 0x48285F83, 0x51CD6BC3, 0x8212BC4D,
+ 0x53828B06, 0x8986B36F, 0x6E00951C, 0x6505074F, 0xAB3AF4CC, 0x12D92810, 0x44F4D0B5, 0x0D7DBCDD,
+ 0x152A5968, 0xA92C4ECA, 0x6795E17F, 0xD02C875E, 0xA4B5A04C, 0x2F0C4295, 0x72678451, 0x59B87A4C,
+ 0xB3AD2988, 0x7B717173, 0x6D0EC6EB, 0xF73B4FC7, 0x645D56E0, 0xBC73769E, 0x9A83ED5C, 0xCE5B332A,
+ 0x151A4D6C, 0xDEB26C33, 0xBA7CFEA9, 0x0FB2D875, 0xE0045E66, 0x9DB0072A, 0x5CFB3C42, 0x8C3FEFD5,
+ 0x4E7CB65C, 0x2905EC79, 0xA2F6C308, 0x296A6794, 0xB589571E, 0x4638BC8F, 0x964B8B40, 0xBE27615F,
+ 0x4E95C30C, 0x2B56A6A8, 0x4BC50BC3, 0x497BB78B, 0x8860A6CC, 0x80830DB7, 0x9D726E3A, 0xE63600FD,
+ 0x7A68F80B, 0x1C5CCCA0, 0x1784B6A4, 0xBCA7EF08, 0x425ABF74, 0x3663AD11, 0x72F2AEC0, 0xA4A940F0,
+ 0xBBC08817, 0x5C158691, 0x7C1ECC0E, 0x1818BB5B, 0x0DE17D9F, 0x350D4BB6, 0xAC21F0FB, 0xB913C7B0,
+ 0xE9DC26F6, 0x25B995C5, 0x0D2E9E6F, 0xD39C93A8, 0x1C775CED, 0xF1E69A7D, 0x0025310F, 0x782BBDF8,
+ 0xFD3E83E4, 0xB5DD602E, 0x1CD9044C, 0x2AFC3405, 0x79E32E1E, 0xB59B4A79, 0x4609271E, 0x1C5E4D7A,
+ 0xA74D0009, 0x319A07E9, 0xCAC3A6FF, 0x8B515C07, 0xE80FE11D, 0x1D59CF05, 0x38F946AE, 0x6324D94E,
+ 0x313D3FE8, 0x310AF64C, 0x3CDE2571, 0x0644DA97, 0xEADBF286, 0x7B5DACA1, 0x8D5D3A54, 0x1376A003,
+ 0x51774091, 0x562A7891, 0xC246A9FA, 0x82C1C05F, 0x0D662D24, 0xAEDDA534, 0x5A96ED06, 0x2C055326,
+ 0xB0F2F5B0, 0x21C1F0F6, 0x6C39F1DE, 0xDE48E8FE, 0xB5CD1538, 0xC4E356AC, 0x1B24FE63, 0xF36D1426,
+ 0xB8B827D2, 0x1576F620, 0x3F49589E, 0xC438975C, 0x64880EDA, 0x7C322884, 0xD3978FBD, 0x4787B61E,
+ 0x2E192772, 0x0584B589, 0x0EAAA684, 0x6D81DE51, 0x63717598, 0x08A48B4D, 0x2DF88EC5, 0xA647285C,
+ 0xFC81F7AE, 0x10E48D34, 0x963F5C91, 0x8F592492, 0xC79010B8, 0x8A6D4936, 0x4759E38B, 0xACFC5255,
+ 0x0C9D02B7, 0x1B52A34E, 0x3B0A60A1, 0x1DB4E220, 0x23DCD523, 0xEA42AD41, 0x9B3CB86B, 0x6C503824,
+ 0x41DC835D, 0x22A311A5, 0x7B7AD03E, 0x6AFA5972, 0x3E506D92, 0x04FED79C, 0xCE801EEF, 0x7BA17C52,
+ 0x3AFFBB6A, 0x96A23185, 0x74316B7B, 0x11D330F6, 0x8484E528, 0xB643261D, 0xCC076540, 0x9116E092,
+ 0x4B6D5634, 0xC9532DCB, 0x0CBBB981, 0xE8D8E41F, 0x7573408A, 0x684F202D, 0x9A92649E, 0xF2CF0C39,
+ 0xF6C540AE, 0x29368636, 0x6A5BD7FB, 0x5044B256, 0x35AEC028, 0x8C12E363, 0xE0A2FE6D, 0x9E8EB149,
+ 0x2ED1CF45, 0x54A9880B, 0x4E295354, 0x83730F2E, 0x279AD027, 0x7051921F, 0xC4E219AC, 0x8B540A9B,
+ 0x947E9DF5, 0x28B61847, 0xC4E32434, 0xF9227028, 0x3D489511, 0xD5A41195, 0xA03EE1BD, 0xD761441F,
+ 0x402F7502, 0x5AB68BEF, 0x5555B735, 0x5918623F, 0x983735E9, 0xE332F1B8, 0x48D83C28, 0x81318EE2,
+ 0xABB8AA53, 0x01F0C3CE, 0xB4291A62, 0x89344F27, 0x5FDEEA6C, 0xE6D22F86, 0x9988C7DC, 0x051A1432,
+ 0xE11867BC, 0xEFA49EEF, 0x48AADD79, 0x33633BF3, 0xA56B57B4, 0xA253AB9F, 0x7FC8340A, 0xAB73B132,
+ 0xF1DFB6CC, 0xC5F02EDA, 0x426782CD, 0xF6648D35, 0xB4AB88A0, 0x9BA7B785, 0x67C03341, 0x22612D33,
+ 0xD32ED490, 0xAAA56F6A, 0x37ECD8CD, 0x518E8140, 0x7390301C, 0xB33A9E62, 0x244220D4, 0xD88AE216,
+ 0x9752DEEA, 0xB8A22F50, 0xBFB221CB, 0xDB4D57A0, 0x02D39A0D, 0x8C311F00, 0x1192748C, 0xB9505446,
+ 0x469C1E7B, 0x3AEFF9A6, 0x7CD5ABE8, 0xD849E5F5, 0x1E2FB30A, 0x18879BD8, 0x6DDD966E, 0xC9BD4B8F,
+ 0xCEEBCCD9, 0x0D881346, 0x20
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
new file mode 100644
index 0000000..244bf03
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f,
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
new file mode 100644
index 0000000..ac27918
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
@@ -0,0 +1,786 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7f7f20, 0x7f7f7f81, 0x817f7f87, 0x817f7f81, 0x7f81817f, 0x817f6c7f, 0x8181817f, 0x81818181,
+0x44818181, 0x7f818181, 0x81817f81, 0x817f8181, 0x7f7f81a8, 0x817f7f81, 0x81817f81, 0x7f81816c,
+0x817f7f81, 0x8c818181, 0x7f818181, 0x7f7f8181, 0x7f557f7f, 0x81817f7f, 0x81817f81, 0x815b7fbc,
+0x7f7f817f, 0x737f8181, 0x8181817f, 0x817e817f, 0x81819b7f, 0x7e7f817f, 0x817f8181, 0x817f817f,
+0x7f8c7c40, 0x7f837f7f, 0x7f817f81, 0x81817f7f, 0x1c7f7f81, 0x7f7f8181, 0x3e7f7381, 0x7f81d282,
+0x81817f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x7f7f7f7f, 0x81818181, 0x7f7faf81, 0x7f7f8181, 0x6f81817f, 0x6c817f81, 0x7f817f7f, 0x81817f7f,
+0x8126817f, 0x817f7f81, 0x6c7f817f, 0x7f819181, 0x81a78181, 0x8181817f, 0x7f81817f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7a8181, 0x817f8181, 0x8181817f, 0x52757f7c, 0x817f7f79, 0x817f817f
+
+input1 =
+0x7f817f7f, 0x817f8181, 0x76817f7f, 0x81818181, 0x817f816f, 0x7f7f8181, 0x817f7f81, 0x81817f7f,
+0x7f7f7f81, 0x7f92817f, 0x7f7f8181, 0x7f748181, 0x7f7f7f81, 0x7f7f7f81, 0x7f6e816f, 0x7f7f7f7f,
+0x7f798181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x5b817f7f, 0x81817f79, 0x817f7fa7, 0x81819a81, 0x817f7f7f, 0x7f7f8177, 0x7f81817f, 0x7f7f8181,
+0x7f8b817b, 0x817f8181, 0x907f8181, 0xad927f81, 0x7f767f81, 0x7f7f7f75, 0x81b17f7f, 0x857f8179,
+0x817f8181, 0x1381a37b, 0x6a7f927f, 0x81817f81, 0x81817f81, 0x617f8181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f7f817f, 0x8181817f, 0x81818181, 0x97ad8176, 0x81e38f7f, 0x81817f81, 0x7f81757f, 0x7f81817f,
+0x827f816e, 0xb1978181, 0x7f816e7f, 0x7f766b7f, 0x81817f8a, 0x7f818181, 0x7f817f81, 0x927f818b,
+0x7f819981, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F,
+0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F,
+0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81,
+0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181,
+0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F,
+0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x81817F7F, 0x7F7F817F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F7F817F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x81817F81, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x8181817F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
new file mode 100644
index 0000000..e8aa63e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
@@ -0,0 +1,784 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x818181e0, 0x8181817f, 0x7f818179, 0x7f81817f, 0x817f7f81, 0x7f819481, 0x7f7f7f81, 0x7f7f7f7f,
+0xbc7f7f7f, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f58, 0x7f81817f, 0x7f7f817f, 0x817f7f94,
+0x7f81817f, 0x747f7f7f, 0x817f7f7f, 0x81817f7f, 0x81ab8181, 0x7f7f8181, 0x7f7f817f, 0x7fa58144,
+0x81817f81, 0x8d817f7f, 0x7f7f7f81, 0x7f827f81, 0x7f7f6581, 0x82817f81, 0x7f817f7f, 0x7f817f81,
+0x817484c0, 0x817d8181, 0x817f817f, 0x7f7f8181, 0xe481817f, 0x81817f7f, 0xc2818d7f, 0x817f2e7e,
+0x7f7f8181, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x81818181, 0x7f7f7f7f, 0x8181517f, 0x81817f7f, 0x917f7f81, 0x947f817f, 0x817f8181, 0x7f7f8181,
+0x7fda7f81, 0x7f81817f, 0x94817f81, 0x817f6f7f, 0x7f597f7f, 0x7f7f7f81, 0x817f7f81, 0x7f817f7f,
+0x81817f7f, 0x8181817f, 0x81867f7f, 0x7f817f7f, 0x7f7f7f81, 0xae8b8184, 0x7f818187, 0x7f817f81,
+0x817f8181, 0x7f817f7f, 0x8a7f8181, 0x7f7f7f7f, 0x7f817f91, 0x81817f7f, 0x7f81817f, 0x7f7f8181,
+0x8181817f, 0x816e7f81, 0x81817f7f, 0x818c7f7f, 0x8181817f, 0x8181817f, 0x81927f91, 0x81818181,
+0x81877f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0xa57f8181, 0x7f7f8187, 0x7f818159, 0x7f7f667f, 0x7f818181, 0x81817f89, 0x817f7f81, 0x81817f7f,
+0x81757f85, 0x7f817f7f, 0x70817f7f, 0x536e817f, 0x818a817f, 0x8181818b, 0x7f4f8181, 0x7b817f87,
+0x7f817f7f, 0xed7f5d85, 0x96816e81, 0x7f7f817f, 0x7f7f817f, 0x9f817f7f, 0x8181817f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x69537f8a, 0x7f1d7181, 0x7f7f817f, 0x817f8b81, 0x817f7f81,
+0x7e817f92, 0x4f697f7f, 0x817f9281, 0x818a9581, 0x7f7f8176, 0x817f7f7f, 0x817f817f, 0x6e817f75,
+0x817f677f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x7f619908, 0xb6c9bdee, 0xb903ec9f, 0xd574754c, 0x8e8ca322
+
+soft_output0 =
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181,
+0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f,
+0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81,
+0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f,
+0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81,
+0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f,
+0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181,
+0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181,
+0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f,
+0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181,
+0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81,
+0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181,
+0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181,
+0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81,
+0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181,
+0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f,
+0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f,
+0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181,
+0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181,
+0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181,
+0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81,
+0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81,
+0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81,
+0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81,
+0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181,
+0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f,
+0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81,
+0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f,
+0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81,
+0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181,
+0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f,
+0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81,
+0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f,
+0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f,
+0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f,
+0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f,
+0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f,
+0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81,
+0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f,
+0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181,
+0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f,
+0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181,
+0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f,
+0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81,
+0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81,
+0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181,
+0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f,
+0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f,
+0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f,
+0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f,
+0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81,
+0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81,
+0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f817f81,
+0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f81817f, 0x817f7f7f,
+0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f817f, 0x81818181, 0x7f817f7f,
+0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f, 0x817f7f7f, 0x81817f81, 0x7f81817f,
+0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f817f7f,
+0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f81,
+0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181, 0x8181817f, 0x817f7f81, 0x7f818181,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81, 0x7f7f8181, 0x817f8181, 0x81817f7f,
+0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x7f818181,
+0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x817f8181, 0x7f81817f,
+0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181, 0x817f7f7f, 0x7f7f817f, 0x7f817f7f,
+0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f81817f, 0x7f818181,
+0x7f818181, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x81817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x7f81817f, 0x81817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x81818181, 0x7f7f817f,
+0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f81,
+0x7f7f817f, 0x81818181, 0x7f817f7f, 0x817f8181, 0x81818181, 0x7f7f7f81, 0x817f8181, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x7f81817f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x7f817f7f, 0x7f817f7f,
+0x7f7f817f, 0x7f7f8181, 0x81817f81, 0x7f7f817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f8181,
+0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x817f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f, 0x817f7f7f,
+0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x7f7f7f81, 0x817f7f81, 0x81817f81, 0x817f8181, 0x81818181,
+0x8181817f, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x8181817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f81,
+0x7f7f8181, 0x817f8181, 0x81817f7f, 0x81818181, 0x817f7f7f, 0x7f817f7f, 0x81817f81, 0x7f818181,
+0x7f81817f, 0x7f7f8181, 0x7f818181, 0x7f7f7f7f, 0x817f8181, 0x7f7f8181, 0x7f7f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x817f8181, 0x7f81817f, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f818181,
+0x817f7f7f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f8181
+
+e =
+23040
+
+k =
+160
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN,
+RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
new file mode 100644
index 0000000..a757869
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
@@ -0,0 +1,352 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD5000000, 0x21E8B7C8, 0x5B2F2C4C, 0xB82FC8DD, 0xD6D53ED2, 0xC4E0B4D4, 0x20C8DA1B,
+0x2525D305, 0x3F393034, 0xD52ECB1D, 0x0B3421C2, 0xD0C42E2C, 0xC2303B2C, 0xDF24DC44, 0x38D6ECCE,
+0x1FF54529, 0x2E32132E, 0x26473034, 0x35DE3D10, 0x14B81CED, 0x1AF01B61, 0xBF102523, 0xED35CAE4,
+0xCA412326, 0xDBDDCBD3, 0xDFE700C9, 0x3B21C300, 0xF41F382B, 0xB1493EC6, 0xC941BF22, 0x4FD22F1E,
+0x3CB9C313, 0x263ED626, 0xF3D3343A, 0x34ED4435, 0xB8EDE1C7, 0xE92137DC, 0xB11EBC35, 0x35381DD7,
+0xF143E322, 0x12272EC9, 0xDE4A1D32, 0x31C20C45, 0x3D2F1FC8, 0xCD46303E, 0xDBD6BC2C, 0xF1C8E2E7,
+0x192B2CD2, 0x352B3E2E, 0x463AD92D, 0x4A2A0200, 0xD82AD836, 0xD3CDB81D, 0xC511F339, 0x34E62EC3,
+0xC2DD383B, 0xE329E119, 0x08E4B233, 0xCCCDDC29, 0xD32EC722, 0x3D20C3CA, 0x2EC52110, 0x1AC50B1D,
+0x1F29DFB8, 0x10C33A24, 0x31D94B1F, 0xC338D337, 0xDDC3FFC2, 0xFCAED40A, 0xE6FFDFC6, 0xDFF321D8,
+0xE8192FE9, 0x3FD13BE9, 0xAF3013D9, 0x00BD43D2, 0x35063C19, 0xEDD029D2, 0xBF462B3A, 0xB718F13D,
+0x37C03CC8, 0xB4E9FD1C, 0x48E3D7C5, 0x4230D2C7, 0xD8EC2F25, 0x24D2C9EE, 0xE81D2BF9, 0xECE9F4D5,
+0xE51219F0, 0xE6F534D2, 0x0CCDD24A, 0x38CD173C, 0xE5CD23B9, 0x29E2E233, 0xDDD5A136, 0x13FECE2F,
+0x41DE4323, 0x34DC37CF, 0x22D50526, 0xC5E2CD3E, 0x3F003144, 0x2719DA49, 0xDFACC831, 0xCF11D936,
+0x3DC9C006, 0xB0D8B9C9, 0xD5304536, 0xE7BC0A1E, 0x3EC1491C, 0xF31B162F, 0xC7403F20, 0x3CDE2D37,
+0x262EEDD7, 0xD822433C, 0xE2A72C0A, 0xC43927D8, 0x30B8DCDA, 0xCE16C8BD, 0x1EB72B1E, 0x0C28073C,
+0x35211A11, 0xD0E9D2AC, 0x2832E21C, 0x382BD133, 0x0751DE0A, 0x2DFDB82F, 0xCBE3463A, 0x42D32730,
+0xCCCA32DE, 0xE02C3748, 0x27E3C933, 0x40E0DB15, 0xE025F727, 0x241930D2, 0xD32020DD, 0xD8F2C4B8,
+0x3019EADD, 0xE71C2315, 0xE9E6D5DF, 0xC5CD5126, 0xB41CA746, 0x2FB83CCD, 0x35C6BED8, 0x3331471E,
+0xCC3FBDC3, 0xA8ECCC3A, 0x3526C0CF, 0xD62B39C6, 0x122EA623, 0x20CF2ECA, 0xB2CED000, 0x08C2313B,
+0x3D264ED3, 0x45D4C0F3, 0x36D6C4D7, 0x21D8B505, 0x15DDD3BE, 0x2619D840, 0x3ADAFFD0, 0xCA46DDBE,
+0x15E20E1B, 0xAFC03D27, 0xC409C8DA, 0xB12904C4, 0xAD3F51C9, 0xBB341C56, 0xDCD205E5, 0x281ECDDB,
+0x3FD11FC7, 0xBB49D632, 0xC1BD1CC2, 0xE12ED2C6, 0xDAE04719, 0xDDC54F21, 0x00CF332B, 0xE745DC2E,
+0x51C42D2C, 0xCF5AE21E, 0x0F39D514, 0xD623D246, 0xE2173C2C, 0xD341EF30, 0x291E2929, 0xEE2837BE,
+0x1ECC31C0, 0xD13ADA1E, 0x16CA2DF4, 0x18E636DB, 0x113914E1, 0x3BC2F5CF, 0xDDE01DC3, 0x5225F8D6,
+0xD9CBE9C0, 0x2BEBC7C0, 0x31E1CD29, 0xAC2AD33A, 0xC8CE5831, 0x1E48E62D, 0xF62E37CA, 0xD800B9F0,
+0x3033ED3E, 0xE4BEBFBA, 0xCACA26FC, 0xF133DE3D, 0xEC2CE33F, 0x48BACFA5, 0xC9B7CD46, 0xD4CF1FC1,
+0x4B24C2D8, 0xDAAB3B15, 0xC7F0D93F, 0xE9293C25, 0xC0F0B11F, 0xD7BDCAD2, 0xDD114C1F, 0x27200223,
+0xCD442EC6, 0x2FE9BD19, 0xCDDA27B0, 0xCF322DD8, 0xF7C734E5, 0xDCAFAFDF, 0xDD38CAC5, 0x10CE13D0,
+0x2E1B00E8, 0xE5F444D6, 0x465230CA, 0xD9DCF1CF, 0x35BC2ED4, 0x3CEBCDBD, 0xBA452E2D, 0x07C6C33F,
+0xE3F11B42, 0xC9E136DA, 0x3FCE0135, 0x35D9C7BF, 0x31C732CA, 0x4E33D2BF, 0xDB4B2526, 0xD4BC33C3,
+0x20E1C120, 0x1A301A40, 0xCFCADFBC, 0xEFE357E2, 0xAB3C2ED1, 0x37DB0C3A, 0xE2EDE232, 0x283DEAF5,
+0xCC443B2F, 0x1C365400, 0xD6DFC328, 0x234926B4, 0xC52EC63E, 0x0A38CA47, 0x2EEBD55C, 0xD1DA421F,
+0x462BC4E2, 0x1DEDE743, 0x3BD3EBF5, 0x2B4F422E, 0xE3E80C30, 0x3F3CADC7, 0x2444CA30, 0xC4091AC0,
+0x222DBB15, 0xCC2AFDD6, 0xD4352CCD, 0x03291233, 0xA73EDC22, 0x33D6CAD0, 0x2ED742D9, 0xC117CE2F,
+0x2C1221EF, 0x00C812DC, 0x4CE0CFD6, 0x17F234C3, 0xC9DCB32B, 0xCCCC1BA5, 0x2322D42E, 0xBED82250,
+0xD2CA5031, 0x2EE92411, 0x2F30DCD0, 0xCADA2925, 0xB42529A2, 0xD526E4D6, 0x2F171BC8, 0x322A2837,
+0xD6DD47D4, 0x172D12E7, 0xCCC526CA, 0xDEF43720, 0x28DDB219, 0x025BD0DD, 0x3CD7C7E3, 0xECC42AD4,
+0x342B34E7, 0xE329C1E5, 0xE700EB32, 0xD1ECAE41, 0x2ADACA0B, 0x1CC215E3, 0x29D5CF28, 0xD719D642,
+0xF9DAD2D2, 0xD3E4EA4E, 0xE03B1BC5, 0xEF31D23B, 0xE22B23F9, 0x2FD43443, 0xA9E228F8, 0x283C2EC0,
+0xED2A11C7, 0xECF1BE2B, 0xE3C5390D, 0x2D43EBD8, 0xE0222A44, 0x34D1D9DB, 0xBD1FCDCF, 0x28101F2B,
+0xC42BC3CF, 0x19DBEAC1, 0x47D72F45, 0xB5174435, 0xD4CCEB24, 0xE356E022, 0x38B333BB, 0x3BC73927,
+0xDFE3C627, 0xECC720CF, 0x1BE122FC, 0xFAC539C8, 0xD934D60E, 0xFF3BB81E, 0x32F7E51D, 0xF3FEEA40,
+0xD523F02A, 0xCACAD52C, 0xEB4330BB, 0x372B0FBE, 0xDD11353E, 0x1E24D0D8, 0xD83CCBD6, 0xCAD63818,
+0x120D2ACC, 0xCCA7C93F, 0xC53310B6, 0xFE222AC6, 0x3D26C300, 0x20C72923, 0xD06724CF, 0x34D8CE24,
+0x42AE08C9, 0x3C3DDDD7, 0xF2363225, 0x32CC3332, 0x2213CCC0, 0x27D0E22D, 0xD9D22517, 0x41B5D21A,
+0x3BFD1CDA, 0xD1D8CAC7, 0xD51CD8C2, 0xCE42D334, 0x3FC3E60D, 0xD63BD519, 0xC320CD2E, 0x35BDC63B,
+0xC21BE5D5, 0xCD324024, 0xD9C43FCE, 0x5CC2C1D5, 0x00E03011, 0xD923D9D3, 0xEEB92931, 0x24E536DC,
+0xCAB72344, 0x1E21B8DD, 0xD1D210BB, 0x2ED3EF2F, 0x3BE7DF27, 0xD5DDECCD, 0xCFE7D32D, 0x3CCE4F27,
+0xC512C9D5, 0x1B36F9CD, 0x1EE6C1D5, 0x402EB534, 0x1F1A2621, 0x482F35E7, 0x3B303031, 0xD8DC1EB6,
+0xCCC23338, 0xD92E14D8, 0xE818B353, 0xB2FAE6CC, 0x41D9382F, 0xCB00E0D2, 0xFF002A3E, 0xB9CAC8B5,
+0xA9F53F2B, 0xC7D6C336, 0x2641243B, 0xDC3D1038, 0xB8C2C6CE, 0x3637201D, 0xD03D2F25, 0x33B92EE7,
+0x2DD6CE2F, 0xDD56D31F, 0x29BB3F15, 0xE449CA35, 0x1CCBECD5, 0xC2C2CBC4, 0xE2412244, 0x30B6D42F,
+0x673B341F, 0x2321CF50, 0xC7C7EDC0, 0xC9F63F26, 0xD6D12C14, 0x2BDD30DA, 0x38C000D5, 0x17DA48CC,
+0xC2E2B83E, 0xD73ED9C1, 0xE131C12C, 0xC2FFBF31, 0x27D4DC39, 0x4828341C, 0xCCD5CD3E, 0xD4EEA83F,
+0xC446C5BE, 0x2E1C33C7, 0xEDCFC616, 0x2008DD37, 0x453CC9BE, 0x3538D42D, 0xCB3ACAE1, 0xC7D621C3,
+0xD0E5B6D2, 0x40461624, 0xE420D3C3, 0xC71D39F5, 0x2031D7F9, 0xAFF0D352, 0x3EB8B707, 0xD22D3000,
+0x33E02A28, 0x4026D2B6, 0xCED02235, 0xC3E1CD37, 0xDC3FCB3A, 0x31B3CFDC, 0x212DC7B5, 0xDFB236DD,
+0xBDE2C9EE, 0x2434312F, 0x372F359B, 0xE1AC3532, 0x3311EBBF, 0xB744CCD7, 0x2FC3BD6C, 0xC50537CB,
+0x1DBD2721, 0xA9C82DE8, 0x28CAC0CC, 0x5116211D, 0x3E331439, 0xDCDB10E8, 0x31CAD4B7, 0x00D5B32C,
+0x2BCAAFD9, 0xF54CCBCD, 0xE22BF32C, 0xE9D3354E, 0xC31444C9, 0xCB2F322F, 0xDD36CAEB, 0x1D2627D2,
+0x3DC022E3, 0xDEC3C9DD, 0x431B39D0, 0xF30A373D, 0x15C9F1E8, 0x2AD4D84B, 0x36504241, 0x36C203CB,
+0xCB15E43E, 0xDFF4C8C9, 0x17DD22D7, 0xBC2547CA, 0x24CB26D9, 0x3DE9D021, 0x39A921F0, 0xE0DC14E6,
+0xC500B423, 0x0CC318E5, 0x24DABDC0, 0x49B12C37, 0x20F2D523, 0x2F6924B9, 0x271935BA, 0xE3D6B1E2,
+0xFDC3E606, 0xC3E10A5C, 0xCC50C136, 0x25C4323E, 0x383BE3CF, 0x39E8D1C7, 0xD9342B2F, 0x9EED4137,
+0x2C2B1325, 0x31B5CAB0, 0xD1D6472D, 0xD924DC3C, 0x418EE537, 0x1B140B46, 0xBCDB1806, 0xD7C4B8CC,
+0x37EDCB1F, 0x28C0E1E6, 0xE124413D, 0x29D52CC8, 0xD7BDDF14, 0xB7D020FF, 0xD2DAE61C, 0x3F2D26DB,
+0xCEDB0ECF, 0xDA46EAEA, 0x26E31F2A, 0x0DDADD2C, 0xDFCDDE2F, 0x44BC2F30, 0x3C3CE9DC, 0x24B6DFC3,
+0xDFDA3729, 0x33EBF92C, 0xE620E3E2, 0x10A822E1, 0x28D12CD5, 0xC83ADFC9, 0xB746E025, 0xC23A3128,
+0xCA2AD4E4, 0x202CD518, 0xD51DCD00, 0xE8C517D9, 0xCFBFE2CD, 0xCCDD39DE, 0x1AC9C0E1, 0x18152622,
+0xF5283AB4, 0x223F33E2, 0xE72B1608, 0xD0CF27D7, 0x2D32BC29, 0x28C4CAD8, 0x303130D8, 0x3F15C2E2,
+0xBBE6303B, 0x25CC2EF5, 0x19D62458, 0xEDD21331, 0xCAE5D442, 0xE2C9322D, 0xCC3137CD, 0x2EA6D820,
+0x54C213CF, 0xDAD4DAC5, 0x0015E2F1, 0x2F453615, 0x4ECF1B3D, 0x1AC9CC3C, 0xD1D7AE26, 0xC72EF8C9,
+0x2CCB3C29, 0xCAD0D82C, 0x06533040, 0xB64DD6D5, 0xDC49E628, 0x44E2CCC3, 0xC940CF26, 0x372EE24D,
+0xBBE02948, 0x2A37CA35, 0xEA38E82A, 0x1BC9D0C6, 0xC4422BCC, 0x24C63E2E, 0xE3C3C22A, 0xDADD055F,
+0x3B39C61A, 0x13EFB4C3, 0xCECD3AD6, 0xD0002B22, 0x291A43D1, 0x12D5BCAF, 0x47E8272C, 0x23D21741,
+0x3E332E32, 0x3023ADB6, 0xD7D8D12D, 0xBA164DCB, 0xCCD4DBB5, 0x04232D2D, 0x4CC332BE, 0xD33FB819,
+0x31D02BDE, 0xC8163418, 0x402829CD, 0x373D1D26, 0xCB3439CB, 0xC129CF21, 0xC42E323E, 0x16C74614,
+0xCDD0DD3A, 0xF0C9D5F7, 0x21D938B9, 0x36C52327, 0xD3AA00C8, 0xCE26DD29, 0xD74DE03C, 0xC32BBB25,
+0xDEBB25CD, 0x4A483843, 0x2A35BFD9, 0x3B1940C8, 0xCBC71C2E, 0x47DF1DBE, 0x4437FA22, 0x36CDC148,
+0xC7D3D8E7, 0x33C6AF39, 0xD61DCCD1, 0x4C3D12EB, 0x20C5C5DA, 0x351A2C23, 0x36EB1A17, 0x3134C42F,
+0xF9B2E72F, 0xC64837DF, 0x464438CF, 0x1214D6D8, 0x10EA2F22, 0x9EB95900, 0x1B21C1E0, 0xCBD22E34,
+0x3137C536, 0x27B900EB, 0xDAC60E17, 0xC6BAC5CC, 0xE5D21DE2, 0x2ADDD132, 0x311342DA, 0xBFC4AC3E,
+0x0BD62C3E, 0xDF49CDDE, 0xE021E247, 0xCC2111C4, 0xD72DCD2B, 0xC4BABDBA, 0xE0C8082E, 0x171E30D5,
+0x1E44BD23, 0xB2D824E0, 0xE5D5CA1B, 0x1B26B917, 0x31EB173C, 0x001CEF39, 0x36C63F34, 0xD4EB14D9,
+0xC4251BBC, 0xBF3FB720, 0x3F4DEC00, 0xC6203232, 0xF741D825, 0x1BC31ED8, 0xBE30BF29, 0x2B2C21B7,
+0x2BC8B2D6, 0x1A3AE0DE, 0x3031253D, 0xF10929A3, 0x222EE535, 0xBE1521D6, 0x3734C4EC, 0x262A46EC,
+0x3B4211CF, 0xB429F148, 0xE03E342B, 0x24D2C612, 0x412D2233, 0xAF3BE02D, 0x2F00FA33, 0xCFC2D3C9,
+0x154AB434, 0xE2CEC811, 0xDF37CE34, 0xBF1B43AB, 0x49353E28, 0x3F330B1E, 0x33CC48E7, 0xA7D2DC58,
+0xCBD24C0A, 0xEC1038D8, 0x172DBFD9, 0x4DD51F56, 0xD14930C9, 0x1ECECDDE, 0x113E3649, 0x2D29BB20,
+0xCAD4D519, 0xC2CDD82F, 0xAA0E3BC3, 0xB42220C3, 0x3036F5B5, 0x2A12CB33, 0xD9FE2840, 0x3D2E13BB,
+0xD6BE30C2, 0x2C352ACB, 0xD9282D47, 0xDFDE40D8, 0xACDCDDCF, 0x13EB27CE, 0x45CBCBFA, 0xDF2D322B,
+0xEABC3C44, 0x04C6D9D6, 0x18CB1415, 0xCDDD1F52, 0xC0C7DE3C, 0x19393AD8, 0x39DF28B5, 0xC2DBFBDD,
+0x4E152DE9, 0x312D25D4, 0xECD1DF49, 0xC7C2DDC5, 0x1B3A2A3E, 0xD51FE8C6, 0xD827DDC9, 0xE0C934C7,
+0xBBD10000, 0xDAC6D9D2, 0xF92D1E42, 0x1E65CE2E, 0x3EE8C7F4, 0xD1D3DCC2, 0x17CA3BE0, 0x332A323E,
+0xD7362F0D, 0xE333CBCA, 0x24C750CD, 0xE22E2638, 0xD0BDCBCE, 0x18E12CD3, 0x442DD5BB, 0x362C33F1,
+0x3E152DBD, 0xD2D7E3DF, 0xD8354028, 0x35E533A8, 0xDC123432, 0xEBCE2326, 0xD035D2D0, 0xF4CA28C6,
+0x2BDD42D9, 0x23D82E1F, 0xBC3ACB33, 0xD43902CD, 0x1A293643, 0xB0B9020D, 0x37BECB29, 0x20423725,
+0xC6DC1635, 0xDD2116C7, 0x5612C503, 0x3843D9CE, 0xCD20DA2F, 0xE6D2C5E2, 0x33EB3E30, 0x391C183A,
+0xEECCD2D9, 0x50D0F3E9, 0x3428122A, 0x1D272C3E, 0x1DD0232A, 0xD3E340CB, 0xEA2AD333, 0xEE2422D6,
+0x25B624CC, 0x0000E237, 0xD4E3A330, 0x2C48F4E0, 0xD2B6D6C8, 0x2E2328C0, 0xBDBFE127, 0x3FE21830,
+0xB6360B23, 0xE2CECAE7, 0xDB26CACB, 0xF610C63D, 0xB9B7373D, 0x3DD2DC2D, 0xCC2E27BE, 0xE9EB30E5,
+0x4E3B4EDB, 0xD221E9F0, 0x40EABE42, 0xCAD019D8, 0xCFED3E3F, 0x233F37E0, 0x21BBBA29, 0x2BC205CE,
+0x220F4126, 0x1F33DCCA, 0x42C9FA44, 0x08D13533, 0xCE261FD2, 0x18F21A24, 0xBF39C732, 0x49362925,
+0x31C5EDDE, 0x1DCD12C8, 0x1EBECA2B, 0xDE4FC423, 0x2D24D73B, 0xE3CD2E29, 0x2F1D2114, 0x4D3ED124,
+0xDE264432, 0x3E1A4AC7, 0x1AE4D7E3, 0xCBB714D5, 0xE8C930D4, 0xDD4130DB, 0x3FF71706, 0xD21E380C,
+0xCF2821E7, 0xC4DCD6DC, 0xD4D12FD5, 0x0E2B0000, 0xB731D9E0, 0xD32E3CE0, 0x3F12D60F, 0x3ACC29C6,
+0x3F252128, 0xE3CD5139, 0x3033F445, 0xCFC424E3, 0xE824C624, 0xD641D523, 0x23DAD636, 0xD529F73D,
+0xCF524AB1, 0xC846CFD0, 0x3124EACA, 0xE2DED6E8, 0xE52DE303, 0xE61D33E1, 0x3AD8F00F, 0x24E4E32E,
+0x1BC81AD4, 0xCC1018E0, 0x24C4E826, 0xE033D93E, 0x09DADFE0, 0xDDCBD8CB, 0xD1D13ACF, 0xB816D348,
+0x30E0CAE9, 0x4EDF37A9, 0x0B0FCE1F, 0x49D1E3CD, 0xEF24DAFF, 0x34223BCA, 0xC9CBC641, 0xC1E3B3E5,
+0xCDEF2C3E, 0x3427DCD1, 0x532FDDD6, 0xB8F0F425, 0xDEE7C9C9, 0xC3DBD3C9, 0x26EB281F, 0x1310E0B8,
+0xC032EA30, 0x162A2E2C, 0x0DC7C131, 0x1AD81240, 0x0000E313, 0xDD1CF2DD, 0xDF2FC7EB, 0xD926C532,
+0xD2C31E0C, 0x3021CAC7, 0x3D3531D8, 0xCFCA272C, 0xAF17CFD0, 0x2EC91E4E, 0x483EC3D2, 0x26D1BE1B,
+0x01C832FF, 0xF8DB2BD5, 0x16272CD7, 0xCB3F46F9, 0xD6A43316, 0x1BCCF4E3, 0xC6D42546, 0xD7453106,
+0x11C336AC, 0x30F6B221, 0x34481FD0, 0xDC4CD91D, 0x4E40CE22, 0x3D26C421, 0x21EECCCD, 0xBD3219CC,
+0xEC25E136, 0xF6C7E4C4, 0xFF37E71C, 0x1827EACC, 0x190B3AB7, 0xD12F2ECA, 0x3E26DE25, 0xD1DA1C28,
+0xD4D7BDBC, 0xBB1D23E8, 0x2BAD1624, 0xE4CCDB33, 0x1A3AC8D6, 0x2E2F37D3, 0xCBCF3253, 0xE92F2E28,
+0x2E2E4FD8, 0xDB1A35D7, 0x2DF01EBB, 0x4AE9C6D4, 0xD007E02C, 0x1444C6D5, 0x2E0C0000, 0xC4DBEDAE,
+0x2FCEBFEA, 0x2C3B40BA, 0x142F47BC, 0x1CF00BD6, 0xE0DC27C4, 0xDDE239D5, 0xF9B5DF3A, 0xB5C82FC8,
+0xE0D93618, 0xD8E941CB, 0xDF27E3D2, 0x3CF4D533, 0x31CAE4D7, 0x24E8C738, 0xDA29D1D8, 0xF4ED30CB,
+0xC41C4434, 0xEC35D1D3, 0x231756D0, 0xE9C2272A, 0xD137CAE6, 0xCEBC2836, 0xD3E1D1DD, 0xABCF0B3B,
+0x41CC23B1, 0xD63B4C32, 0x171BDFC6, 0x4FD5CFEA, 0x2E4E50D9, 0xDEECB2DD, 0x233FE437, 0xB01B32D0,
+0x22252EF6, 0xCD2B1C3B, 0x28CDCE3E, 0xC5D82D2A, 0x33C7AA9C, 0xE3E8CE26, 0x591EDF30, 0x21C21ED5,
+0x2A34E8C5, 0xD22A24C1, 0xE0402F3E, 0xCFC0FBCA, 0x33164123, 0x203E3C1A, 0x3CBECCBD, 0x0000D237,
+0xD61ECBCF, 0x1DDFE3F7, 0xDAFC2A29, 0xCA2F2B0F, 0xAEACD72C, 0x3017D4BF, 0xC74F1EB4, 0x2E3FCB3C,
+0xD927BC18, 0xC43922D5, 0xDDEB13C4, 0xA32437B9, 0xEFE81FF9, 0xBAE82C0D, 0xC7E6C9DD, 0xB921D0AE,
+0x39D1E5D5, 0x2E361F3B, 0x2043C9D3, 0xC2011AD6, 0xB3133928, 0x31BCC938, 0xD2D7B6C4, 0x25C04D1C,
+0xC729CEC3, 0x22383E2E, 0x2EDF3323, 0xDBC4DDCC, 0xDFDFD551, 0xE531CA1F, 0xCAD1DFE9, 0x3EBACB2A,
+0x38CF3BDA, 0xDEEC142A, 0x0CDFDA28, 0x071ABBD2, 0x422557D2, 0x1D334039, 0xC5331AB2, 0x21E1D4C6,
+0xB630392A, 0xB6D8C0F2, 0x322E2548, 0xD8C7C3C1, 0xC2E4C6EE, 0xE6E8D3D3, 0xE019314C, 0xE9CC51E4,
+0xBD2EE4C2, 0xDFCC0000, 0xD9EEC634, 0xC137BECB, 0x263C3ADC, 0x11CB4ED2, 0xBB302CA8, 0x3347262A,
+0x2732ED40, 0x3126D9DB, 0xBE391CC2, 0x2B14B7E9, 0x19DBDBC1, 0x23D22EBF, 0xCD23C2BF, 0xB13D392A,
+0x4825ECD8, 0xB620E4F9, 0x373E38CA, 0xBE2FC3D7, 0x3AC1D32A, 0xCF26452F, 0x3B01D1CA, 0x44DA41BC,
+0xBE2EDDF4, 0x4ADECBD7, 0x08D9223E, 0x3BDCDCDF, 0xBDC336D6, 0xC8D7C237, 0x2ABED6C3, 0xEF38AF11,
+0xD5EDD5C9, 0x333A3D29, 0xEAD4DABE, 0x01F2BBDA, 0x3FD8CCEE, 0x3BDBBDBB, 0xC535E822, 0xD5E031C7,
+0xCD1E31CE, 0x30C04919, 0xC8D33AD3, 0xC71F3639, 0xCB2D2910, 0xC442B5BC, 0xC24110A5, 0x2430DD27,
+0xEE3D12DD, 0x2AE45124, 0xD4CA4C3B, 0x2ACC31D6, 0x3941E4BA, 0x39DAF13C, 0xAA98D351, 0xB1DDC0BD,
+0xDED4CBD2, 0x4C2DDBB5, 0xDACFF1DC, 0xDB24DC4F, 0xD3E3E033, 0x1CBF3DBC, 0xB8BB1C16, 0x293E26B5,
+0x223A2A34, 0x2AC5CE13, 0xD7C84002, 0xBF33C0B3, 0xE815D02B, 0xD7CF2DD8, 0xF20DC0CA, 0x3725CCDD,
+0x44C4E4B8, 0x2AC918B4, 0xD7EC4025, 0xD1C53EC6, 0xC0DADFC2, 0xE8C0DD45, 0xD3344C19, 0xDEC741E6,
+0x05302D55, 0xC128D64B, 0x2CB7E53B, 0xDC02E1BC, 0xFDC74612, 0x1F4B1521, 0x3CE9E219, 0x07C633D2,
+0x2836D0B1, 0x27E6D0D7, 0xDDDC3027, 0xEA3A2F16, 0xD226313A, 0xDCDD19E0, 0xCC5CD1DA, 0x412B2FDE,
+0x0E30C7C6, 0xD755DAEF, 0xC62DC85A, 0x40213CD1, 0x42CC0000, 0xE43230C4, 0xC43D22D7, 0x36CB31C2,
+0x3B2E2429, 0xD9D73DC0, 0x43DFD2E5, 0x41B9E2CA, 0x12C7E32D, 0xC6DE9BDF, 0xCBC136E5, 0x24262DE8,
+0x2D1AB81B, 0x0B31BDD9, 0x3EBA1A39, 0x0D322ABA, 0xCCD9B31C, 0xDBD1DE54, 0xDBE3F33E, 0xD3BD38E5,
+0x28272330, 0xCFDCC3E2, 0x153DB3C0, 0x2E2227C9, 0xF5CDCBCD, 0x2338C0B8, 0x2C30C92E, 0x2B4AEA32,
+0xE4E5BA42, 0x45C2F21B, 0xEFFD2D04, 0x3FF63A44, 0xED3DD7DA, 0x2BE4262B, 0x0D3AE8D9, 0xDAEDF922,
+0x263F4E45, 0x1DD0D5F2, 0x4039D7EA, 0x3DDFE309, 0xD021CD37, 0xEA4FC829, 0xDADDC4B0, 0x26E6E2D5,
+0xABDAC00C, 0xDF3945E4, 0x32E6223F, 0xD5D709DE, 0xEC3BECBD, 0x0000DDA5, 0xCB49E8C8, 0xD0F72E2E,
+0x2DE4451C, 0xCB35C4E1, 0xC929D024, 0xE0A839DA, 0x2018BE30, 0xD51E252D, 0x1DE218BB, 0xD4EF9DC5,
+0xC1D6CF15, 0xC6EC202F, 0xDEE0243A, 0xD0CB2437, 0xDB4137C8, 0x1FCCD0CB, 0x494BDCE4, 0x21DDEC3E,
+0x32BFC82D, 0xE312CCD4, 0x24E9E03A, 0x2A25D026, 0x4238E8B8, 0xC53CD824, 0x35CC2CD3, 0x30360D33,
+0x31441C1F, 0x3BC2BB37, 0xBEBFD8B1, 0xBED4432D, 0x15DF3817, 0x0F552C4C, 0x2C3229CF, 0x093131DE,
+0xEADAD0CA, 0x20DB1DE4, 0x36CA19D7, 0x452EC9E3, 0xFAC8F1DB, 0x2FD72035, 0x3ED2E34D, 0x2924363D,
+0xC038C2E9, 0x3AD83425, 0x12D730D9, 0x272326B8, 0xC51F36DE, 0xE8E92A3C, 0x31EACEDB, 0xCB190000,
+0x2C3D1DE1, 0x000029D7, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x6D6C0FC7, 0x695E19CA, 0x7EB05A2B, 0x097E1C19, 0xF638B020, 0x434867BF, 0xB2F7A7F9, 0xD5E4675F,
+0x1484C629, 0x6D2398C9, 0x2E9D9825, 0xF77207AB, 0x2298BE4E, 0x9F0348E7, 0x63F5E6D9, 0xFCED9D5F,
+0xC3156E03, 0x3DDED87F, 0x82A04AD8, 0x46830814, 0x0ABC6AF6, 0x8460B3FA, 0xA125DB70, 0xFD2E5A73,
+0xCCA0D482, 0xD24F74B2, 0xA165BF2D, 0x7AEB7769, 0xD2E8E792, 0x8074937C, 0x304C10C8, 0x04D042E6,
+0x6F6FB346, 0x3F0DF322, 0xC33CCB51, 0x945F718B, 0xDFFAED2E, 0xC6256C5D, 0xEC4EC0B3, 0x6D158698,
+0xFAF192F1, 0x1C1B11DE, 0x1E0516AC, 0xA3EA4F89, 0xB3160AED, 0xB8F5B07F, 0x83DA2542, 0xED25300F,
+0xE72E3F2A, 0x4D65C154, 0x4A4A5AB2, 0x8750C7C7, 0x9186FAF5, 0x40340A94, 0xC5051EB6, 0x9D817A5E,
+0x20FA4764, 0x9B9785E9, 0xAB3A74A7, 0x24780C31, 0x72E2728C, 0x4281C451, 0xC58214EE, 0x17A374BA,
+0xB32FB444, 0x5CEB53DF, 0xA4F9F01A, 0xE040A0D2, 0x5C8387C6, 0xC402D081, 0xEE12B765, 0x66DBDE72,
+0x57768125, 0xA622CA43, 0xE27FC00D, 0x813CCAE8, 0x6250F3BE, 0xBA33C25D, 0x066FA4BB, 0x5D45B957,
+0x693C22DC, 0x2F92B6BA, 0xED8195FF, 0x1A8FA7A2, 0xAA901FC3, 0x5D3D3B01, 0xF9B29B46, 0x264EC79D,
+0x626D3F38, 0x026FC327, 0xC3F162F6, 0x0764E575, 0x64434EDD, 0xB4005E0F, 0xC0C5887B, 0xFC61AFB1,
+0x051E5849, 0x7256EF9E
+
+e =
+4914
+
+k =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..f765d99
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
@@ -0,0 +1,1034 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x21000000, 0x2b3bd538, 0xb93735b8, 0xc7df202c, 0xdb3827e4, 0x24403757, 0xbb23e931, 0x4dc9d04b,
+0x33e84c40, 0xe7dac343, 0xc33ad6fe, 0x0937db31, 0xc1f1e52f, 0xca46d5da, 0xd1b8fcf8, 0xc552c5e4,
+0xffcbddc1, 0x34c414db, 0xcf233f19, 0x1a23d12b, 0xc01539e6, 0x1c2a3654, 0xb9fb1fdb, 0xce2e3d5a,
+0xd64d38cf, 0x4331dd33, 0x1fd1b830, 0x272ac0af, 0x2ec74548, 0x39edde48, 0xdce0e533, 0x162a281a,
+0xb026112f, 0xcee2ec3d, 0xccdad2d5, 0x1c252f15, 0xf4cec5c9, 0xf7d8dec4, 0x343a39f2, 0xbe37130a,
+0xd2d0df43, 0x09202c38, 0xde253c1d, 0x352c2f19, 0xd2e03824, 0x0f430bd3, 0x3ff526bb, 0xcac0483d,
+0x00c8cac9, 0xecd7e347, 0xce280821, 0x27561f27, 0x413c34ae, 0xdde745b6, 0x4030d24e, 0xe115e1cf,
+0xddd54dd7, 0xd147c5ce, 0xd01a2746, 0xd6c12942, 0xc92642af, 0xee28b81a, 0x37222933, 0xe4e121f8,
+0xd8c2211e, 0x43cac91b, 0xdacfc2d3, 0x3acfcbc6, 0xebbecbcd, 0x1c1af2c5, 0x39c0de3a, 0x3237e446,
+0x3d3e3f13, 0x24393bcc, 0xd13c19bc, 0x1dcd53d3, 0xaf14bcc6, 0xc13a3f22, 0xe2c1e6c7, 0xd118c932,
+0xb2152926, 0x1e21ce29, 0xcf2ac6d8, 0xc8232b0b, 0xba22d6d5, 0x25e2e6be, 0x35dcc72e, 0x3adddcc7,
+0x34c422f2, 0xb023bcc7, 0xcd13df34, 0x43c2262f, 0x1b0ccdc9, 0xcd2b1022, 0x25d8323e, 0xd5d9441f,
+0xeb29393a, 0xd2c5ed00, 0xcf13a7cc, 0x10c539e9, 0xf83a3d31, 0xd5d5e3d6, 0xd4dd2cd5, 0xc8cb0cbe,
+0x1c1418c9, 0x35c5112d, 0x2028ebce, 0xd93ac6ca, 0x4042ced9, 0xd7d232bb, 0xccccf528, 0xd522d3b9,
+0x15242128, 0xbf51d1d9, 0x22103826, 0x3a0325b7, 0xcf3ae830, 0x394510c1, 0xe0334744, 0xebf12b2c,
+0x57bb0fa8, 0xcb0f303d, 0xe5f3062e, 0xdf323a0b, 0x1d34bed2, 0x2a1be5b6, 0xc53bcbd9, 0xb04f2fc7,
+0xe736bf1f, 0x0fe9b6ce, 0x37222b25, 0xaae9ce1b, 0xb62fe0e8, 0xc13adc2d, 0xd23c2740, 0xa93de410,
+0x2eafdc3b, 0x2454f134, 0x23d63f45, 0xb1edbf0b, 0x44e83847, 0xcc40e231, 0x05d133c0, 0x08bccf24,
+0xcf49dece, 0xf12c0023, 0x19c8d6d9, 0xd8d03644, 0x4748c0cd, 0x20d03322, 0x1ce62bdb, 0xd02e1ad9,
+0x46391416, 0x30e9ea35, 0xd63ec7cc, 0x3fc9d4cc, 0x41e1c3bb, 0x1920ba18, 0x2d2d1317, 0x2a1bde1f,
+0x1fe1d4c7, 0xc638b2da, 0x2adce33d, 0xb6c6dec7, 0x9fdec6c6, 0x1f3d1add, 0x46192041, 0x38e44c34,
+0x2d2323e3, 0xc9e83ed4, 0xc1cfaac7, 0xc70fc918, 0x2b2bc3ef, 0x21c133d4, 0xc5f10a34, 0xbdc51620,
+0x3bc4383f, 0x3d2fd731, 0x3429caae, 0xd4c5e4cf, 0xd41f451d, 0x2a2837c5, 0x46e1d6d6, 0xd0cb2f2a,
+0xf616d434, 0xbe13293a, 0xcefac92d, 0xc1badc29, 0x1c2b1e37, 0xbd173ac9, 0x3332bfc8, 0xd3cf49d7,
+0xc7e9d0e1, 0xd60037f8, 0x32cf332b, 0xd8412ebd, 0xd9da3fca, 0x2220bb12, 0xc1e316d1, 0x2f4dc224,
+0x3840dc1d, 0x202adb3f, 0x36cdbfc2, 0x23c5d5e3, 0xbb41c025, 0xddcbae17, 0xdbd9c2c2, 0x462d1045,
+0xc3ccd03f, 0x2232312b, 0xcc25d2d4, 0xc90bcdd8, 0xc6d6dc48, 0xd95f28c3, 0xe02a26f1, 0xe125ded9,
+0xd9c049ee, 0x33283431, 0xd23c2dbe, 0xd4d826c9, 0xdb14f123, 0x3fcb3e4a, 0x3fc7c4cb, 0x2fede31c,
+0x372cd243, 0xb7c608e4, 0x33cd371a, 0xd84632b2, 0x3239c2c3, 0xd525f2d8, 0x17b724d9, 0x3f3729d6,
+0x39e3e125, 0x21db42bd, 0x1cb6bb3a, 0x38303a26, 0x3632e32f, 0x2e28ccbd, 0x321bcdd3, 0xca1cbab3,
+0xd636e535, 0x403d2d31, 0x2c262b49, 0xe0d25442, 0xc230e5f3, 0x292523ca, 0x260fe3dc, 0xc81420fa,
+0x0b2541fb, 0xddd95bd9, 0x3e3a48de, 0x212128c2, 0x44e02e30, 0x47d2d83d, 0xc92149c8, 0xd520cad6,
+0x3cc467ea, 0x3f31ebde, 0xe12bd8c1, 0xd8cb2dc4, 0xa6461a2d, 0x16be0dcb, 0x35d82bba, 0xce3653de,
+0xc7db1d20, 0x30b817c0, 0x2746e3c8, 0xdb12302f, 0xd0b93824, 0xdbd0d455, 0xd4d63b1f, 0x2fd0cb3a,
+0x3e26dfea, 0xe0521ec6, 0x3ddac146, 0xdd2b29c9, 0x3f0938d0, 0x3fc713c7, 0x261b21d9, 0xbfc8d3c2,
+0x35de3d34, 0x03fb0fbb, 0xd24bd619, 0xd0283634, 0xdd3add4f, 0x38dce12c, 0x5cd149b0, 0x3e51263d,
+0xb7e2d5cc, 0xca3222e1, 0x222b4f00, 0x46cf1837, 0x333021c6, 0xc33b331a, 0x303724d5, 0x2c4cbbdd,
+0x29e4d615, 0x58c7cc42, 0x3d44dd4a, 0xd010d4bf, 0x26291fd9, 0xb930f3b0, 0xce30ea39, 0x1bd74df1,
+0x23d82bd4, 0xcd25504b, 0xcfcae618, 0x3b351d3e, 0xba37c7d5, 0x33bcd7d0, 0xb4293adb, 0xd71dc6e7,
+0xe1222636, 0xcfee25b7, 0xadc44668, 0x26d332db, 0xce2c1440, 0xc5acbf1a, 0xb6d4d7df, 0x303c26cb,
+0xbd55d341, 0xd3cef3e0, 0xbb44a629, 0x2a36bba1, 0x0d37c70b, 0xd1e734d0, 0xc8cd33db, 0x273d4534,
+0xc5e33d0c, 0x323c21f3, 0x37c5c137, 0xd624c207, 0xeac5c828, 0x1618e022, 0xc332dccb, 0x133ccf40,
+0xb6d7b5ca, 0x275ccd30, 0xc0f40061, 0xc2dede26, 0x22d61ad2, 0xe224c231, 0x2334e63e, 0x13c7e2e0,
+0x33dbcddf, 0x3941b31b, 0x4924cc27, 0x3bd0ed2b, 0xddd91bc2, 0x402c2a17, 0x31373e49, 0xc4e433c9,
+0xde0a3e33, 0x48bcbec7, 0xb3de19de, 0x4c561f3a, 0xc8d9d020, 0xdc3128fb, 0x2e25d437, 0xe62833da,
+0x4fdbd815, 0xe734c0ea, 0x142c22e4, 0x4e37c5ee, 0xe9d7d042, 0xd9d4c623, 0xa4f929d8, 0x2a1f2e3c,
+0x65433a47, 0xc9d8ca3d, 0xf01cd531, 0x4dcbbc22, 0xc5d4e1f3, 0xd33f34c2, 0xc60d1f2f, 0xe1ba2312,
+0xefead314, 0xebbef445, 0xd2d32426, 0x1a41dd2d, 0xd4e3cdc9, 0xefcfd2dc, 0x25cc292e, 0xc3ecd0ca,
+0xf4cc2d28, 0x4de2c525, 0x3100334a, 0x3e12daee, 0xdfef340b, 0xc74938e4, 0xb228d1d3, 0x1348413e,
+0x1529c8f0, 0x482b2cc7, 0x04d8bf1e, 0x3e3bd637, 0xdae0cb50, 0x3334e20f, 0xd4c5e035, 0x52d33734,
+0xed3b2fcc, 0x30e62321, 0xd02633ed, 0x19d5e3de, 0x3821c3c5, 0xd309c7e4, 0xc3e430d7, 0xcb2b22d4,
+0xc6341bd6, 0xd5282638, 0xde2a2a1e, 0x3b3ce023, 0xdd48bdb8, 0x32272ada, 0xd84ae4df, 0xca2d48d0,
+0xd33dc931, 0xb53ed0de, 0x23cd35d6, 0xb216112b, 0xd4c83a41, 0xe9dd4fea, 0xc9d14bff, 0xeba82816,
+0x4ed62d13, 0x37eef1d6, 0xa4dc3110, 0xbcbe2c15, 0xdc354bc3, 0x2ed20d25, 0x131fcac3, 0x25e1dc30,
+0x24c3c416, 0x3035c527, 0x0020001b, 0xeee141df, 0x16ca2fc6, 0x1b2bbe34, 0xd60b322b, 0xee09d023,
+0x3243c423, 0x52c42eba, 0x242fe8c9, 0xe9d5b925, 0xb9211244, 0x272e13c4, 0xe9cdca16, 0xc1ddeb0f,
+0x1cb2252f, 0xc3ec48d7, 0x07ae39d1, 0xcfdbd1d6, 0xd0efd937, 0xdf44ce24, 0x1b1e153f, 0x12cfc6c8,
+0x382dbfc7, 0xcd39c4dd, 0xda1b2528, 0xbe1cd5d2, 0x39d94147, 0xba3a39a1, 0x4a17f0bf, 0xbcea2ade,
+0x063927c0, 0x29122abc, 0x360cd8df, 0xd0ebdfc3, 0x2a313cc2, 0xc7b241dc, 0xcc282ad0, 0xda5334dd,
+0xe848e2c4, 0x2ebb2f3d, 0xcd5bcd1c, 0x2e201eee, 0xcd2dcdbd, 0x2f3152d5, 0xe0160ec5, 0x493ac035,
+0xdf174427, 0xead72f3c, 0xd8cb2f37, 0xc8d72d00, 0x2fe6e039, 0xe8e32d1d, 0x2ec4dbc8, 0xe23a454d,
+0x3351bfd6, 0x09da3acd, 0xd1d7dcd0, 0xcb45cc4a, 0xd51a10d0, 0xd2c3aada, 0xcfbcd530, 0x27cebe26,
+0x3abed442, 0xd126d93a, 0x1d3fcb2a, 0xe247bfdf, 0xad3e1434, 0xcd4ab1b5, 0xdb38212c, 0xcb291f27,
+0x0adfc2ea, 0xd236d7d6, 0x4d3423eb, 0xccded207, 0x362ad71c, 0xe2ca2041, 0xc72cd2a5, 0xdad9cbfb,
+0x4f29da19, 0xf23826ba, 0xb6d0291d, 0xd23bd0e0, 0xdd16d02d, 0x41111a3b, 0xc6c83351, 0x30bdc934,
+0xd721ef3c, 0xd1152cb7, 0x2023be12, 0x07c2ece3, 0xd2be45ef, 0xd1d1d9d2, 0x2a432327, 0xd0c6ddc1,
+0x1def40b5, 0x263f1f2d, 0xdbd8e325, 0x1fd30014, 0xd5daeae0, 0x14d9cac2, 0x3fd23919, 0xecdad1e1,
+0xe829d3e7, 0x3a29551f, 0xee2f35e1, 0xcad018db, 0xe6cc4239, 0x2959d2d6, 0x2530d2d9, 0xd9c54744,
+0x23e7d0cf, 0x4d37dfd1, 0x0f2439c0, 0x402a3319, 0xc232d5c9, 0x1816d9ed, 0xdee5aedd, 0x3fd7dfe7,
+0xe02fb85d, 0x04d4bbe2, 0x1933c820, 0xee2630b8, 0xd831132c, 0x0fd71f24, 0xc0f234d6, 0x234c36ca,
+0x1f27143e, 0x2b2e284f, 0x4f3c2a21, 0x38dedc3c, 0x1e2f2ccb, 0xbc26444d, 0xc43e1d26, 0xd2371f1d,
+0xe4f1e3c7, 0xcdc452cd, 0xd52141cd, 0xc627d418, 0xbe330bd4, 0x43c24b40, 0x33ac4128, 0xb9cabdc4,
+0xbd2defb9, 0xe9043be2, 0x38cb27c6, 0xcc004247, 0x27c62b22, 0x33ccdb23, 0xbab84cd5, 0xb9d938e2,
+0xbb2e332f, 0x4fed3932, 0x50d5cebc, 0xc7e84425, 0xdcca2b2e, 0x2c3729d0, 0xd247dd28, 0x2cdf09cf,
+0xe12352d1, 0xd2372c51, 0xd517da26, 0xdce63bd7, 0xca3926d7, 0x0bd144c5, 0xef37d830, 0x38b73a22,
+0xe03f2936, 0x33c8d7b2, 0xbc2adac1, 0x3650c52c, 0xc84d2317, 0xdec2ef28, 0xdb29df20, 0x2bced846,
+0x2e452fde, 0xdf1c3ebd, 0x482d203e, 0x2537efb8, 0x2235e42f, 0xc3bb2ad6, 0xc4fe2f29, 0xd324313d,
+0x38bfddf5, 0xd6de3a2b, 0xda3a272f, 0x2bd6bbd3, 0x2c35bcc2, 0xcf2fd248, 0x4551b9e2, 0xadf0b1d0,
+0x4038c4db, 0xc71427f0, 0xe1e32f40, 0xe71b3dd8, 0xc73810dd, 0x3d4d223d, 0x3116e9d9, 0x44b0c7ca,
+0x5037ccd0, 0xe5d52a0e, 0xc644111e, 0x35272fd3, 0x361421d5, 0xc9cad2cd, 0xdd360cc9, 0xaddd2ce7,
+0x2aee4aeb, 0xbd0713b3, 0xf5f3c02e, 0xeec531cd, 0x20da0841, 0x2f09e526, 0x332e2628, 0x3bc81726,
+0x111bf6dc, 0xc0c4c718, 0xea2d49df, 0xe3ce2d40, 0x242640ea, 0x0ae5cd37, 0x3f39e1d5, 0x5031edd7,
+0x3018322b, 0xc7d6ccbd, 0xc94429f1, 0xc93a1f33, 0xd32dceb2, 0xdf3317d7, 0x2fd5c1c5, 0xd02f4130,
+0x42aebc06, 0xda2bdab4, 0x47c5c033, 0xdf2ed3e1, 0xbace19ce, 0xda1feac1, 0xe04a1821, 0xe7d6b9d5,
+0x10d2a41f, 0xe0e330c3, 0xc7ea3f34, 0xbccb22d2, 0xce2e1a00, 0x27c43a0e, 0x3321ef35, 0xf6cb3437,
+0xcd41d1da, 0x36eec4c7, 0xd93b5aed, 0x152125e5, 0x41ca3bdc, 0xc1eceac8, 0xc8ca0601, 0xd32dc440,
+0xbebe2042, 0x3039cec9, 0xc4371645, 0xd529cadf, 0x423ee1ea, 0xe2dc1bf1, 0xdbbbd443, 0x3ceefff0,
+0xc0362841, 0xe3dc26e7, 0x272de1fd, 0x58d2441e, 0x1820f554, 0x3acacd0c, 0x3fccc9d2, 0x22332dd4,
+0x32d6b939, 0xc4d03dd8, 0xb03ebfcd, 0xe6beecaa, 0xc95528c5, 0xd2e131d1, 0x34373842, 0x44da4bbb,
+0x431e3ac8, 0x26ccc93a, 0xd8dab0b0, 0x42dfc643, 0xd2d8d6df, 0x4132c042, 0x2935cf22, 0x2921bb02,
+0xe8e73e2d, 0xdfd829b8, 0xe4233637, 0x2cdccbd9, 0x212e003c, 0x1943c2ee, 0xddd5c0c4, 0x30ccd4d6,
+0xb42613c8, 0xd5c92440, 0xf24edec6, 0xd7d51d2a, 0x1dd0dd42, 0x2915e7b4, 0x4dddd445, 0xb1e636ce,
+0x17cf1c3d, 0xdb2dd7e0, 0xc438c118, 0xda4aeb25, 0xec24d04b, 0x27d4402e, 0x2eeee6da, 0x3aca41e4,
+0xd9d53824, 0xbd4735dc, 0xc9323fe1, 0xd2d0c02b, 0x2fe82c34, 0x47cf34e4, 0xed23523f, 0xc5223e12,
+0xea47b7e3, 0xcaca2b47, 0xd95c32ca, 0xdad423e5, 0x21c2b832, 0x3cdfcb31, 0x2ec5b3ef, 0x16d429ec,
+0xc5c7c93a, 0x3edacc1f, 0xd137dbaa, 0xbbd6d1df, 0xef3b3a19, 0xc0dd2bc2, 0x3c2430e1, 0x454ec7cc,
+0xc23ce234, 0xf3382a2c, 0x32e13f12, 0xcae6c4b6, 0x2900b70f, 0x2d1dca3e, 0xca20cde4, 0x2f3aead4,
+0xc53ecb3d, 0xe348c2ed, 0x3e43d9cd, 0xd4b21cca, 0x31d6d9da, 0x1cc2c936, 0x2537d5cb, 0xd2e5e7de,
+0x1b423012, 0xe537c5d5, 0x332bdb1e, 0xe41dd0ce, 0x3dcce6ed, 0xc3dcbed3, 0x3046e2d2, 0x2e193ad1,
+0x1e6549bc, 0x3820d03a, 0xf8d0affa, 0x371c211a, 0xdbe4d2d8, 0x24cc2134, 0xcd1ae0d8, 0x3913ce3a,
+0x281f3a4a, 0x22c53152, 0x3a11fd2d, 0xd82a33f3, 0xdbe91a46, 0xc71a1d20, 0xcbeabe1d, 0xc7c54632,
+0x344fcfbd, 0xc831211c, 0x19a227bc, 0x49c83ec8, 0xe02242bf, 0x40efbabc, 0xc94039dc, 0x22263acb,
+0x2b2634e7, 0xdf391d36, 0x49ce3038, 0x20152fe7, 0x003ff136, 0xd5231029, 0xc9232f1b, 0x22c7d42e,
+0xeb0ac538, 0x2fdcdd4c, 0xd7402336, 0xcae1d2d3, 0x16d1ba27, 0x4f263c40, 0xda203a35, 0x2b162ad4,
+0xcdd9281c, 0x362a28bd, 0x39c5a4d7, 0x27e9cfcc, 0x30231e21, 0xbac94dd4, 0x39341723, 0xbae563e0,
+0xbd1134c3, 0xec0f33ab, 0xcb2936dd, 0xf92d2ee0, 0x34dcc04e, 0xc5ef1b12, 0x1d3aeebe, 0x1af4e6e9,
+0x23dcd858, 0xc01f40d1, 0xc9c9c4d9, 0xd63e143e, 0x04bad9e5, 0x4bdecd22, 0xc042cccc, 0x285118e4,
+0xd548d326, 0xf5c5c224, 0x46afe1bd, 0x41d02d31, 0x3961433a, 0x392345d4, 0x30cb3c2c, 0xd5d00dcd,
+0xf22a2100, 0x14d2333e, 0x22bcd334, 0x3a2dcfa5, 0xe80bc1c5, 0x264b1f00, 0x13d12bbf, 0xc8d9442c,
+0x353b382a, 0x234341ca, 0x2d352ebf, 0x41cfde43, 0xd63120cf, 0x3cc734e8, 0xd036e825, 0x3d3c1fce,
+0x041e373b, 0x091e2c30, 0xbc29e235, 0xc0e42cc7, 0xa7252b39, 0xc63b25cb, 0xc23b1a2a, 0x2936c337,
+0x3f2ac9cc, 0x0a1cd9ae, 0x1dd233e0, 0x2bc21dc0, 0xa6e2c62c, 0xdee544df, 0xca3329c0, 0xe0c43942,
+0x1ca739d2, 0x241633d6, 0xb826de18, 0x33cb1935, 0x1a37ca2d, 0xc90fd1e3, 0x20262fc7, 0xc34cd3c4,
+0xcb4fcbb4, 0xe5d32f2d, 0xe1c3331b, 0xd0c1c833, 0xd52e33ba, 0x33d8352a, 0xe3472a24, 0xd01a31e3,
+0x4026f4c7, 0x1dcc1dc4, 0x36ca47c2, 0x41bee407, 0x02e33a39, 0xefcd00b8, 0x08cdb333, 0xde2d2528,
+0xbf2038e1, 0x27d9c636, 0x2c9e2620, 0x311fefb4, 0xddc0e2da, 0xf0ec291a, 0x47ca3ae8, 0xe9e8b8bd,
+0xc7341ec8, 0xcbdb2f4f, 0x2efe005b, 0x3338db40, 0x313ec7e8, 0x1cceeb2d, 0x372b3cd9, 0x39d5d1d4,
+0xc9b22450, 0x265e2325, 0xb6bedbee, 0x2c2e07cd, 0x1dcb29ce, 0x2539b7c9, 0xcdb263d4, 0x4fced731,
+0xdee0c2d7, 0xfe2e49af, 0xc82eefb4, 0x4be5d6b9, 0xf0eb13f8, 0xe6ceaedd, 0xafe21fcd, 0xe52ac125,
+0x2ee00523, 0x30db3fda, 0xd0e6fd14, 0xc51e4f33, 0xe0fd0fd5, 0x3c194ae6, 0x241ea923, 0x343e1f21,
+0x22d5dcc8, 0xd2411033, 0xbbe939e4, 0xb5dc40cb, 0xc3ddf617, 0xe800ca33, 0xd03cce1c, 0x2fcb2def,
+0xd1cdd3f2, 0x113ec74c, 0x3d10373f, 0xec2538d9, 0x28c3d733, 0xe74916f3, 0x37cef6f5, 0x3532bc0d,
+0xdec3cc2f, 0xdcdcf4dd, 0xdbe1c3d4, 0xc32e212b, 0xc12155cb, 0xed5ad9b2, 0xb43847ab, 0xc2dc4acc,
+0xd2223b28, 0xcd25dd31, 0x3fd7b6d9, 0xdee1f8e5, 0x3cb337eb, 0xdf19d333, 0x3344ebd3, 0x32eb22f0,
+0xdfb3262e, 0xaedc41bb, 0x25d7dfd6, 0xaa13401f, 0x2eceedc6, 0xc02e36c9, 0x28da38df, 0xc41c34d1,
+0xc8442bdb, 0x48c9332a, 0x3acae6ec, 0x271bbe3f, 0xf121e2c7, 0x3edc1edd, 0x2bbe35b0, 0xe03c42cd,
+0xcbe84331, 0x1428cf17, 0x1cdce821, 0xe4351ad8, 0x38284ed8, 0x263e19bb, 0x182bbc10, 0xf438d2da,
+0xe4f3b8ed, 0xd63bfb1d, 0xc1cae51e, 0x36194bcb, 0x19cd21fc, 0xea322e41, 0xd5146635, 0xc8f9e1e7,
+0x48423123, 0x42c4331c, 0xe1d04141, 0xdac0e12d, 0xdce73f25, 0xbec6d0cf, 0xe52a41d2, 0x452ae9d2,
+0xc9e7bfd5, 0x3f033022, 0x21d21b44, 0xe335332e, 0x40ebbd29, 0x2bdf2cdd, 0xf336e53f, 0xe54b2b13,
+0x4d12243c, 0x31b9c5db, 0x111ccc18, 0xd5d31315, 0xd2f9dfb7, 0x3f4b1ecc, 0xe5e3db46, 0x27cd2c59,
+0xbfd10ac0, 0x25c33252, 0xe1293553, 0xdb1635c2, 0xd62db8bd, 0xd8daca35, 0x49d8daec, 0xc951ded1,
+0x2e2ce7e3, 0x1321d4d8, 0x33ee3a37, 0xe1ef3d2a, 0x12932fd0, 0xcad0de3c, 0x20c3e300, 0x36ed3adb,
+0xddcdbb39, 0xe7184dde, 0x564cb8b1, 0x41ea2ae8, 0x3ad6c619, 0xc722d34a, 0x4bc52c36, 0x27df1bda,
+0xc9e2bb64, 0xd5394036, 0x1b3b30d7, 0x12d71cca, 0x233d432d, 0x2ec6d2c1, 0xeb26242f, 0xd2ffe5c7,
+0xc6d9dbcf, 0xea3329d2, 0xd129ebbc, 0x1e39193d, 0xc6ecdcd6, 0xe64ac331, 0xdfd6c413, 0xc8c8eb1b,
+0x26bfc3ea, 0x2bea33d7, 0xecd10bd8, 0xba3c27d4, 0xacdadcd2, 0x2bcd2ddc, 0xd141dbe1, 0x2ecec0dc,
+0x272fd8f9, 0x0bc3e8e1, 0x47e5e91a, 0x24152c15, 0x2927d5d8, 0x28b8dc2e, 0x28e4c5de, 0x26202ed3,
+0xc734eb0f, 0x2e53cdd7, 0xce2b1f48, 0xc11ae321, 0xbb343531, 0x3f2128d1, 0x2c4a001e, 0x23d13c12,
+0xf4d3432e, 0xd62a3d30, 0xfdac20d6, 0xc32d1fd9, 0x3bcfc9e2, 0xc2d50dab, 0x310c46b9, 0xd12eb92a,
+0x3739c436, 0xdbd3e6cb, 0x39d52cd3, 0xccbb3e28, 0x47ec4326, 0x5fe1d645, 0xdb15d716, 0x223b3dc9,
+0x25de3d2d, 0xdfe4e244, 0x3b2daf28, 0xd62acb34, 0x1c42f1d5, 0xbece4217, 0xc3d03928, 0x4dbdd6d2,
+0x2eeb1617, 0x32bbd2e9, 0xc2bcdadc, 0xebc424d1, 0xcba8c820, 0x2ae6533b, 0xee3f1ee8, 0x30d4dd2a,
+0xdb3120c9, 0xced82d2e, 0x35e32f1f, 0x1031d711, 0xcec5d3ca, 0x3400dedc, 0xc32c342a, 0x3ae2d43f,
+0xb2c9b4f7, 0x4ec7ffda, 0x281e43ea, 0xf12641c7, 0x33474ebc, 0xc414372d, 0xc9003ba5, 0xe949ca30,
+0xc82fe4cb, 0xd222cd1d, 0xdddce1de, 0x3ccd2530, 0x44273c36, 0xdbedc2c4, 0x352e3ece, 0xb5d641be,
+0xc9cbe347, 0xdf282fe4, 0x1b232338, 0x26c4ecc6, 0x2fcccb1c, 0xcc391cd5, 0xcc46ffe9, 0x3d28b724,
+0xc949cb0c, 0xc03deb26, 0xc9c01f28, 0x24ca3cd3, 0x2f1acf47, 0x4fd72ad5, 0xd339cf1f, 0xd7d4be34,
+0x3d1f0abc, 0xe5373935, 0x3a2b3219, 0x3cc9dab7, 0x1eafc313, 0xe53cd2ee, 0x18d2e8cd, 0xe5d3c519,
+0xe9dfcc3e, 0x2836c6c6, 0xd8ebe638, 0x3ed9dadc, 0x2a45d3c0, 0xc3263bcb, 0xc428dec1, 0xd6dbdf28,
+0xd517272a, 0xbb26bd0d, 0x3814da33, 0xd8d0ca31, 0xc00fc5dd, 0x28d49e21, 0x00401518, 0xafcece36,
+0x383ce72d, 0xdb131a2d, 0x3327da10, 0xdac2a82c, 0xd8302d18, 0x39c4212c, 0x1a352fc9, 0xdfbf2332,
+0x21331428, 0x170145be, 0x29ee1dc9, 0x3233a2c2, 0xc9d7b43f, 0xdd4129c1, 0x27c91bd5, 0x1925173c,
+0xb0e3023a, 0x48e63bca, 0x37c000e6, 0x132c23c6, 0x2e24d22d, 0xd7c2ce3d, 0xce4213f8, 0xbed82ede,
+0x1cdcd6e4, 0xcccc1033, 0x27cf1120, 0x29dd37b8, 0xc7e53bc1, 0xbf2f3849, 0x443845e0, 0xdaac1c26,
+0xce093720, 0x422c4036, 0xccfb38e1, 0x1fd425bb, 0xc733ea10, 0xec1534d4, 0xded22ac4, 0xe42c1d25,
+0xca28d7b8, 0xc14bd845, 0x341bccb8, 0xbd1e2230, 0xf3d9d631, 0x1dd9d921, 0xca23d50a, 0x22343f00,
+0x35e0c7ad, 0x22d522dd, 0x342cdac0, 0x315c0a19, 0xde5634b8, 0xd5b8b5d0, 0xd24135b2, 0xbfbecc29,
+0x3dd12bd0, 0x2fc2ee29, 0x3ed4dfca, 0xcc0cc3f3, 0xdd3a23ca, 0x2fc316c4, 0x343036f1, 0x14db430b,
+0x35d6c2cc, 0x37bfdae3, 0x2d19c4f5, 0xbdd03129, 0xd42fc7b8, 0xe9d6deb7, 0xf12fd3ed, 0xcada19cf,
+0x1bace9d9, 0xcdbecacb, 0xd2d5273a, 0x40c63522, 0x3628d34a, 0x36e803c2, 0x332c42c7, 0x2eb1352c,
+0xbed4c3eb, 0xc21d42d2, 0xd430c85a, 0x2bd538d1, 0x21de45d1, 0x1bdbc34c, 0xd9ce3dc1, 0x1b46bdb5,
+0x3ad92c22, 0xbd2b202a, 0xc342eaec, 0xdabd561e, 0xd52ec801, 0xb3211923, 0xd825360e, 0x37130018,
+0xe7f04ed0, 0xcdd8ea30, 0xe230c7af, 0x38134f36, 0x2dd93139, 0x36c549d4, 0x1ed2e5d9, 0x3c2d39f4,
+0x23cad716, 0x3f03371c, 0xf61ed0c9, 0xdd25c83a, 0x2320d52a, 0x4a22313c, 0xedc43d2b, 0xce492bbd,
+0xd0ce2b4c, 0x3b1933e1, 0xdfd02940, 0x3dcbda3b, 0xcfcdbf2d, 0xe0b1b5bb, 0x1a2aee5d, 0x441c1e44,
+0x313a2c3e, 0xdfdcdc3f, 0xd72349e9, 0x261e3619, 0xda05ca32, 0xe6e12ddd, 0x47371f2a, 0xc3e2bcd3,
+0x4934c1db, 0x0f331e30, 0xbcf02906, 0x553ec733, 0xdc29203f, 0xca37cc47, 0xd3d93c3b, 0xdfbae42e,
+0x3dd31c1d, 0xe6da2a2b, 0xdcbcc234, 0x37f3c6dd, 0xce152725, 0x1b2b2ce4, 0xe4e64c39, 0x390046ce,
+0xba3730d4, 0x2e3224c7, 0x36cf3aaf, 0x31cc184d, 0x3e5cec43, 0x28391a31, 0xcfe4ce20, 0x2cc22918,
+0xf0e611c7, 0x48fa302f, 0x1edd2ad1, 0xe1b6caf2, 0x3b1fd815, 0x2a26d9ce, 0xc1ce2ec8, 0x3e3d1dcf,
+0xc246dec8, 0xd3f839c3, 0xdbedbf19, 0xd8eac1bf, 0xd5d71add, 0x283eb4dc, 0xe331cccd, 0xcdb8c1eb,
+0x372526cb, 0x2e281436, 0x2f2e39ca, 0x49bac623, 0x28dee328, 0x3431c4cd, 0x2fdf4d45, 0x353ce7c0,
+0xc82edb47, 0xb8193e35, 0x2ada22d9, 0xdbcd3fd6, 0x1e19e43f, 0x13c3c5f3, 0xd9d53b47, 0xe62531d5,
+0xb91b21d9, 0xdb4ba1c9, 0xd036e20d, 0x23171eec, 0x2e3e53d3, 0xe4e9cc1a, 0xf0d3412e, 0x31c1292b,
+0x24bbe2d9, 0xc527d531, 0xd4c04149, 0x09e038dd, 0xd3cfe3bf, 0xde3d442d, 0x2af1c438, 0x213328c6,
+0xd616342a, 0xdbd2e5d5, 0x21cb393c, 0x2d331e47, 0xbcd5e436, 0x20d2dbb5, 0x2b2f2fde, 0x412fd5c7,
+0x2f2422c2, 0x3de9dcc2, 0x5cbf2816, 0xbdda1f25, 0x2c483930, 0xecd0c7da, 0xeec5e2d3, 0x23d4d325,
+0x6e282d24, 0x38173029, 0x2b222f1f, 0xdbe2edcd, 0xd71018c7, 0xdbe3c9b7, 0xce42d837, 0x18d33d37,
+0x2eb6f515, 0xceccf822, 0x4cd63db8, 0xf5e3c7d6, 0x361819e1, 0xd6bfbd0f, 0xe1c2e1cb, 0x3d3b33e6,
+0xcbd34c20, 0x0640369e, 0x39c82c17, 0x3eb542c5, 0xd52e3dc3, 0xdd26cfce, 0xae29d138, 0x38b4c0dc,
+0x1d350000, 0x162eea1f, 0x21432923, 0xd534dcb6, 0xe4eada29, 0xecced02b, 0x2a2c30da, 0x2dc735fd,
+0xcac1cecb, 0x23c93eca, 0xd73d2037, 0xe80c43bf, 0x522824ba, 0x17ce1e26, 0x5e33e53f, 0xd5e9d4ba,
+0xe5cb1ecb, 0xd737d255, 0xb7e3db38, 0x410a2eb4, 0x3be4253d, 0xdffd4216, 0xbf18f018, 0xced2d9d3,
+0x4a23d0d3, 0xe4ebcf39, 0x1bd0cc2a, 0x39c7da35, 0xe24128d4, 0xe2cd313a, 0xdc20ea53, 0x2df0cd26,
+0xc7db42f5, 0xccd4d9c6, 0xe5dcdb34, 0x3b2909ce, 0x4218e450, 0xbdd5cd2e, 0x421ae9c3, 0x40262fe6,
+0x3800d33b, 0xd5c5c52e, 0xd6dc3727, 0x4cdb2ccf, 0xcbaabada, 0xc2d125c2, 0x41e236d8, 0x36ba20e2,
+0x2bd2ce3b, 0xb9e401e3, 0x073ac323, 0xcdda311c, 0x35c1b7c6, 0x31e54930, 0x33315330, 0x47403db6,
+0x0dc9ddb9, 0xd7cc1fc2, 0x35ea4532, 0x252915e4, 0x4f13d9a4, 0x1d22f3dd, 0xe8c3c2b1, 0xe9b336fc,
+0x0b231ad2, 0xc532c7e3, 0xcc0fc31d, 0xc1d6ea13, 0xe4193daf, 0x46d3da14, 0xc310da46, 0x36140ecd,
+0xf9b521cd, 0x3dd2bd13, 0xd539f7c5, 0x093f3ce3, 0x0f352cdf, 0x29412fe2, 0xccd4d732, 0x1e35b5e8,
+0xd8d250df, 0xda32242d, 0xdecaf62b, 0xbd53b43e, 0x024d2b2b, 0xd4e3d434, 0xbcd33334, 0xcc19340e,
+0xdd212a38, 0xd62b432f, 0x3fcdc4d2, 0xda4d4ad1, 0xf3d6dc2b, 0xa4d72fdf, 0xd0c5392d, 0x2d29b8d3,
+0x0000273c, 0xd73f08cd, 0x202ad7e8, 0x3fcbe634, 0x25c6cec6, 0x3b5815cd, 0xc82ad7d2, 0x28e5e6c3,
+0x260e451f, 0x49d830eb, 0xd2cf4cc7, 0xd122d1b4, 0x0bc82b33, 0xcc2fe53e, 0x41d5d9ec, 0xd0d0cd31,
+0x4c39d7c7, 0x163c23cf, 0xd53639de, 0xc352cfd3, 0xe0e323c2, 0xd1423716, 0x302b1c3b, 0x29d02fec,
+0xeaccddd5, 0xc13137d4, 0xd4bd394a, 0xc11ae6c5, 0x4dd5bea1, 0xd5df323b, 0x3b26a74b, 0xabd7402a,
+0x2cb4301e, 0x2027f735, 0x2713f5df, 0xe3d3b327, 0xddee3124, 0xce23bf32, 0xb3c9260e, 0x3e46da32,
+0xcc3cd5e0, 0x392dd02a, 0xd5d52822, 0x3235b2c6, 0x36e0f522, 0x202bcbcb, 0xc6dd54be, 0x2b3b39d8,
+0x311fd9e5, 0x32c7dcd1, 0xd81bbdd3, 0x26434fce, 0xc6ba392c, 0x212ee515, 0xc5d8efdf, 0xdfe62930,
+0x1c1a2f4f, 0xc91a2e32, 0x30d01357, 0xf02e1c20, 0x5bb93a20, 0xf0e9bd31, 0x243ee036, 0xe139c7b9,
+0x21463b1f, 0x412bec29, 0x3015c6e0, 0x3925d411, 0xbb13d939, 0x2b50c1c9, 0xc92ae71e, 0xc0d61a49,
+0x20d2e542, 0x0f3216d4, 0xc8d4da44, 0x4cee380e, 0xb5b8ce1a, 0x4731353c, 0x413fe1e0, 0x0ac939d9,
+0xe109c4d0, 0x3534c019, 0xcd213bc9, 0x1729f730, 0x252b4955, 0x02d01f33, 0x2536d123, 0xb3b3e947,
+0x4ba9c924, 0xba1d2440, 0x2d29b910, 0x21294ab9, 0xf124cd2d, 0x2ed723c6, 0xc01ebe31, 0x1da6cbad,
+0xce2ad830, 0xc32b0000, 0x15ebe1da, 0xdf2c3852, 0x3218262d, 0xd0a3e05d, 0xd6b8c3b8, 0xd421c622,
+0x0fe039cb, 0x2314d7c2, 0xcbe02dec, 0xd9d11424, 0xd03dc750, 0xd12a3835, 0x09ed00ba, 0x20281dc2,
+0xdddcbc3c, 0xe3c05037, 0x043ac03c, 0x480de436, 0x229eebba, 0x42193947, 0xd02ed3db, 0x123ccbfe,
+0xc8372d41, 0x222b49ca, 0x1128d9e7, 0xb2d04637, 0xbb1ce931, 0xd4d04226, 0x2f3cb534, 0x642fdef4,
+0x1923f02b, 0x50b22619, 0xd3b84031, 0xcb412737, 0x1ec9e227, 0x26dd1430, 0x3831211c, 0x32d043c7,
+0x2ee6bca5, 0xd33629c9, 0xf5282b1e, 0xc73c2d18, 0xcad52336, 0x31dee3c0, 0x2025d231, 0x4321cf47,
+0x24c7c0cc, 0x410dbfce, 0x4502cfcf, 0x2d41182a, 0xf01e1bb8, 0x37c94512, 0xd32a4fbb, 0x23b0cae9,
+0x29f52adf, 0xd02729c0, 0xb71ef6bc, 0x2a1f1633, 0xc64aba1e, 0x322fb9f4, 0x09242ff5, 0x20dcd9cb,
+0x35c0e12d, 0xc2d2ca21, 0x20a2bfd3, 0xb5d82cd9, 0x37e7d642, 0x2ae639c2, 0xe1364a3e, 0x2615d12c,
+0xd62c2127, 0x2304b12d, 0xd21cedec, 0xdf34d829, 0x2d1acde7, 0xe01e2534, 0xd333c8d2, 0xe2e0d410,
+0xd0df4930, 0xd231293b, 0xd4d33617, 0x1d4344bb, 0xddd1de20, 0xcaf4272e, 0xb72f46dd, 0x172e2920,
+0x2a27c742, 0xd4e01a30, 0xca35b7e8, 0xdc1d0c3b, 0xd02fc71c, 0x3ee13ee3, 0xd53db622, 0x4bd33127,
+0x4ad7c6f2, 0x0000d9ef, 0x14161a3f, 0x28e8dfc4, 0x2c1e38d1, 0x23b91206, 0x22d8dcd2, 0xcecc3a15,
+0x1bb4f5b1, 0x3cd0e3cf, 0xfdc3dbe4, 0x54300b36, 0x09c8e2df, 0xc7ec1bfd, 0x1d0fae40, 0xcf343bd5,
+0xb929d337, 0xd4c224f9, 0xac2a3437, 0xde261ebe, 0x2e20c032, 0xd3c1c0c5, 0x18e0cad5, 0xe417ebc0,
+0xef2a4ddb, 0xbde4e334, 0x2d32cdc6, 0xbd1ee8c1, 0xd834c3d5, 0x46e327f0, 0x353cc5b3, 0x3c20c1af,
+0x00000000, 0x00000000, 0x42dd3028, 0xd8c424d5, 0xe9d54729, 0xb325de29, 0x00000000, 0x00000000,
+0x44d5bdbe, 0x45c0bff4, 0x2219c22a, 0xcf30dce3, 0x00000000, 0x00000000, 0x2ed822fa, 0x3220d4cb,
+0xd437be3f, 0xcfd452e2, 0x00000000, 0x00000000, 0xc72e411a, 0xe923cbcd, 0x15e1dd36, 0x28cbe3d2,
+0x00000000, 0x00000000, 0x2225b73b, 0xd92bcb1f, 0x23bbd2dc, 0x3f34b0e5, 0x00000000, 0x00000000,
+0xdb44d7d4, 0x1ceb4040, 0x0cd3cfa8, 0x36d41d28, 0x00000000, 0x00000000, 0xc8091dcf, 0x2544de1d,
+0xc81c2e43, 0xe317252b, 0x00000000, 0x00000000, 0x22c6cfe0, 0x2a461c3b, 0x51dda630, 0x233f20ee,
+0x00000000, 0x00000000, 0xb9bd2c27, 0x23d5202c, 0xe23ac304, 0x4a3ddd1d, 0x00000000, 0x00000000,
+0x301b35e2, 0x0efb413f, 0x3c2d1cc2, 0xaedb2a24, 0x00000000, 0x00000000, 0xe7dbda13, 0x3cbbcbf6,
+0xafc1c830, 0xe7433323, 0x00000000, 0x00000000, 0xc7e80000, 0x292b33d8, 0xc4322cd3, 0x31163946,
+0x0000e2cb, 0x00000000, 0x253c0000, 0xfd30e7e6, 0x04c04dd7, 0x3fc918e0, 0x0000d2da, 0x00000000,
+0xcda70000, 0xe3d730c1, 0xc533d624, 0x1834d633, 0x0000eae3, 0x00000000, 0xb4bb0000, 0xe5d0dc2b,
+0x1c272b33, 0xef243c2d, 0x00002948, 0x00000000, 0x20210000, 0xcbfb1e42, 0x3749cf29, 0x442f1b10,
+0x0000b944, 0x00000000, 0x43dc0000, 0x42d9282f, 0x10cebc35, 0x3ed42cd5, 0x00002336, 0x00000000,
+0xe3e20000, 0xc230d923, 0x33ccc61a, 0x27e22ad2, 0x00003ed4, 0x00000000, 0x2bc10000, 0x051d0432,
+0xd310d9dc, 0xba331c3f, 0x00003030, 0x00000000, 0x20430000, 0x45b8cdce, 0xe515231c, 0xe9cc1931,
+0x00002b23, 0x00000000, 0x42140000, 0xd2dd2fcb, 0xee2eb7f9, 0x3e493028, 0x00002a2c, 0x00000000,
+0x20340000, 0x3d02491c, 0xe231a8ec, 0x0a270727, 0x000029c2, 0x00000000, 0xdbb90000, 0xc7dccd2c,
+0x0f203d37, 0xcbda00c2, 0x00002319, 0x00000000, 0xe51b0000, 0xd943d3c9, 0xbe1fd6d5, 0x423b53c7,
+0x0000d9e9, 0x00000000, 0xcebf0000, 0x19393427, 0xc3223fb8, 0xf431c6c5, 0x0000f5d5, 0x00000000,
+0xeb310000, 0x21f4e3c8, 0xb7d826ca, 0xae06b824, 0x00002345, 0x00000000, 0x562c0000, 0x21c33209,
+0xbf40c6dc, 0xe73dddd3, 0x000045f5, 0x00000000, 0x00000000, 0x27e31bee, 0xd02d24b8, 0x26e4cdc8,
+0xd331c72f, 0x00000000, 0x00000000, 0xd4261e28, 0xd337d4da, 0x3fdb2432, 0x1e474dc4, 0x00000000
+
+input1 =
+0x00000000, 0x48ddd534, 0x31cecfbf, 0x32e44edc, 0xb121dfdf, 0x00000000, 0x00000000, 0xf2232324,
+0xdb26cdde, 0x2cec2011, 0x2b2421d4, 0x00000000, 0x00000000, 0x19c71129, 0x55d50bd3, 0x2fd2ce41,
+0x3abeefd0, 0x00000000, 0x00000000, 0x1bef29c6, 0xd2d5d9ec, 0xe4b51b34, 0x2529d5e3, 0x00000000,
+0x00000000, 0x0cd1c825, 0x13d5ddd3, 0xbe252dbd, 0xb7434ed2, 0x00000000, 0x00000000, 0x46c82c33,
+0x1a171fcf, 0xc3c32fd4, 0xe64d2dd4, 0x00000000, 0x00000000, 0x37af330f, 0xd0e8f326, 0x59201fdf,
+0x19e9c153, 0x00000000, 0x00000000, 0x1bf81fb7, 0xbd19bbd9, 0x3043cd22, 0x39cdb9cc, 0x00000000,
+0x00000000, 0x1dc5de57, 0xd5c8f118, 0xcca7dc2f, 0x45da1c24, 0x00000000, 0x00000000, 0xe42f4036,
+0xf22de61c, 0xdfd4353c, 0xdb1c2fbf, 0x00000000, 0x00000000, 0x2722b4f6, 0x123f3cc7, 0x43cc37da,
+0x23d949be, 0x00000000, 0x00000000, 0x3233cf48, 0x34d4c8d4, 0x1b2c352c, 0xdfb7fa3c, 0x00000000,
+0x00000000, 0x343d28cc, 0xc1ca2dab, 0xd8330d32, 0xcab1b4e2, 0x00000000, 0x00000000, 0x1acf3435,
+0xfceddc39, 0xd7d5112b, 0x13ceec3f, 0x00000000, 0x00000000, 0xc32b0000, 0x45e24430, 0xc916ca3e,
+0x32132dd3, 0x0000d9dd, 0x00000000, 0xe1e60000, 0xce060018, 0x38401be2, 0x0ec83821, 0x0000ee52,
+0x00000000, 0xe4c90000, 0x1a313f14, 0x26dfc4e7, 0x23eb4df9, 0x0000e1bc, 0x00000000, 0xd4190000,
+0x37e5d4ae, 0x33cdcd50, 0x39d64a48, 0x0000e51a, 0x00000000, 0xc82d0000, 0xc6cc40bc, 0x501bbb22,
+0x2b293dd4, 0x00002f38, 0x00000000, 0xbbc10000, 0x2b3fc838, 0xce29dd5a, 0xd7de23e4, 0x0000d42b,
+0x00000000, 0x14d50000, 0xfac320fd, 0x35eccdc1, 0x1c3239b8, 0x0000bfb9, 0x00000000, 0x39e80000,
+0x0c21cdef, 0xbddad53b, 0x4b6337cf, 0x0000d03e, 0x00000000, 0x1e2c0000, 0xbfe6d50e, 0x1d1ebffb,
+0x50d734d1, 0x00004fe1, 0x00000000, 0x10280000, 0xb8d62f29, 0xb3b4d82f, 0x22cfc836, 0x0000df2d,
+0x00000000, 0x2f300000, 0xc7ced138, 0xbb3c46d6, 0xc71fe43b, 0x0000dddc, 0x00000000, 0xbcc60000,
+0x191937ca, 0x432fcae9, 0xdef5d12d, 0x00004e2e, 0x00000000, 0x2d580000, 0x4bcc26fe, 0xb6cd39ec,
+0x27c0c8df, 0x00003e2f, 0x00000000, 0x44b60000, 0x26bfb03c, 0xf1b7d523, 0xcec82ff6, 0x0000240e,
+0x00000000, 0xb1d20000, 0x21383bc5, 0x29282c14, 0xc9bcc2d8, 0x000012ed, 0x00000000, 0xdcbf0000,
+0xc125d023, 0x4b40d936, 0xd6e9d1f9, 0x00002ffe, 0x00000000, 0xc6290000, 0x1be1deda, 0x25cdd3e7,
+0x432acc2e, 0x0000ccd9, 0x00000000, 0x35d30000, 0xd7d623dc, 0xd328cec8, 0xe92144d4, 0x000033db,
+0x00000000, 0xd8440000, 0xd5c3c213, 0xd8f1d240, 0x37ce13ca, 0x0000aa3d, 0x00000000, 0x3ecf0000,
+0x311e42dc, 0xe7e33237, 0x2dcd3aa5, 0x0000342b, 0x00000000, 0x24c40000, 0xd2374134, 0xe2bd141c,
+0x2e4d2ab1, 0x0000c54d, 0x00000000, 0xf22e0000, 0x291c3f12, 0xe738d61f, 0xcf38d12c, 0x0000252c,
+0x00000000, 0x1d490000, 0xd12fccc7, 0xbed13c4a, 0x3d2f3624, 0x0000072a, 0x00000000, 0x12c60000,
+0x3fd6a7b8, 0xb5ea2830, 0x54d813b8, 0x000029dd, 0x00000000, 0x48d10000, 0xefd138e6, 0xe5e1dbe5,
+0xd72a2dda, 0x00004b34, 0x00000000, 0xca370000, 0xb6d540e2, 0x0fd1cec1, 0x31ac46b1, 0x00003adf,
+0x00000000, 0xb6d80000, 0x202716cb, 0x162c23c3, 0x44ecfec8, 0x0000c4eb, 0x00000000, 0x16ab0000,
+0x2fd72645, 0x41c038cc, 0xd9d334c9, 0x00002832, 0x00000000, 0x12cc0000, 0x34ce26f8, 0xd22bc6d0,
+0xb5594315, 0x0000c636, 0x00000000, 0x102e0000, 0xcbd3291c, 0xdfdce5dd, 0x22e422ac, 0x0000c411,
+0x00000000, 0xddc80000, 0xd3d4bff9, 0x331f3ee1, 0x1dd9132e, 0x0000e30f, 0x00000000, 0x20e90000,
+0xd53ad8bc, 0x293941d0, 0x19e1db28, 0x0000e33c, 0x00000000, 0x00000000, 0xcc16bb42, 0xc2dbfadc,
+0xd7c7262c, 0xd932d13c, 0x00000000, 0x00000000, 0xd3c91ebe, 0xbed241db, 0x483820eb, 0xbd1b30da,
+0x00000000, 0x00000000, 0xd31fc61b, 0x352938ef, 0xcc1bcc16, 0x1dc12300, 0x00000000, 0x00000000,
+0xc626c507, 0x45e6d739, 0x261abb29, 0x2833cb2e, 0x00000000, 0x00000000, 0x2db1cdce, 0xdd4a3cf3,
+0xd229d6b8, 0x381ad738, 0x00000000, 0x00000000, 0x14183f43, 0xc6ed2eda, 0xcdafcada, 0x38e5e2c2,
+0x00000000, 0x00000000, 0xbb52c63f, 0xd7fe3add, 0x3935cee8, 0x34c6c82f, 0x00000000, 0x00000000,
+0x363113d9, 0xcde61f44, 0x2f29d3ee, 0xddf6d1c1, 0x00000000, 0x00000000, 0xeb253223, 0xc8de3553,
+0xbbdbdd47, 0x44d23e38, 0x00000000, 0x00000000, 0x0ad82cca, 0x34c3c94a, 0x2e35fbe0, 0x2145d82c,
+0x00000000, 0x00000000, 0xd72bea45, 0xcb1720df, 0xc5c537fa, 0x1c0cd6d8, 0x00000000, 0x00000000,
+0xe7d9d145, 0xd14fd1c9, 0x3a153154, 0x3bccc8c6, 0x00000000, 0x00000000, 0xbc28262c, 0x32dbc8ca,
+0x2924eac8, 0xff21cfdf, 0x00000000, 0x00000000, 0xe8ddc921, 0xc1cc2507, 0xccdbc728, 0x2b10332e,
+0x00000000, 0x00000000, 0xd81eee18, 0x3223452b, 0x292dd7b9, 0xb8c3dbab, 0x00000000, 0x00000000,
+0x4615243f, 0xd23425dc, 0xe6c73815, 0xe9e43dd3, 0x00000000, 0x00000000, 0xd8250000, 0xd14b591a,
+0xe52bd2c7, 0xe548e0c4, 0x0000c9d5, 0x00000000, 0xfbd20000, 0x1ee1e71a, 0xc2c23913, 0x44cee6d3,
+0x0000d906, 0x00000000, 0x24cc0000, 0x5ef4c337, 0x12beb725, 0x493fd6de, 0x00001e2b, 0x00000000,
+0x2ec50000, 0xd1e1c6ca, 0xcbc93015, 0xd5442622, 0x0000d202, 0x00000000, 0xd3230000, 0x44b61729,
+0x12c524d2, 0x1f343811, 0x0000c4c4, 0x00000000, 0xc9e00000, 0xe3be23b0, 0x42133425, 0x28d8b3d7,
+0x0000bc49, 0x00000000, 0xcde70000, 0x3be1d9fd, 0x37a805f8, 0x2ff92839, 0x0000bb33, 0x00000000,
+0x52420000, 0x311fefd8, 0xc8ab1ec3, 0x23ddc7ca, 0x00004011, 0x00000000, 0xb4500000, 0x21324929,
+0xe03d38c8, 0x152b2acb, 0x00001edb, 0x00000000, 0x05340000, 0x2d3e3e49, 0xcfd0c9cf, 0x1528d6f2,
+0x000024a6, 0x00000000, 0xc5b70000, 0xd9d2becf, 0x282f1ed9, 0x36b72133, 0x00004b05, 0x00000000,
+0xca400000, 0xd7cae8d2, 0x30ef28da, 0x26c1d730, 0x000051d5, 0x00000000, 0x22170000, 0x421edd28,
+0xddc5421e, 0x1ed93420, 0x00002825, 0x00000000, 0x33280000, 0x45ce3eec, 0xddf6313b, 0x2ad6cec1,
+0x00001f1c, 0x00000000, 0xd9e60000, 0xd7dbe937, 0x283029eb, 0x0bdfbe3c, 0x0000c92d, 0x00000000,
+0x5de40000, 0x154ad3d6, 0xcc3c2f1e, 0xf039caf8, 0x000032d3, 0x00000000, 0x00000000, 0x49c4dfec,
+0x33c05518, 0x37d8261b, 0xdbf8c6cc, 0x00000000, 0x00000000, 0xd7efe223, 0x1b38d73a, 0x24cdd342,
+0xe4280843, 0x00000000, 0x00000000, 0x22c41232, 0xc0374543, 0x402ec542, 0xb53312e6, 0x00000000,
+0x00000000, 0xd8e0f726, 0xa62e3fd9, 0x1d12c749, 0xef413c47, 0x00000000, 0x00000000, 0xc7353e27,
+0x2844c82b, 0x0330c2cc, 0x27e035fa, 0x00000000, 0x00000000, 0x40d732bc, 0xd62cd8cc, 0x2e35ee39,
+0xf11dd413, 0x00000000, 0x00000000, 0xd3ddcec2, 0xeabf1ce9, 0x27beb0dd, 0xd2ccdc0a, 0x00000000,
+0x00000000, 0xe92c43c3, 0xddc143e2, 0x36bfef1b, 0xe4b8b936, 0x00000000, 0x00000000, 0xb1e3ecd6,
+0xc1183ae6, 0xab443ee5, 0x20d126c9, 0x00000000, 0x00000000, 0xa1e9cee0, 0x33363f4f, 0x45d51612,
+0x4cf81238, 0x00000000, 0x00000000, 0x1b1abfd6, 0xd1cb4336, 0xc747b939, 0xe0e4ce24, 0x00000000,
+0x00000000, 0xcec6b8de, 0x32d89d25, 0xeb2ebfcd, 0x39e7e23e, 0x00000000, 0x00000000, 0xe224c8d7,
+0xc035ebbf, 0xd4d5d52c, 0xbb15bab0, 0x00000000, 0x00000000, 0xcb2a23c0, 0x3831eadb, 0x4c3dd83d,
+0x2ddb13d7, 0x00000000, 0x00000000, 0x41cb4c30, 0xbed5be10, 0xddda3f25, 0x240e4233, 0x00000000,
+0x00000000, 0xf136323b, 0x17cce231, 0x4bd3aac5, 0xc7d9e340, 0x00000000, 0x00000000, 0x3f230000,
+0x36d327d8, 0xc1d3d9dc, 0xd5dcdc1e, 0x000038ec, 0x00000000, 0xac1e0000, 0xc44224e2, 0xdbb32b28,
+0xcc621fe4, 0x00004ce6, 0x00000000, 0x2f2e0000, 0x2cd748d6, 0xd0c5e1c2, 0xd7dfdccb, 0x00002acb,
+0x00000000, 0xc0d90000, 0x152d1dbb, 0x2822c117, 0xf335192b, 0x00003fae, 0x00000000, 0xc2e60000,
+0xd3cf3a2e, 0x38e7dfe1, 0xc6c54e21, 0x0000edd6, 0x00000000, 0x38cc0000, 0xc53a0ec4, 0xe04628cf,
+0x353f3716, 0x00003bec, 0x00000000, 0x3b310000, 0x3df3d535, 0xcac7cfd8, 0x431f42c1, 0x0000d434,
+0x00000000, 0x223e0000, 0x45302bd5, 0x41c32b1b, 0x3a22bc1f, 0x0000b938, 0x00000000, 0x281a0000,
+0x3fccdb1f, 0xf4c3d6d7, 0x3f1f34e3, 0x00002bc8, 0x00000000, 0xe9e50000, 0x2dd63d2c, 0xd9e6ddea,
+0xd8ec412d, 0x00003921, 0x00000000, 0xc6d70000, 0xc8332913, 0xe4e1e742, 0xcec43fd8, 0x0000c9c3,
+0x00000000, 0xfcd80000, 0xbedc2cdb, 0x3bd2e3e5, 0xbacf190d, 0x0000cdc0, 0x00000000, 0xbeb50000,
+0x53e82f31, 0xdc2e20c3, 0x320e3ad4, 0x0000393b, 0x00000000, 0x31cc0000, 0x43251346, 0xd3a8ef2f,
+0xddb735d3, 0x0000ea1d, 0x00000000, 0xcbb80000, 0x2ca9c6b7, 0xd1203c22, 0x20e3b523, 0x0000d92d,
+0x00000000, 0x25d70000, 0x1d283e31, 0xecdcd0d5, 0x376321d7, 0x0000a8e1, 0x00000000, 0x00000000,
+0xdfdc094a, 0x45ee2238, 0x173edc18, 0x5327b7d1, 0x00000000, 0x00000000, 0x2be32c21, 0x2fbdfcc5,
+0x4729c6c6, 0xdf31c632, 0x00000000, 0x00000000, 0x463fcf17, 0x3d30eaf4, 0x503f2a3b, 0x20d3e211,
+0x00000000, 0x00000000, 0xddda3410, 0xdc40211c, 0xba4a33fc, 0x38dc2d2d, 0x00000000, 0x00000000,
+0xcbd04829, 0x44db2828, 0xd7401dbd, 0xfb2ee3b5, 0x00000000, 0x00000000, 0x203ae222, 0x2e5f33d4,
+0x35c29e1b, 0xebd8473a, 0x00000000, 0x00000000, 0x392d2c3b, 0xeee31727, 0xbce82a29, 0xc8d64ad1,
+0x00000000, 0x00000000, 0xc72638bb, 0x0f1d2e48, 0xd1d6d041, 0xe52b3429, 0x00000000, 0x00000000,
+0xdf2054d2, 0xce124a32, 0xc7ce2337, 0x2d1c3e5b, 0x00000000, 0x00000000, 0xa2373ec9, 0xe5d42730,
+0x1b37ae20, 0x34e63823, 0x00000000, 0x00000000, 0xb8152f30, 0x14cf3128, 0x1fcb3323, 0xaf10c72a,
+0x00000000, 0x00000000, 0x14c3cde0, 0x06c0c833, 0x39edda0e, 0xe1242f02, 0x00000000, 0x00000000,
+0xd92b2b3b, 0xccdd2d2d, 0xdf48bf0c, 0x6524211d, 0x00000000, 0x00000000, 0x42dac1b9, 0xebd43232,
+0xe8f3b63c, 0xf1c03acc, 0x00000000, 0x00000000, 0xcbbec923, 0xf835cc24, 0x27ced912, 0xb736df3b,
+0x00000000, 0x00000000, 0x3b26c92a, 0x203b26cb, 0xb041211b, 0x20cc2d3c, 0x00000000, 0x00000000,
+0x1a220000, 0x3d2a37e1, 0xd8ddd54b, 0x16dcc63f, 0x000022d0, 0x00000000, 0xd0e00000, 0x42e8c7d9,
+0x2c1cdae0, 0x363bb432, 0x0000bfd3, 0x00000000, 0xd5eb0000, 0xce42e5be, 0x0834241c, 0xe41d3047,
+0x000021b6, 0x00000000, 0xf5240000, 0xd6ceba2c, 0x451c1c1d, 0x58134d20, 0x00002c2f, 0x00000000,
+0xcd3f0000, 0x25e7201b, 0x1fcb46b5, 0xf2d1352d, 0x0000b01c, 0x00000000, 0xd7490000, 0xd4e7dfb8,
+0xb5d0dfe3, 0x2cd6c4cf, 0x0000dc2f, 0x00000000, 0xe64a0000, 0xdec73927, 0x2c36c4f5, 0x304722d4,
+0x0000cae8, 0x00000000, 0xc3d00000, 0x5215dd30, 0x30c9c0df, 0xb42cd90e, 0x0000f4f7, 0x00000000,
+0xc0cb0000, 0xb0334857, 0xee45d220, 0xbdc7e815, 0x0000e3e1, 0x00000000, 0x3f140000, 0xcee8db3b,
+0xea42d02c, 0x161f24c4, 0x0000cabd, 0x00000000, 0x1ab80000, 0xd52f3130, 0xd7ece6e9, 0xdac9fbd0,
+0x0000ecc5, 0x00000000, 0xc6ec0000, 0xe327cc44, 0x53b01d36, 0xdad6c725, 0x00001d26, 0x00000000,
+0x23c90000, 0xb4d0d227, 0x3c43ebd9, 0x3141d2da, 0x00004130, 0x00000000, 0x1a2d0000, 0xc82e120f,
+0x2ce6d836, 0x2fe3f239, 0x000047d2, 0x00000000, 0xadbe0000, 0x4ed1d9dc, 0x3ad3cf2a, 0xbbe6e340,
+0x000034d6, 0x00000000, 0xd5c20000, 0x35d51ee3, 0xe424e3c9, 0x20db2a18, 0x00002106, 0x00000000,
+0x00000000, 0x33d035bf, 0x2c2bc0d1, 0x26cd2dbe, 0xd5fa3cb2, 0x00000000, 0x00000000, 0x17413ef1,
+0x492e20da, 0xcae7092d, 0xd723cab9, 0x00000000, 0x00000000, 0x24dacb26, 0xec0dd6c3, 0x1aeee31e,
+0x5fc3da15, 0x00000000, 0x00000000, 0xd70b66b3, 0xdc26d42b, 0x3bc544e5, 0x0335e832, 0x00000000,
+0x00000000, 0x333a362a, 0x38dfbc05, 0xdad50ec0, 0x4dcb44af, 0x00000000, 0x00000000, 0xe3afb626,
+0x0ee4e8bd, 0x082d16e1, 0xdad9bb2d, 0x00000000, 0x00000000, 0x37cfbeca, 0xe9c8282d, 0xc8322bb4,
+0x46ec2618, 0x00000000, 0x00000000, 0x2b47bdca, 0xc724cae7, 0xcdd25cc4, 0x1f1ec6ce, 0x00000000,
+0x00000000, 0x2c3e38ac, 0xca3728c5, 0x3801ebc2, 0x19e62637, 0x00000000, 0x00000000, 0x34c5dc2b,
+0x191b2f16, 0xaf352fbc, 0xe3d5b7c5, 0x00000000, 0x00000000, 0x1c242dd5, 0xd6db38c6, 0x2bc32535,
+0x26e13a09, 0x00000000, 0x00000000, 0xf4b630b9, 0xe4d6dc3b, 0xec2024d3, 0xabd226d4, 0x00000000,
+0x00000000, 0xdca0cdd0, 0xd939df53, 0x1f2721b9, 0x3aba0714, 0x00000000, 0x00000000, 0x233d334e,
+0x4cacbb25, 0xd618330e, 0x2fca3a19, 0x00000000, 0x00000000, 0xccb1294a, 0x2224dc38, 0xc53ce349,
+0x17e2df49, 0x00000000, 0x00000000, 0x44f8d61c, 0xea28e21d, 0x39bea820, 0x32d5d143, 0x00000000,
+0x00000000, 0x1943081c, 0xded6d128, 0x4b06c5c2, 0x35e0263e, 0x00000000, 0x00000000, 0xdd30d723,
+0x50d024e3, 0x40cf5315, 0x39c8d92e, 0x00000000, 0x00000000, 0x23d3d9e3, 0xbacb3154, 0x2cd720db,
+0xd7da3d40, 0x00000000, 0x00000000, 0xb2be1611, 0x4006db40, 0x311f361b, 0xd42e2e36, 0x00000000,
+0x00000000, 0x17c4b2d2, 0x3bceed46, 0x18443a33, 0xe4ce27f6, 0x00000000, 0x00000000, 0xe6e206e1,
+0xde2826d2, 0x4ed8c805, 0x1de1cdc6, 0x00000000, 0x00000000, 0xde34e7d3, 0xc83dc5e5, 0xe1132742,
+0xd5bf41d9, 0x00000000, 0x00000000, 0x34441a3f, 0x40e249b9, 0xf3381e30, 0x26e5c517, 0x00000000,
+0x00000000, 0xd9dcc9ef, 0x402f37d4, 0xc3273ce4, 0xc9cfd8e6, 0x00000000, 0x00000000, 0x2fb806f1,
+0x2130decf, 0x0cc0312d, 0x29452842, 0x00000000, 0x00000000, 0x2ed7c130, 0xdf3bf23f, 0x38dab6b2,
+0xd3444746, 0x00000000, 0x00000000, 0x3c0bd01f, 0xc833e8cd, 0x4824403e, 0xaee34927, 0x00000000,
+0x00000000, 0xdcf1cfc2, 0xd534ce26, 0xc8c32a1f, 0xc242c923, 0x00000000, 0x00000000, 0x1ad2cc2d,
+0x0d2223d1, 0x32253641, 0x1c35c4cd, 0x00000000, 0x00000000, 0x1ddc1dbd, 0xde3cc0dc, 0x0b2c2325,
+0x3eeb3621, 0x00000000, 0x00000000, 0xd3d7db33, 0xcb16d0ed, 0xdf1af232, 0x3132042d, 0x00000000,
+0x00000000, 0xe6420000, 0x252ecc43, 0x443aa42b, 0xd5db293e, 0x0000e632, 0x00000000, 0x1ec00000,
+0x0d25cb24, 0xd4ebcfc6, 0x14030ab1, 0x0000d8ba, 0x00000000, 0x13340000, 0x1b31df31, 0xcb301e44,
+0x564920cc, 0x000049d9, 0x00000000, 0x34250000, 0xebf121f5, 0xd2cab33b, 0xc926cec9, 0x00002b21,
+0x00000000, 0xb62a0000, 0x11ededbd, 0x10e246c8, 0xbbd63e1d, 0x0000d840, 0x00000000, 0xca4f0000,
+0xcdbb4044, 0x3320e6dd, 0xcee3cbea, 0x0000f048, 0x00000000, 0xf3270000, 0xc545c8ca, 0xd91b4240,
+0xdf1dc4c8, 0x000044b6, 0x00000000, 0xe4380000, 0x34c7d2c3, 0xccd9e522, 0x37d4e4e7, 0x0000b4cf,
+0x00000000, 0x44da0000, 0x44e03cd8, 0xd5533017, 0xfbd838ed, 0x0000c037, 0x00000000, 0x3d2e0000,
+0x1ad632dc, 0xf6f84de8, 0x2ab01bcf, 0x0000c5ce, 0x00000000, 0x33e00000, 0xbf242f42, 0xfb2605c2,
+0x3cdd23c0, 0x0000ef39, 0x00000000, 0xd6dc0000, 0xde2a1323, 0xcd30bf30, 0xd43b1ae3, 0x0000c714,
+0x00000000, 0xd6d40000, 0x18c0ca3e, 0xc01c1bc0, 0xdeb1b836, 0x00002dd2, 0x00000000, 0xe9450000,
+0x35d31c42, 0xdd381b15, 0xbf3cdd15, 0x00002428, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x62ea8129, 0xc91aa231, 0xbb44af54, 0xefaed019, 0xf253b128, 0x31da7d4f, 0x222e8558, 0x3c649282,
+0xb08f0fd5, 0xd6fdf6e9, 0xd44465e1, 0x91f63859, 0x28e43bd0, 0x552b2bbc, 0x22cd876f, 0x663ac13f,
+0xe8218f45, 0x278584b0, 0xad13a4f4, 0x2b82f157, 0xd0a6245e, 0x2a4586cd, 0xd08f9e08, 0x4527b024,
+0x1e4358b3, 0x8c24f783, 0x77f1991c, 0x5c7afd54, 0x5b15252b, 0x664d25ba, 0x3c897601, 0x88364e8c,
+0xe86430ca, 0x6ad0d1a5, 0xc3cc3e08, 0x9bffbd0f, 0x703ae95e, 0xa0a91cfd, 0xe0c26f76, 0xee9de372,
+0xd70ebb79, 0x4012352d, 0xf9edae2d, 0xb851949a, 0x89e5b526, 0x52753020, 0x07d12a87, 0x9ef89ae9,
+0x65dd3a22, 0x7be8ada4, 0x22de9d16, 0x3acc1377, 0x24e3ecdc, 0x051faabb, 0x2710ddd0, 0xe10cd952,
+0x0769aae0, 0x04565d9a, 0xeeaaec2c, 0xcb9f12ed, 0x93f32d65, 0x10740ff9, 0x9b424cd6, 0xca25ec6c,
+0x4662ab6e, 0x9af71ed2, 0x6e99e78b, 0xa6081e2d, 0x98f414c1, 0x3af017d5, 0xfb846775, 0xeb7eb09b,
+0xcddf798f, 0x8a029645, 0xadbc2b4f, 0xa699505f, 0xfdf5d3ca, 0xf99b0e86, 0xa958a001, 0x3c33c3bb,
+0x3fdc4b11, 0x0ad413a8, 0x4246342f, 0x745971ce, 0x56b03202, 0x7bf76e9c, 0x78fd9536, 0x346b743d,
+0xb6ca3ef5, 0x1bfcd131, 0xc132b053, 0x37c6b1da, 0x40bd5ab1, 0x0417ccc6, 0xe472551b, 0x431854f8,
+0x8b5d2f2d, 0xa2d9f0a3, 0xc547fbcb, 0x8703550a, 0xcdadb145, 0xe5c89707, 0x0328ce29, 0xd8e29825,
+0x7eab16cd, 0x94167a25, 0xfda9fc22, 0xc34be08d, 0x6aeba18a, 0x7e465273, 0xe53732fa, 0x08f5e8d3,
+0x874ba296, 0x40ef331f, 0x43d92943, 0x5ed88d8f, 0x9f0df290, 0xdc350034, 0x5d94cbbd, 0x4d89b9fd,
+0xd2610a7f, 0x984557e9, 0x40c4a3d7, 0x0d5a1007, 0xc70fc77e, 0x46f623c7, 0x54b1a106, 0xf886e71d,
+0x72c4ecab, 0x5e4b9028, 0xf73869ff, 0x93c759df, 0x4e1f3f63, 0x4ce818a5, 0x81073d1c, 0xcd2e5f51,
+0x86fecfb3, 0xe0d383f0, 0x028ed120, 0x0a10c677, 0x5b6dd641, 0xbc9b2c97, 0xc188fd1a, 0x1f541bd6,
+0x4bbdab31, 0x2cee799b, 0xad70c922, 0xa6e51b28, 0xe60e2e44, 0x7f9a5de4, 0x2c55e1b8, 0x133f269d,
+0xa92bd0f5, 0xf84f575e, 0x6ecde27e, 0x819756b2, 0x1977a95d, 0xf2fe95b5, 0x49205968, 0x33e83acd,
+0x1e12bf67, 0xb877646f, 0x20ac05cc, 0xc9c32771, 0x931503be, 0xab5cb678, 0x04376062, 0x8b036000,
+0xb673afef, 0x912ba442, 0x4cb7f1c3, 0x55475211, 0x7b5b51a7, 0x19b28678, 0xb0e113e0, 0x362468b2,
+0x3022a822, 0xe2b47894, 0xe4e3b327, 0xa942f3e4, 0x4002151b, 0x75efe93c, 0xfd99131d, 0x03100e6a,
+0xc4fec172, 0xe542c4c2, 0xab841397, 0xca3689ed, 0xf4bea8b6, 0xd56568bc, 0x9209be50, 0x4f144878
+
+soft_output0 =
+0x7f817f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x817f7f7f,
+0x81817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x7f818181, 0x81818181, 0x7f818181, 0x81818181,
+0x817f8181, 0x7f7f7f7f, 0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f7f8181, 0x7f7f7f7f, 0x81817f81,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x81818181,
+0x8181817f, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f7f, 0x81817f7f, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x81817f7f,
+0x7f81817f, 0x81818181, 0x7f818181, 0x81818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x81818181, 0x817f817f, 0x817f7f7f,
+0x7f7f817f, 0x817f8181, 0x817f7f7f, 0x817f8181, 0x7f818181, 0x7f81817f, 0x7f818181, 0x7f817f81,
+0x817f8181, 0x817f817f, 0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x7f817f7f, 0x81817f7f, 0x817f7f7f,
+0x81818181, 0x81817f81, 0x7f7f817f, 0x81817f7f, 0x81818181, 0x8181817f, 0x8181817f, 0x7f7f7f7f,
+0x817f817f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x81818181, 0x7f817f81, 0x817f7f7f,
+0x7f817f81, 0x817f7f7f, 0x7f7f817f, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f817f7f, 0x81817f81,
+0x7f7f8181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f7f8181,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f8181, 0x7f817f81,
+0x8181817f, 0x7f7f7f81, 0x81818181, 0x7f7f7f7f, 0x7f817f81, 0x7f817f81, 0x7f7f817f, 0x817f7f7f,
+0x81817f81, 0x8181817f, 0x81817f81, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x81817f7f, 0x81817f81,
+0x817f817f, 0x81817f81, 0x81818181, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f817f7f,
+0x81818181, 0x817f8181, 0x8181817f, 0x7f817f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81,
+0x81817f7f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f817f,
+0x817f817f, 0x817f8181, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x7f817f7f, 0x81818181, 0x7f818181,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f81, 0x81818181, 0x7f7f7f81, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x7f818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x7f7f817f, 0x817f8181, 0x7f817f81, 0x817f7f81, 0x8181817f, 0x81817f7f, 0x7f817f7f, 0x8181817f,
+0x817f7f81, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x817f8181, 0x7f7f817f, 0x81817f7f, 0x817f817f,
+0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f7f7f81,
+0x7f7f7f7f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f81817f, 0x7f7f817f, 0x7f7f8181, 0x817f817f,
+0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x7f7f817f, 0x7f818181, 0x817f8181, 0x7f81817f,
+0x7f81817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f7f817f, 0x817f7f81, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x817f7f81, 0x81817f81, 0x7f81817f, 0x7f7f817f,
+0x81817f81, 0x7f7f817f, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f7f81, 0x817f817f,
+0x7f817f7f, 0x7f7f7f81, 0x7f817f81, 0x81817f81, 0x817f817f, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181,
+0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x7f81817f, 0x7f81817f,
+0x7f7f817f, 0x817f8181, 0x7f7f7f81, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f81, 0x817f7f7f,
+0x8181817f, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f7f7f, 0x81817f81,
+0x81817f7f, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x81818181, 0x7f7f7f81, 0x817f817f, 0x81818181,
+0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81817f7f, 0x7f7f7f81,
+0x7f81817f, 0x817f817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f, 0x81818181, 0x7f7f817f,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f81,
+0x7f7f7f81, 0x817f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f81817f, 0x81817f7f, 0x817f8181,
+0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x7f817f7f, 0x817f7f81, 0x7f817f7f, 0x817f8181, 0x81817f81,
+0x817f7f7f, 0x7f7f7f81, 0x7f818181, 0x81818181, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f818181,
+0x7f817f81, 0x817f8181, 0x81818181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x7f818181, 0x7f818181,
+0x7f81817f, 0x817f7f81, 0x81818181, 0x7f818181, 0x817f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181,
+0x81817f7f, 0x7f7f7f7f, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f7f,
+0x817f7f81, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x8181817f, 0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f7f817f, 0x7f7f817f,
+0x817f817f, 0x81817f7f, 0x7f81817f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x8181817f, 0x7f81817f,
+0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x81817f81, 0x817f7f7f, 0x817f7f81, 0x817f7f81, 0x817f7f7f,
+0x817f817f, 0x817f8181, 0x7f817f7f, 0x817f7f7f, 0x7f817f81, 0x7f817f81, 0x817f817f, 0x7f81817f,
+0x81817f7f, 0x7f7f7f81, 0x7f7f8181, 0x81817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x817f8181,
+0x81818181, 0x81817f81, 0x7f817f81, 0x7f7f7f81, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x7f7f7f81,
+0x7f818181, 0x817f7f81, 0x7f7f817f, 0x7f818181, 0x817f817f, 0x7f7f8181, 0x7f7f817f, 0x7f81817f,
+0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f7f81, 0x7f817f7f,
+0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f7f, 0x817f7f81, 0x817f7f81,
+0x81817f81, 0x7f81817f, 0x81817f7f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f817f81, 0x81818181,
+0x817f817f, 0x817f8181, 0x81818181, 0x8181817f, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x7f7f817f,
+0x817f8181, 0x817f7f7f, 0x817f8181, 0x817f7f7f, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x81818181, 0x7f7f817f, 0x817f7f81, 0x81817f7f,
+0x817f8181, 0x817f817f, 0x7f7f7f7f, 0x81817f7f, 0x7f81817f, 0x817f817f, 0x817f7f81, 0x7f7f817f,
+0x7f818181, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x81818181, 0x7f817f81, 0x7f7f7f7f, 0x8181817f,
+0x817f817f, 0x81818181, 0x7f7f8181, 0x817f817f, 0x81818181, 0x7f817f81, 0x817f7f7f, 0x81817f7f,
+0x7f81817f, 0x8181817f, 0x817f7f81, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f7f81, 0x7f7f7f7f,
+0x817f7f7f, 0x81817f81, 0x817f7f81, 0x81818181, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x817f7f81,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x81817f7f, 0x81818181, 0x8181817f, 0x7f817f7f,
+0x81817f81, 0x7f817f7f, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x817f7f81, 0x7f817f81, 0x7f818181, 0x7f7f8181, 0x7f7f817f, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f7f817f, 0x817f817f, 0x7f81817f,
+0x7f818181, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f81, 0x8181817f, 0x81817f81, 0x817f817f,
+0x7f7f7f7f, 0x817f817f, 0x817f8181, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x81817f7f,
+0x817f7f7f, 0x7f817f7f, 0x7f7f8181, 0x7f7f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f8181, 0x8181817f,
+0x81817f81, 0x817f7f7f, 0x8181817f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x7f7f817f, 0x7f818181,
+0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f81817f,
+0x7f817f7f, 0x81817f7f, 0x81818181, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f7f, 0x7f7f7f7f, 0x81817f81, 0x817f7f7f, 0x7f818181, 0x7f7f817f,
+0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f7f817f,
+0x8181817f, 0x7f81817f, 0x8181817f, 0x7f7f7f81, 0x817f817f, 0x81817f81, 0x817f817f, 0x81817f81,
+0x7f81817f, 0x81818181, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f818181,
+0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x817f7f7f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x7f7f8181,
+0x817f817f, 0x8181817f, 0x817f7f81, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f818181,
+0x7f818181, 0x817f817f, 0x81817f81, 0x817f8181, 0x7f7f7f7f, 0x817f8181, 0x7f818181, 0x817f7f7f,
+0x7f817f7f, 0x81817f7f, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f817f, 0x7f818181, 0x81818181,
+0x7f7f8181, 0x817f8181, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x81817f7f, 0x8181817f, 0x81817f81,
+0x8181817f, 0x7f817f81, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f7f7f81, 0x81818181,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x81817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x817f817f, 0x817f817f,
+0x817f817f, 0x7f817f7f, 0x7f818181, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f81, 0x8181817f,
+0x7f817f7f, 0x7f817f81, 0x817f7f7f, 0x817f7f7f, 0x817f8181, 0x81817f7f, 0x817f7f81, 0x81817f81,
+0x7f81817f, 0x7f81817f, 0x7f818181, 0x7f817f81, 0x8181817f, 0x7f81817f, 0x817f8181, 0x81818181,
+0x817f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f7f, 0x81818181,
+0x7f7f817f, 0x817f7f81, 0x81817f81, 0x7f7f7f81, 0x81817f81, 0x81817f81, 0x817f7f81, 0x8181817f,
+0x7f7f8181, 0x817f8181, 0x817f7f81, 0x7f818181, 0x817f7f7f, 0x7f817f81, 0x817f7f81, 0x81817f81,
+0x817f8181, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x817f7f81, 0x7f818181, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x7f817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f817f, 0x817f7f7f, 0x7f817f7f,
+0x7f81817f, 0x7f817f7f, 0x7f818181, 0x8181817f, 0x7f7f7f81, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x81817f7f, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f817f, 0x7f7f7f7f,
+0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x817f7f81, 0x817f817f, 0x7f7f7f81, 0x8181817f, 0x817f8181,
+0x7f7f7f81, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f7f, 0x7f818181, 0x81817f7f, 0x81817f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f8181, 0x7f817f7f, 0x7f818181, 0x7f81817f, 0x7f81817f, 0x7f81817f, 0x817f817f,
+0x7f7f7f81, 0x81818181, 0x81817f7f, 0x817f7f81, 0x7f817f81, 0x8181817f, 0x7f7f8181, 0x8181817f,
+0x817f7f81, 0x81817f81, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f7f, 0x7f817f81, 0x7f7f8181, 0x7f7f817f, 0x817f7f81, 0x81817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x817f7f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f817f7f, 0x7f7f8181, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f81817f, 0x7f81817f, 0x817f817f, 0x817f817f, 0x81817f7f,
+0x817f8181, 0x7f7f8181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f817f7f, 0x817f7f81, 0x7f817f7f,
+0x7f81817f, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x817f7f81, 0x817f7f81, 0x81817f81, 0x7f7f8181,
+0x817f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x7f818181, 0x817f817f, 0x817f817f, 0x81817f7f, 0x817f7f7f,
+0x8181817f, 0x7f81817f, 0x817f7f7f, 0x817f7f81, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181,
+0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f81, 0x81817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181,
+0x7f81817f, 0x7f7f7f81, 0x7f818181, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f8181, 0x81817f81, 0x7f81817f, 0x81818181, 0x817f7f81, 0x817f8181, 0x7f818181, 0x81817f81,
+0x81818181, 0x81817f81, 0x817f817f, 0x7f817f7f, 0x7f817f81, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f7f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f818181, 0x817f7f7f, 0x81817f81, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x81817f81, 0x817f817f, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x7f817f7f, 0x817f8181,
+0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81818181, 0x81818181, 0x7f818181, 0x81817f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x81818181, 0x7f7f817f,
+0x81817f81, 0x817f7f81, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x81817f7f, 0x817f8181,
+0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f8181, 0x817f7f81, 0x81817f81,
+0x817f817f, 0x817f817f, 0x7f817f7f, 0x7f81817f, 0x7f7f7f81, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x817f7f81, 0x81817f81, 0x7f818181, 0x7f817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f817f,
+0x7f817f7f, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81818181, 0x81817f7f, 0x817f7f81, 0x7f818181, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f8181,
+0x7f7f817f, 0x7f817f81, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x8181817f, 0x81817f81,
+0x7f7f7f7f, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f7f817f, 0x81817f7f, 0x81817f7f, 0x7f817f81,
+0x81818181, 0x817f8181, 0x81817f81, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x8181817f, 0x7f7f817f,
+0x81818181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x8181817f, 0x7f817f7f, 0x817f7f81, 0x817f7f81,
+0x7f7f817f, 0x7f817f81, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f7f81, 0x8181817f, 0x81818181, 0x7f818181, 0x8181817f, 0x7f7f817f, 0x81817f7f, 0x817f8181,
+0x817f817f, 0x817f8181, 0x81818181, 0x7f817f81, 0x7f817f81, 0x7f818181, 0x8181817f, 0x7f818181,
+0x81817f81, 0x8181817f, 0x81817f81, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f7f7f,
+0x81817f81, 0x7f817f81, 0x817f7f7f, 0x8181817f, 0x7f7f7f7f, 0x817f817f, 0x7f7f817f, 0x7f81817f,
+0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x81818181, 0x817f817f,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x8181817f, 0x817f8181, 0x817f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f817f7f, 0x7f7f8181, 0x817f7f7f, 0x81817f7f, 0x7f817f81, 0x7f817f7f, 0x7f818181, 0x817f7f7f,
+0x817f7f81, 0x81818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x817f8181, 0x81817f81, 0x817f7f81,
+0x7f7f817f, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f7f81, 0x7f817f7f, 0x8181817f, 0x81818181,
+0x7f7f7f7f, 0x81817f81, 0x8181817f, 0x81818181, 0x7f7f817f, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x817f8181, 0x817f817f, 0x817f8181, 0x817f817f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x81818181,
+0x7f7f7f81, 0x81817f81, 0x8181817f, 0x817f7f81, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f7f81,
+0x817f7f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x7f7f817f, 0x7f817f81,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f818181, 0x7f81817f, 0x817f8181,
+0x7f818181, 0x8181817f, 0x8181817f, 0x7f7f8181, 0x8181817f, 0x7f818181, 0x7f7f8181, 0x817f7f81,
+0x817f8181, 0x8181817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x8181817f, 0x817f8181, 0x7f81817f,
+0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x817f817f,
+0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x817f817f, 0x817f817f, 0x7f7f7f81, 0x81818181, 0x81817f7f,
+0x7f7f817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x817f8181, 0x7f7f7f7f, 0x7f7f7f81, 0x7f818181,
+0x81817f7f, 0x8181817f, 0x7f7f8181, 0x7f81817f, 0x817f817f, 0x817f817f, 0x7f81817f, 0x81817f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f81817f, 0x817f7f7f, 0x8181817f, 0x7f7f817f, 0x81817f81, 0x81817f7f,
+0x7f81817f, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x7f7f8181,
+0x7f817f81, 0x81817f7f, 0x7f817f81, 0x81817f81, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x7f818181,
+0x817f817f, 0x7f818181, 0x817f7f81, 0x81817f81, 0x81817f81, 0x7f81817f, 0x7f81817f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x81817f81, 0x81817f81, 0x7f7f7f7f, 0x81818181, 0x8181817f, 0x81818181,
+0x7f81817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f81, 0x7f817f7f, 0x7f817f81,
+0x7f7f7f7f, 0x81817f81, 0x7f818181, 0x817f817f, 0x7f81817f, 0x7f817f81, 0x817f7f81, 0x7f817f81,
+0x81818181, 0x7f7f7f7f, 0x7f7f7f81, 0x8181817f, 0x7f7f817f, 0x81818181, 0x7f7f817f, 0x7f7f817f,
+0x7f7f817f, 0x817f817f, 0x81817f81, 0x7f818181, 0x7f7f7f81, 0x817f7f7f, 0x817f817f, 0x8181817f,
+0x7f7f817f, 0x81817f7f, 0x817f7f7f, 0x7f81817f, 0x7f817f81, 0x7f817f81, 0x7f7f7f7f, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f8181, 0x817f7f7f, 0x81817f81, 0x81817f7f, 0x81818181, 0x7f817f81,
+0x7f7f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x7f7f8181, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f7f7f81,
+0x8181817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81,
+0x81817f81, 0x817f7f81, 0x817f7f7f, 0x81817f81, 0x81818181, 0x7f7f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f7f8181, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f7f, 0x7f7f817f, 0x7f7f7f7f, 0x8181817f,
+0x7f817f7f, 0x81817f81, 0x7f817f7f, 0x7f817f81, 0x81818181, 0x7f7f817f, 0x7f7f8181, 0x81817f81,
+0x7f7f7f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x81818181, 0x81817f81, 0x7f7f8181, 0x817f8181,
+0x81818181, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x817f817f, 0x817f7f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x7f818181, 0x81817f7f,
+0x817f7f81, 0x817f7f81, 0x817f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x8181817f, 0x81817f7f,
+0x7f817f7f, 0x7f818181, 0x817f817f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f7f7f, 0x7f81817f,
+0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x7f7f7f81,
+0x7f7f8181, 0x7f7f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f, 0x7f7f7f7f, 0x81818181, 0x81818181,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f81, 0x81818181, 0x817f817f,
+0x7f817f7f, 0x7f81817f, 0x8181817f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x8181817f, 0x81818181,
+0x7f7f7f81, 0x81817f7f, 0x7f7f7f81, 0x7f817f7f, 0x7f817f81, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x7f818181, 0x817f7f7f, 0x7f7f7f7f, 0x81817f7f, 0x817f817f, 0x817f8181, 0x7f818181, 0x7f817f7f,
+0x81817f81, 0x7f818181, 0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x7f818181, 0x817f8181, 0x817f817f, 0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x817f817f, 0x8181817f,
+0x81818181, 0x817f7f7f, 0x817f8181, 0x817f7f81, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f,
+0x7f817f81, 0x81818181, 0x817f8181, 0x7f818181, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f,
+0x817f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f818181, 0x81817f81, 0x7f818181, 0x7f818181, 0x7f817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x81818181, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f,
+0x81817f7f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f7f, 0x81817f7f, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81817f7f, 0x817f817f, 0x817f817f, 0x7f818181, 0x817f817f, 0x817f7f81, 0x7f81817f,
+0x7f817f7f, 0x817f8181, 0x81817f81, 0x7f81817f, 0x7f817f7f, 0x7f817f7f, 0x817f7f7f, 0x81818181,
+0x7f817f7f, 0x7f7f8181, 0x817f817f, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f7f817f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x81818181,
+0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f818181, 0x7f7f7f81, 0x817f8181, 0x7f818181,
+0x7f7f7f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f817f7f, 0x817f817f, 0x7f818181, 0x8181817f,
+0x7f7f8181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x81817f81, 0x817f7f7f, 0x7f7f7f7f, 0x7f817f81,
+0x81818181, 0x817f7f81, 0x81817f7f, 0x817f8181, 0x7f818181, 0x81817f7f, 0x7f7f817f, 0x81817f7f,
+0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x8181817f, 0x81817f7f, 0x817f817f, 0x81817f7f, 0x7f7f817f,
+0x817f8181, 0x7f7f817f, 0x81817f7f, 0x7f7f8181, 0x7f81817f, 0x7f7f8181, 0x81817f81, 0x7f7f7f81,
+0x7f7f8181, 0x7f818181, 0x817f8181, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f, 0x81818181, 0x81817f7f,
+0x7f7f7f7f, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x7f817f7f, 0x8181817f, 0x7f7f817f, 0x817f8181,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f817f, 0x817f817f, 0x7f7f8181, 0x817f817f, 0x81817f7f,
+0x7f81817f, 0x7f7f7f81, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x8181817f,
+0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f817f81, 0x817f817f, 0x7f818181,
+0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x817f7f7f, 0x81818181, 0x817f8181, 0x7f81817f,
+0x81817f81, 0x7f817f7f, 0x7f7f8181, 0x817f8181, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x817f7f7f,
+0x7f7f8181, 0x817f8181, 0x817f7f7f, 0x81817f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x7f7f7f7f,
+0x7f81817f, 0x81817f7f, 0x7f7f7f7f, 0x817f8181, 0x7f7f817f, 0x817f8181, 0x81817f7f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f7f7f81, 0x7f7f7f81, 0x7f817f7f, 0x81817f81,
+0x7f817f81, 0x7f7f817f, 0x7f7f817f, 0x7f7f817f, 0x81818181, 0x817f7f81, 0x817f7f7f, 0x81817f7f,
+0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x8181817f, 0x7f817f81,
+0x7f817f81, 0x8181817f, 0x7f7f817f, 0x817f7f7f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f7f81,
+0x817f7f81, 0x81818181, 0x7f817f81, 0x817f8181, 0x7f817f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f7f,
+0x817f817f, 0x81817f7f, 0x817f817f, 0x8181817f, 0x7f7f7f7f, 0x8181817f, 0x817f817f, 0x7f7f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x7f7f8181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f81817f, 0x817f7f81, 0x7f7f817f, 0x81817f81,
+0x81817f81, 0x7f7f7f7f, 0x7f818181, 0x7f7f7f81, 0x7f817f7f, 0x7f818181, 0x81817f7f, 0x7f818181,
+0x7f818181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f, 0x817f7f81, 0x817f817f,
+0x81817f81, 0x817f7f7f, 0x817f7f81, 0x7f7f817f, 0x81818181, 0x7f818181, 0x817f8181, 0x817f7f81,
+0x8181817f, 0x7f7f8181, 0x817f8181, 0x817f8181, 0x7f817f81, 0x7f7f8181, 0x7f7f8181, 0x817f7f7f,
+0x7f7f7f81, 0x7f817f7f, 0x81817f81, 0x81817f7f, 0x817f817f, 0x7f818181, 0x7f7f817f, 0x7f818181,
+0x7f818181, 0x7f7f817f, 0x817f8181, 0x7f81817f, 0x7f7f7f81, 0x7f817f81, 0x7f7f8181, 0x817f817f,
+0x81817f81, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x7f818181, 0x817f7f81,
+0x7f7f817f, 0x7f7f817f, 0x817f817f, 0x7f818181, 0x7f7f8181, 0x7f7f8181, 0x7f818181, 0x817f8181,
+0x7f817f7f, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x7f7f817f, 0x817f7f81, 0x7f7f817f, 0x817f7f7f,
+0x817f7f7f, 0x817f8181, 0x81817f7f, 0x7f818181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f,
+0x7f7f8181, 0x81817f7f, 0x7f817f7f, 0x817f817f, 0x7f7f817f, 0x817f7f7f, 0x7f7f817f, 0x7f7f7f81,
+0x7f817f7f, 0x7f7f7f81, 0x81817f7f, 0x7f817f7f, 0x817f8181, 0x8181817f, 0x7f818181, 0x8181817f,
+0x817f7f7f, 0x81818181, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x7f7f817f, 0x81817f7f, 0x8181817f,
+0x7f7f7f81, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x81817f81, 0x81817f7f, 0x7f7f817f, 0x7f818181,
+0x817f8181, 0x817f817f, 0x81817f7f, 0x81817f7f, 0x7f7f7f81, 0x817f8181, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f, 0x7f817f81,
+0x7f7f817f, 0x7f7f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x7f81817f, 0x817f8181,
+0x817f817f, 0x7f817f81, 0x7f817f81, 0x8181817f, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f, 0x7f7f817f,
+0x7f7f817f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x7f7f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f817f81,
+0x817f817f, 0x7f817f7f, 0x81818181, 0x7f7f817f, 0x7f7f7f7f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f,
+0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x81817f7f, 0x7f817f81, 0x817f8181, 0x7f7f8181, 0x7f817f7f,
+0x7f7f8181, 0x81817f7f, 0x7f7f8181, 0x8181817f, 0x8181817f, 0x7f81817f, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f817f7f, 0x8181817f, 0x8181817f, 0x7f817f7f, 0x8181817f, 0x8181817f,
+0x7f817f81, 0x817f8181, 0x7f7f817f, 0x81817f81, 0x7f818181, 0x7f7f7f7f, 0x81817f81, 0x8181817f,
+0x7f81817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f817f81, 0x817f7f81, 0x7f818181, 0x817f817f, 0x817f8181,
+0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f, 0x7f7f7f81, 0x817f8181, 0x81817f81, 0x7f81817f,
+0x7f818181, 0x7f817f81, 0x817f8181, 0x817f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f7f,
+0x7f7f7f81, 0x7f7f8181, 0x7f817f81, 0x7f817f7f, 0x7f817f81, 0x7f81817f, 0x7f818181, 0x8181817f,
+0x81817f81, 0x7f817f81, 0x81818181, 0x81817f7f, 0x7f7f8181, 0x7f7f817f, 0x817f8181, 0x7f81817f,
+0x7f818181, 0x817f7f81, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x81817f81,
+0x817f7f81, 0x7f817f81, 0x817f8181, 0x7f817f7f, 0x8181817f, 0x7f7f7f81, 0x7f81817f, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f7f81, 0x7f81817f,
+0x8181817f, 0x8181817f, 0x7f817f7f, 0x81817f7f, 0x817f817f, 0x817f7f7f, 0x817f817f, 0x81817f7f,
+0x817f7f81, 0x817f8181, 0x7f7f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f817f81, 0x7f817f81, 0x817f8181,
+0x7f7f8181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x8181817f, 0x7f818181, 0x8181817f, 0x7f7f7f81,
+0x81817f81, 0x817f7f7f, 0x81818181, 0x7f7f8181, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x81817f7f,
+0x7f81817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f81817f, 0x81817f7f, 0x7f81817f,
+0x817f817f, 0x7f7f8181, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x8181817f, 0x7f7f7f81, 0x7f7f8181,
+0x81817f7f, 0x7f817f81, 0x81817f81, 0x817f8181, 0x7f7f8181, 0x8181817f, 0x817f7f81, 0x7f7f7f81,
+0x817f7f81, 0x7f7f817f, 0x7f7f8181, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f,
+0x7f818181, 0x817f8181, 0x817f7f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x81818181, 0x7f817f81,
+0x81818181, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x81817f81, 0x81817f81, 0x817f7f7f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x817f7f7f, 0x817f7f7f, 0x81818181, 0x7f817f7f, 0x7f817f81, 0x81818181,
+0x81817f81, 0x7f7f7f7f, 0x817f8181, 0x817f8181, 0x817f7f81, 0x817f817f, 0x7f7f7f7f, 0x817f7f7f,
+0x7f818181, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f7f, 0x817f7f7f,
+0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f7f7f, 0x7f817f81, 0x81818181, 0x7f7f7f81, 0x7f817f81,
+0x7f7f7f7f, 0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f7f, 0x7f818181,
+0x7f7f7f7f, 0x81817f7f, 0x7f818181, 0x7f817f81, 0x7f7f817f, 0x817f8181, 0x817f817f, 0x81817f7f,
+0x7f7f8181, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x81817f7f, 0x7f817f81,
+0x817f817f, 0x7f817f81, 0x81818181, 0x7f81817f, 0x7f81817f, 0x817f7f81, 0x7f7f7f7f, 0x817f817f,
+0x817f8181, 0x7f818181, 0x817f7f81, 0x7f7f817f, 0x817f7f7f, 0x7f817f81, 0x7f7f7f7f, 0x7f818181,
+0x7f7f7f81, 0x817f817f, 0x8181817f, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x817f7f7f, 0x81817f81,
+0x7f817f7f, 0x7f7f817f, 0x817f7f7f, 0x817f817f, 0x7f7f817f, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x7f7f8181, 0x7f7f7f7f, 0x8181817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f818181,
+0x7f817f81, 0x81818181, 0x7f81817f, 0x7f817f81, 0x81818181, 0x7f818181, 0x7f7f817f, 0x817f7f7f,
+0x7f7f817f, 0x7f81817f, 0x81818181, 0x7f817f81, 0x7f817f81, 0x817f8181, 0x7f7f7f7f, 0x7f818181,
+0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f81817f, 0x817f7f81, 0x7f7f7f81, 0x7f817f81, 0x7f817f81,
+0x7f7f8181, 0x7f818181, 0x7f817f7f, 0x7f817f81, 0x81817f81, 0x7f7f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x7f7f7f7f, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f7f7f, 0x7f7f7f81, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x7f7f8181, 0x7f7f8181, 0x81817f81, 0x7f81817f, 0x817f7f7f,
+0x817f7f81, 0x81817f7f, 0x81817f81, 0x817f817f, 0x81818181, 0x81817f7f, 0x817f817f, 0x7f817f81,
+0x81817f7f, 0x81817f81, 0x81817f81, 0x7f7f7f81, 0x817f7f81, 0x8181817f, 0x7f7f817f, 0x817f817f,
+0x7f7f7f81, 0x817f817f, 0x7f817f7f, 0x81817f81, 0x817f7f81, 0x817f817f, 0x7f81817f, 0x7f7f817f,
+0x7f7f817f, 0x7f818181, 0x7f7f7f81, 0x7f818181, 0x817f7f81, 0x817f8181, 0x7f7f817f, 0x817f8181,
+0x7f817f81, 0x7f7f7f7f, 0x81817f81, 0x81818181, 0x7f818181, 0x817f7f81, 0x817f8181, 0x817f817f,
+0x817f7f81, 0x7f7f8181, 0x7f81817f, 0x7f817f81, 0x817f7f7f, 0x7f7f7f81, 0x81817f7f, 0x7f7f8181,
+0x81818181, 0x7f7f8181, 0x7f7f817f, 0x817f7f7f, 0x81817f7f, 0x8181817f, 0x7f817f7f, 0x81818181,
+0x817f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f81, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x817f817f,
+0x817f7f81, 0x81817f81, 0x7f7f8181, 0x7f7f7f81, 0x7f817f7f, 0x8181817f, 0x817f8181, 0x7f7f7f7f,
+0x7f818181, 0x7f7f8181, 0x8181817f, 0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x817f8181, 0x7f81817f,
+0x7f7f7f81, 0x8181817f, 0x81817f7f, 0x8181817f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x817f817f,
+0x7f7f7f7f, 0x7f7f8181, 0x81818181, 0x7f7f817f, 0x7f818181, 0x7f7f7f7f, 0x817f7f81, 0x81817f7f,
+0x81817f81, 0x7f81817f, 0x817f7f7f, 0x7f7f817f, 0x8181817f, 0x8181817f, 0x8181817f, 0x7f7f817f,
+0x81817f81, 0x817f8181, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x81817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x81817f81, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x81817f81, 0x7f7f8181, 0x7f7f8181,
+0x817f817f, 0x7f81817f, 0x7f7f817f, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x81817f7f, 0x7f7f817f,
+0x817f817f, 0x7f818181, 0x7f7f8181, 0x81817f7f, 0x817f7f81, 0x7f7f7f81, 0x7f7f817f, 0x81818181,
+0x7f817f81, 0x7f7f7f81, 0x817f7f81, 0x81817f7f, 0x817f7f81, 0x81817f7f, 0x7f817f7f, 0x81818181,
+0x7f7f7f81, 0x7f81817f, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f81817f, 0x7f817f7f, 0x81817f7f,
+0x817f8181, 0x7f7f7f7f, 0x81817f7f, 0x81818181, 0x7f817f7f, 0x8181817f, 0x81818181, 0x81818181,
+0x7f818181, 0x7f7f7f7f, 0x7f7f7f81, 0x81817f7f, 0x8181817f, 0x8181817f, 0x7f818181, 0x817f7f81,
+0x7f817f81, 0x7f81817f, 0x81818181, 0x817f7f7f, 0x7f7f7f7f, 0x7f7f8181, 0x7f7f7f81, 0x7f81817f,
+0x7f7f8181, 0x7f817f7f, 0x7f7f7f81, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x817f8181, 0x817f8181,
+0x7f818181, 0x817f7f7f, 0x817f7f81, 0x7f817f7f, 0x7f81817f, 0x81817f81, 0x7f7f7f7f, 0x8181817f,
+0x7f81817f, 0x7f7f7f81, 0x817f817f, 0x7f818181, 0x7f817f7f, 0x7f817f7f, 0x81818181, 0x817f8181,
+0x7f81817f, 0x8181817f, 0x7f7f817f, 0x7f81817f, 0x817f7f7f, 0x81817f7f, 0x81817f7f, 0x7f817f7f,
+0x817f7f7f, 0x7f7f817f, 0x817f7f81, 0x7f7f7f81, 0x817f8181, 0x8181817f, 0x817f7f81, 0x7f7f817f,
+0x817f7f7f, 0x7f7f7f81, 0x817f7f81, 0x817f7f7f, 0x7f7f817f, 0x817f8181, 0x7f817f81, 0x81817f7f,
+0x7f7f8181, 0x7f817f81, 0x817f8181, 0x7f7f817f, 0x817f817f, 0x81818181, 0x81817f7f, 0x81818181,
+0x81817f81, 0x7f818181, 0x8181817f, 0x8181817f, 0x7f817f81, 0x817f7f81, 0x81817f81, 0x7f81817f,
+0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x81818181, 0x817f7f81, 0x817f7f81, 0x7f817f81, 0x7f7f817f,
+0x7f7f817f, 0x81818181, 0x7f7f7f7f, 0x7f817f7f, 0x7f817f7f, 0x7f81817f, 0x817f817f, 0x7f7f8181,
+0x81817f7f, 0x817f817f, 0x8181817f, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f81817f, 0x817f8181,
+0x7f81817f, 0x817f8181, 0x8181817f, 0x817f8181, 0x817f8181, 0x8181817f, 0x817f8181, 0x7f7f8181,
+0x8181817f, 0x817f7f81, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f817f7f,
+0x8181817f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f7f, 0x8181817f, 0x817f7f7f, 0x7f81817f, 0x7f818181,
+0x8181817f, 0x7f817f81, 0x817f7f81, 0x7f817f7f, 0x81817f81, 0x817f8181, 0x7f818181, 0x817f8181,
+0x81818181, 0x7f81817f, 0x7f7f817f, 0x7f818181, 0x7f81817f, 0x7f7f8181, 0x817f7f81, 0x7f817f7f,
+0x81817f81, 0x81818181, 0x7f818181, 0x817f7f7f, 0x7f818181, 0x7f818181, 0x817f7f7f, 0x7f7f7f7f,
+0x7f81817f, 0x7f81817f, 0x7f817f7f, 0x7f7f8181, 0x81818181, 0x7f7f7f81, 0x81818181, 0x817f7f81,
+0x7f81817f, 0x7f817f81, 0x7f81817f, 0x7f7f817f, 0x7f817f7f, 0x7f7f7f81, 0x7f818181, 0x817f7f7f,
+0x81817f81, 0x7f818181, 0x817f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x7f7f7f7f, 0x817f7f81,
+0x817f7f7f, 0x817f817f, 0x81818181, 0x817f7f7f, 0x81817f81, 0x7f818181, 0x7f817f7f, 0x7f81817f,
+0x81817f7f, 0x7f7f8181, 0x81817f81, 0x7f7f8181, 0x7f7f8181, 0x817f817f, 0x81817f81, 0x7f7f8181,
+0x817f817f, 0x7f818181, 0x81818181, 0x7f7f817f, 0x817f817f, 0x7f817f81, 0x81818181, 0x7f7f7f81,
+0x81818181, 0x7f7f817f, 0x7f81817f, 0x7f7f8181, 0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x7f7f7f7f,
+0x81818181, 0x7f7f7f81, 0x817f7f7f, 0x7f818181, 0x817f8181, 0x817f7f7f, 0x81818181, 0x81818181,
+0x7f7f7f81, 0x817f817f, 0x817f7f81, 0x7f7f7f81, 0x817f817f, 0x7f7f7f81, 0x81817f7f, 0x7f818181,
+0x81817f7f, 0x817f817f, 0x817f817f, 0x8181817f, 0x7f817f7f, 0x7f7f817f, 0x7f7f8181, 0x7f7f8181,
+0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f7f817f, 0x817f8181, 0x7f7f817f,
+0x7f7f8181, 0x7f7f7f7f, 0x7f81817f, 0x7f7f8181, 0x817f8181, 0x81817f7f, 0x817f7f7f, 0x817f7f81,
+0x7f817f7f, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x7f817f7f, 0x817f7f81, 0x817f8181, 0x7f81817f,
+0x7f817f81, 0x7f7f817f, 0x7f7f7f81, 0x7f81817f, 0x81817f7f, 0x7f7f817f, 0x817f7f7f, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x817f7f81, 0x7f7f7f7f, 0x8181817f,
+0x817f7f7f, 0x7f817f81, 0x81817f7f, 0x817f7f81, 0x817f7f7f, 0x81817f7f, 0x7f7f7f7f, 0x7f817f81,
+0x7f81817f, 0x817f7f81, 0x81817f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x7f7f8181, 0x817f7f7f,
+0x7f817f7f, 0x7f817f7f, 0x817f817f, 0x81817f7f, 0x7f81817f, 0x7f818181, 0x7f81817f, 0x7f818181,
+0x817f7f7f, 0x7f7f7f7f, 0x81818181, 0x817f7f7f, 0x81817f7f, 0x817f817f, 0x7f7f7f7f, 0x7f81817f,
+0x7f7f8181, 0x7f818181, 0x81817f7f, 0x8181817f, 0x81817f81, 0x817f7f81, 0x817f7f7f, 0x8181817f,
+0x817f817f, 0x7f81817f, 0x817f817f, 0x7f7f8181, 0x7f7f7f81, 0x7f7f817f, 0x7f7f7f81, 0x817f7f7f,
+0x7f817f7f, 0x7f7f7f7f, 0x7f7f817f, 0x7f817f7f, 0x817f7f7f, 0x817f8181, 0x7f817f81, 0x7f817f81,
+0x7f81817f, 0x81818181, 0x81817f81, 0x817f7f7f, 0x81817f7f, 0x81818181, 0x7f7f817f, 0x81818181,
+0x7f7f817f, 0x7f7f7f7f, 0x7f81817f, 0x8181817f, 0x7f7f8181, 0x817f817f, 0x7f7f8181, 0x7f7f7f7f,
+0x7f7f7f7f, 0x81818181, 0x7f7f8181, 0x7f7f817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x8181817f, 0x81818181, 0x81818181, 0x817f7f81, 0x7f7f7f7f, 0x817f7f7f, 0x7f7f817f,
+0x81818181, 0x7f817f7f, 0x81817f7f, 0x81817f81, 0x7f817f7f, 0x817f8181, 0x81817f7f, 0x817f7f81,
+0x8181817f, 0x7f7f817f, 0x7f818181, 0x7f7f8181, 0x817f817f, 0x817f817f, 0x81818181, 0x817f817f,
+0x7f7f817f, 0x817f7f7f, 0x817f8181, 0x7f81817f, 0x81817f7f, 0x817f7f7f, 0x81817f81, 0x7f7f7f81,
+0x8181817f, 0x81818181, 0x81818181, 0x7f7f817f, 0x81817f7f, 0x817f8181, 0x7f7f817f, 0x817f7f81,
+0x7f7f8181, 0x7f7f7f7f, 0x7f817f81, 0x817f7f81, 0x81818181, 0x81817f7f, 0x7f7f7f7f, 0x81817f7f,
+0x7f7f7f7f, 0x7f7f7f7f, 0x817f817f, 0x817f7f81, 0x7f817f81, 0x817f817f, 0x817f817f, 0x81818181,
+0x817f7f81, 0x817f7f81, 0x7f818181, 0x7f7f7f81, 0x7f7f817f, 0x7f818181, 0x81817f81, 0x7f7f817f,
+0x7f7f7f81, 0x7f7f8181, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x7f817f81, 0x81817f81, 0x817f8181,
+0x81817f81, 0x7f7f7f81, 0x7f7f7f81, 0x81817f7f, 0x817f8181, 0x7f817f81, 0x81818181, 0x7f81817f,
+0x817f8181, 0x7f81817f, 0x7f81817f, 0x7f817f81, 0x7f817f7f, 0x817f7f81, 0x817f817f, 0x7f817f81,
+0x7f7f817f, 0x817f8181, 0x7f817f7f, 0x7f7f7f7f, 0x7f81817f, 0x81817f81, 0x7f817f81, 0x81817f81,
+0x7f818181, 0x8181817f, 0x7f818181, 0x7f7f7f81, 0x8181817f, 0x817f8181, 0x817f817f, 0x7f818181,
+0x81817f7f, 0x817f7f81, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x7f7f8181, 0x817f8181, 0x81817f81,
+0x7f7f8181, 0x8181817f, 0x7f7f7f7f, 0x7f7f7f81, 0x817f7f81, 0x7f818181, 0x7f817f7f, 0x81817f7f,
+0x7f817f81, 0x7f81817f, 0x7f7f7f7f, 0x817f7f81, 0x81818181, 0x7f817f7f, 0x817f8181, 0x7f7f7f81,
+0x81817f81, 0x7f817f7f, 0x7f817f7f, 0x7f817f81, 0x817f8181, 0x81817f81, 0x8181817f, 0x817f7f81,
+0x81817f81, 0x7f818181, 0x81817f7f, 0x81818181, 0x817f817f, 0x7f7f7f81, 0x7f81817f, 0x7f817f7f,
+0x81818181, 0x7f7f7f7f, 0x7f81817f, 0x817f7f7f, 0x7f817f7f, 0x7f7f817f, 0x7f817f81, 0x81817f7f,
+0x7f7f817f, 0x817f817f, 0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f81817f, 0x817f817f, 0x7f81817f,
+0x7f81817f, 0x81817f81, 0x7f7f7f81, 0x7f7f7f7f, 0x8181817f, 0x7f7f8181, 0x7f817f7f, 0x7f818181,
+0x817f7f7f, 0x817f817f, 0x7f817f81, 0x7f817f7f, 0x7f81817f, 0x817f8181, 0x7f817f7f, 0x7f818181,
+0x81817f7f, 0x7f817f81, 0x81817f7f, 0x817f817f, 0x7f817f81, 0x81817f7f, 0x7f7f817f, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x81817f7f, 0x7f818181, 0x7f81817f, 0x7f7f7f7f, 0x81817f81, 0x817f817f,
+0x817f8181, 0x81817f81, 0x817f7f81, 0x7f81817f, 0x7f818181, 0x7f818181, 0x7f818181, 0x817f8181,
+0x817f8181, 0x817f7f7f, 0x81817f81, 0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f817f81, 0x817f7f7f,
+0x7f81817f, 0x7f7f7f81, 0x817f7f7f, 0x81818181, 0x7f7f7f81, 0x817f7f81, 0x81818181, 0x7f7f7f7f,
+0x817f7f7f, 0x7f818181, 0x7f7f8181, 0x7f817f7f, 0x7f7f7f7f, 0x81817f81, 0x817f8181, 0x7f81817f,
+0x817f817f, 0x7f818181, 0x817f7f7f, 0x8181817f, 0x8181817f, 0x7f7f817f, 0x817f8181, 0x7f7f7f7f,
+0x81817f7f, 0x81817f7f, 0x7f817f81, 0x81818181, 0x817f817f, 0x81817f7f, 0x817f817f, 0x817f817f,
+0x817f7f7f, 0x7f81817f, 0x7f7f7f81, 0x7f7f7f7f, 0x7f7f8181, 0x817f8181, 0x7f7f8181, 0x7f817f81,
+0x817f8181, 0x7f7f7f7f, 0x7f817f7f, 0x7f7f817f, 0x81817f81, 0x8181817f, 0x817f8181, 0x817f817f,
+0x7f7f7f7f, 0x7f817f7f, 0x817f7f7f, 0x817f817f, 0x817f7f7f, 0x7f7f7f7f, 0x817f8181, 0x81817f81,
+0x817f8181, 0x817f7f81, 0x81817f7f, 0x7f818181, 0x81817f7f, 0x81817f7f, 0x8181817f, 0x817f7f7f,
+0x7f7f7f7f, 0x7f81817f, 0x7f817f7f, 0x7f818181, 0x817f8181, 0x7f817f7f, 0x817f8181, 0x81818181,
+0x7f7f817f, 0x7f817f7f, 0x7f7f817f, 0x8181817f, 0x7f817f81, 0x7f7f7f81, 0x817f8181, 0x7f817f7f,
+0x7f817f81, 0x7f7f817f, 0x81818181, 0x81817f7f, 0x817f8181, 0x81817f7f, 0x7f7f7f81, 0x81817f7f,
+0x7f7f817f, 0x8181817f, 0x7f81817f, 0x8181817f, 0x817f8181, 0x8181817f, 0x817f7f81, 0x81818181,
+0x81817f81, 0x81817f7f, 0x7f817f81, 0x7f817f81, 0x7f7f7f81, 0x7f81817f, 0x817f8181, 0x7f7f7f81,
+0x7f7f8181, 0x7f817f7f, 0x7f817f81, 0x7f818181, 0x81817f81, 0x81818181, 0x81818181, 0x7f7f7f81,
+0x7f81817f, 0x7f81817f, 0x817f7f81, 0x817f817f, 0x7f817f81, 0x7f7f8181, 0x817f817f, 0x7f81817f,
+0x817f817f, 0x7f7f7f81, 0x7f7f7f7f, 0x817f8181, 0x7f817f81, 0x817f817f, 0x7f818181, 0x7f817f7f,
+0x7f7f7f7f, 0x7f7f817f, 0x7f7f7f81, 0x817f817f, 0x7f7f817f, 0x7f7f817f
+
+e =
+12248
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER, RTE_BBDEV_TURBO_SOFT_OUTPUT,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
new file mode 100644
index 0000000..8ec0ec0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
@@ -0,0 +1,647 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x7f7fb2e1, 0x467f05ef, 0x3cabba6a, 0x1f826cac, 0xbe817fe7, 0x584dab0f, 0xdcb55f81, 0xe47f915f,
+0x37b1a534, 0x4b478145, 0x9db5727f, 0x7fa6943f, 0x819550ea, 0xd18eb72a, 0xa0ba9c10, 0xcf7f817f,
+0x915a957f, 0x2c699d0a, 0x89815c0f, 0x7f569358, 0x1002587f, 0x54314130, 0x817f1b7e, 0x81a85e2a,
+0x5981bdf2, 0x0c81b00f, 0x6781be0e, 0x297fb17f, 0xfd811fb3, 0x7f077fdb, 0xd37fc2ab, 0x817f1024,
+0x81817f7f, 0x3d848ec6, 0x4486cd9c, 0x7f6d7f81, 0x1d7ffa93, 0x813648ca, 0xdc7f125e, 0xaa81a798,
+0x60838ef4, 0x815fcdbd, 0x81cb9d93, 0x817f8188, 0xc8c3d697, 0x817af2d6, 0x36888781, 0x818117ee,
+0x37a67fbf, 0x89f464b2, 0x7f1e7f81, 0x7fe5c17f, 0x8ca1effc, 0xed7f82cf, 0x4a7f5ac6, 0x7fffb8d6,
+0x427f7f73, 0x747f7f06, 0xdfcd22a9, 0x7fb99981, 0x76f77381, 0x2cd70f12, 0xd8b138e1, 0x81a4ea29,
+0x222db281, 0xc3a07fd2, 0x217f8177, 0xd1cd87c4, 0xd181679f, 0x7f7fdee2, 0x7c81a72f, 0x6e7f5a7f,
+0x77b0c96d, 0xff7f8110, 0xe8c6ad46, 0x376ade0a, 0x447f687f, 0x5916d238, 0x88816b81, 0xda7f6d88,
+0xe2b2b55f, 0x750f7fc8, 0xc624d47f, 0xc6837f79, 0x81de5272, 0xd0847f29, 0x81ad587f, 0x3e7f7f61,
+0xc803e070, 0x237ff600, 0x8c01815e, 0x814e0e81, 0x81657eef, 0xab2a62bc, 0x73d42cb4, 0xaaf03a8a,
+0x817fa57f, 0x5e7fe2c3, 0x6deda37f, 0x6e87818d, 0x767f6e4d, 0x5c76819a, 0x8182b6f0, 0xdcd3037f,
+0x81184c7f, 0x7ff1501c, 0x22c7f159, 0x45a6817f, 0x9b53c5e7, 0x57966a5e, 0x0a7f7f81, 0x4a5c155e,
+0xf37fff81, 0xad97f8f2, 0x052f397f, 0x79638181, 0x7f7f7f7f, 0x81e3fae4, 0x7659cf03, 0xbd7a5a81,
+0x46bcab7f, 0xa57f69a1, 0xba818186, 0x38a347a2, 0x91a88ec0, 0xd76087fc, 0x81818b8c, 0x7fa3424e,
+0x7f89ef7f, 0x81ac183d, 0x3aa8912a, 0xc4937da6, 0x7a4c136b, 0x81568e05, 0x8182812b, 0xebb17f1d,
+0x84b87f4c, 0xf4eab6c9, 0x81034197, 0x8183bd0a, 0xa1b92676, 0xceca2ef1, 0x9b7f7f7f, 0x5d813181,
+0x817fea35, 0x0a6c81b0, 0x9a559b4f, 0x93987691, 0xad819510, 0xa47ab324, 0xfa577f7f, 0xbba8ac3e,
+0x6694b753, 0xee63c4d7, 0x17b4ce81, 0x83c0dc81, 0x6a7f4481, 0x81d87fe0, 0x7f5cc5c0, 0xf828ea77,
+0xbb817fa3, 0x3e816619, 0x817f6aab, 0x26417f7f, 0x0c40817f, 0x9cf01834, 0x32b37f7f, 0xe74fd0a7,
+0x7f7f4167, 0x0e7f6ae0, 0x813d81b2, 0x8172027f, 0x4ea6c275, 0x814525de, 0x46817f7f, 0x7fcb2cd1,
+0x7f8198ca, 0x3d7f60aa, 0x8d7fac81, 0xe2c081ed, 0x656f8181, 0xb2ae9365, 0x6ddd8d81, 0x86e0be65,
+0x5495ec58, 0xcb981829, 0x429ee669, 0x81445fc5, 0xd3435724, 0xce51b323, 0x92b16972, 0xf0137f8e,
+0x7f199a7f, 0x81be813c, 0x8155817f, 0xd481037f, 0x167f8181, 0x5ad131d4, 0x7fbc4149, 0x81046d60,
+0x87174b9c, 0x94bc63ba, 0x68817c7f, 0x12ef7f8d, 0x7a81f4f6, 0x7f7f6db9, 0x4823417e, 0xa4989a48,
+0x7e4c787f, 0xa47f8123, 0x819afb20, 0xbf7f447f, 0x8d95af5c, 0x33a6812e, 0x07c75cd5, 0x337f8151,
+0xa2e5e15a, 0x847f7209, 0xf9f4b934, 0x72a77f2f, 0x1a9f2f7e, 0xac224bb2, 0x81467f0c, 0x3f8fd28d,
+0x4a78b07a, 0x5269a71e, 0x4fd57fb2, 0x0b5262bf, 0xea39ca0a, 0x577f3d1e, 0x509481d7, 0xb7816b48,
+0x35c31d7f, 0x818bdc1d, 0x24087fb9, 0x7fe27f07, 0x55866481, 0x7f9edd28, 0x07811ed1, 0x1b317fb2,
+0x8cb19dee, 0x396920a6, 0xd965dd85, 0x9ed5ff47, 0xc97f7f7f, 0x7f8c1d55, 0x06a69701, 0x9e348881,
+0x7f6cb281, 0x388181d1, 0xd07d61ac, 0x7fdef7f1, 0x08177f7f, 0xd87fa1c0, 0xfe9ebeb5, 0x813d3430,
+0x2181811e, 0xf4dab306, 0xa36bbb7f, 0x05e87f7f, 0x957ff3cd, 0xe4814219, 0x7fbf3f81, 0x818a7fab,
+0x43e081d9, 0x87c08729, 0x0db52785, 0x8181b0da, 0x4c94697e, 0x817fa9b2, 0x7f7f81d9, 0x8bda8193,
+0xb6811781, 0x81796220, 0xdb082ac1, 0x2c7f5d3b, 0x8c8103f3, 0x4dcbd01e, 0x7fc1a87f, 0x457f7f23,
+0x5e26bad6, 0x7f8174f3, 0x30109f08, 0xef8526cc, 0xe8690849, 0xd2b981b0, 0x7f7f7fb5, 0x8156ef7f,
+0x921a7f98, 0x7fe6681e, 0x244e497c, 0x5ef68149, 0xbfbcaa7f, 0xf5011204, 0xfe7f8163, 0x8cd08f31,
+0xc88a6b43, 0x7c8105b6, 0xf6d881aa, 0x074c2c2d, 0xd6815c7f, 0x1d15d265, 0xce816f0c, 0x14c77f2e,
+0x9a7f08c4, 0x1a8b8ed2, 0xbe9637ed, 0xb59fac5a, 0xa4d07f91, 0x7f847fab, 0xd981597f, 0x7328575d,
+0xb83af760, 0xb536b941, 0x81c1937f, 0x16b7814d, 0x3f7fb081, 0x7f41e102, 0x727f77ea, 0x9558c381,
+0x48ac819e, 0xa87f99f2, 0x819e7f05, 0x92816eb0, 0x59447f81, 0x4f6cb056, 0x818163a8, 0xe00a64e2,
+0x81bb7fa3, 0x7f816de7, 0x86ac6a50, 0x48a277b0, 0x8e37cd81, 0x7f88e646, 0x023351d8, 0x1ee7a64b,
+0x8145f239, 0x81810859, 0x557f7f7f, 0x6971d292, 0x813d7fdf, 0xe86cade7, 0xdab67f7f, 0x6d4f247f,
+0x9df2297f, 0x1e8172ec, 0x3f81a56d, 0x907f02d3, 0x45663970, 0x817f46a4, 0x817fd1ce, 0x9843b181,
+0x7fdf817f, 0x784881da, 0xd8a281c2, 0xd77f88d8, 0x8c81817f, 0xeb625633, 0x73fe4eae, 0x57787f19,
+0x7f81ea7f, 0xca8143c8, 0x767cbf1d, 0x7fbc81e1, 0x7f9bbeb5, 0x7fea8a12, 0x7f5c7fde, 0xb5fe1685,
+0xa4da81c8, 0x7f6b542e, 0x81814b7f, 0x6252f7d3, 0x55eebb81, 0x6a0824cf, 0x586128f0, 0xded58181,
+0xe32a819b, 0x79c67f20, 0xf2812781, 0x7f58c369, 0x7ffa2d7f, 0x817f81f4, 0x7ffc2c07, 0x457f9981,
+0xff4281c7, 0xd78e6955, 0x3e10e57f, 0x632b817f, 0x7f0197d1, 0x813e7feb, 0xf981ac81, 0x8f81317f,
+0xc37f137d, 0x01918101, 0x81b007a4, 0xaab059ad, 0x7f7f81f7, 0x6ac590a9, 0x817f81a0, 0x68816067,
+0x0ae08182, 0xb47fb268, 0x33d94a7f, 0xbf43d243, 0xccff8e4e, 0x44ebe23f, 0x0d4cfd2e, 0x7f81947f,
+0x81d1cee8, 0xda0e16a3, 0x34a74376, 0x117b81ae, 0x1d853f6b, 0x81d6d2ed, 0x8d7f5be6, 0xcf1fb4a0,
+0x3e1ec13a, 0x7fed0cf4, 0x65d3817f, 0x0a1fec83, 0x7fc4811f, 0x666381c1, 0x8147c754, 0xa9cf7f53,
+0xa076cf81, 0x4c7a4712, 0x1a814ff5, 0x9e7f8175, 0x8181698b, 0x7f1a7f63, 0x8191f19f, 0xb1037fa8,
+0x7f52aa2e, 0x42b65c09, 0x94afab7f, 0xbda37dda, 0x81f2d66b, 0x3e737f1f, 0xcb816031, 0xd56181ef,
+0x2c6ffb81, 0x44852329, 0x1b4b81cc, 0x055a7bb7, 0x4c6f2e1d, 0xb14ae1b7, 0x7f43c2c4, 0x2368b80d,
+0x7f7ffb9f, 0x990b0523, 0x74b33ea5, 0xd64c8199, 0x98ed81a2, 0x311bc8e9, 0x599963cf, 0xb0eeed4c,
+0x8181ed70, 0x42023428, 0xd00270bc, 0x812a7fd3, 0x7fc4101a, 0x3448d8db, 0x068814a8, 0xfeb5701c,
+0x46db1481, 0x3cc5b001, 0x8181c2b3, 0x9c3d7f7f, 0x7f13e346, 0x2b75819c, 0xf57fcfe1, 0xfdaac581,
+0x7f814c6f, 0x7f186b39, 0x7f818150, 0xea7f5b7f, 0x816776b0, 0xb8657f57, 0x7f447f5e, 0xc3628122,
+0x84849d7f, 0x7f8cb914, 0x92813dd5, 0x81557a3a, 0x6b4cbf7f, 0xc6818b94, 0x7fbb7f98, 0x3c88812d,
+0x8de4267f, 0x8dee81fd, 0x37f98131, 0x3d8164d2, 0xd97f8181, 0x3ccaebf9, 0x8165cb7f, 0x63cb81d3,
+0x817fea94, 0x48817fa1, 0x4ea0b16b, 0x3cb5ab6f, 0x3148f975, 0x8c7f1ab5, 0x7fae5a87, 0xad06c881,
+0x0681c187, 0x81a5a11b, 0xe29ea383, 0xf07f536d, 0x81b0e702, 0xc37fbb59, 0x9e6167e8, 0x3f55c9be,
+0x819a40a9, 0x6450b823, 0x15927b65, 0x72a149d4, 0x6c280b5c, 0x5d7fd8f3, 0x998d831a, 0xbb7f817f,
+0x10ab3f81, 0x96f65101, 0x257f743a, 0x7f04a024, 0xe0c981b4, 0x81163a22, 0x8e197481, 0x21addfdc,
+0x7f2dcdaa, 0x787f4407, 0x6b7f81ce, 0x9fd252c5, 0x85e8979b, 0xb049819d, 0x8f7f7f4d, 0xbe284c7f,
+0x78135181, 0x5d33db0a, 0x8123817f, 0x81496a7f, 0x81889281, 0x8145bf37, 0x2e9f7fdf, 0xe4543a2d,
+0x811e6024, 0x7f62e6ba, 0xaad07f1f, 0x4f73894f, 0x4c7f8181, 0x57817f06, 0xd27feb81, 0xcf1a815c,
+0xa57fbe7f, 0x684f7fdc, 0x81f6cbc0, 0xb72bf82f, 0xda6d448f, 0xc6157f36, 0x7f81407f, 0x9a8c4719,
+0x5fdf81dd, 0xaf817f0f, 0x813c11da, 0xd7ec1181, 0x570186e7, 0x8181f41e, 0xe5b8a2bb, 0x819051f3,
+0x2a7fd68f, 0x37a13ac3, 0x5b81fd38, 0x6342817f, 0x84697f6e, 0x7f5eddfa, 0x6abc81d1, 0x8151d9d8,
+0x3e5c6c53, 0x2b397fc6, 0x60d58548, 0xc540b213, 0x67815781, 0x89983030, 0x767c7f81, 0x71effe3a,
+0x817feb42, 0x05818897, 0x810ea318, 0x99bb0e8a, 0xf1dd4b7b, 0xae6dcbae, 0x8155adc0, 0x15b4c0c1,
+0x81ac9b14, 0x895057be, 0x9599d781, 0x38968fcd, 0x8171e981, 0x7a62d80c, 0x8681509a, 0x7f5d489b,
+0xa381467f, 0x7fa12952, 0xa07f8109, 0x5acd5d7f, 0xbb7fc77f, 0x531f3429, 0x7fb77f5a, 0x566d89f6,
+0x817d4c23, 0x406a81e6, 0x1381c99c, 0xad89d258, 0xa67f0cad, 0x510b916e, 0x7ffa81a1, 0x0b6a11e1,
+0x2be02284, 0x7f4e4338, 0x817fd023, 0x058174bf, 0x677f950a, 0x97a6a01d, 0x81817f81, 0x136881da,
+0x717f7f9a, 0xbf811404, 0x6714c965, 0x51828181, 0xcaf329a1, 0x8881bc0a, 0x7f7d8305, 0x2c7f5a7f,
+0x7f7f63e9, 0x797fced4, 0x818154f5, 0xf13681c4, 0xc04b1d81, 0x0e81d244, 0xbf3f66bf, 0x5a3f2d7f,
+0xfa931714, 0xce485844, 0x263ae55b, 0x7fd37f81, 0x79477ee4, 0x7f8187e0, 0x81ab8144, 0x7f8d7f7f,
+0x6f715068, 0x7f5577f6, 0x7f487f41, 0x81813b84, 0x33431981, 0x81a181c6, 0xca1b667f, 0xe75a7f71,
+0x168128b0, 0xe0a092d5, 0x6e8164de, 0x2e817f61, 0xc4b1818d, 0xea7f8a32, 0x1098817f, 0x14a18156,
+0xdd568862, 0xd3176a4b, 0x81308181, 0x697b3faa, 0xe256cecb, 0x697f1691, 0x4e228c05, 0x7fa6682a,
+0x7449816e, 0x4558a15f, 0x9f513638, 0x7f7f819c, 0x7fb77aa1, 0x5eaf4912, 0x14817f7f, 0x0853817c,
+0xa47fbe41, 0xdfd77f0e, 0x81371d7f, 0xc9cd7299, 0x81d0673a, 0xb133492f, 0xfd7f4003, 0x897f7f1c,
+0x1990d405, 0x9f3ee2bd, 0xc168817f, 0xc6f57fa4, 0x83ee483e, 0x90f781f6, 0x81dcb39d, 0xd37fe881,
+0x28819181, 0x83da81d4, 0x7251dc7a, 0x7928ffc3, 0x7bca8181, 0x7f7f817b, 0xf6fa907f, 0x37916bd4,
+0x0d3fbc7b, 0xde81bdd0, 0xa0147fdc, 0xbf0f7f0b, 0x25958132, 0x7f6c9931, 0x7f44812c, 0xd4868181,
+0x6d9622ad, 0x817f30b6, 0x3c7f817f, 0x81238823, 0x7f2d5c81, 0x6f81531b, 0x947faff2, 0xa5ea038c,
+0x4268817f, 0x814f8cfc, 0x81481809, 0x814d7f1a, 0x3c87507f, 0xa47f1219, 0x4f65f27f, 0x5d7f2c21,
+0x7f4631a5, 0x5a81475a, 0x7f81ef60, 0x73aaa890, 0x327f7f7f, 0x81b614c1, 0x7fc6477f, 0xe5b7a6be,
+0x55816e73, 0x7ffaffb1, 0xb93d1b81, 0x3ce80fe2, 0x37ec6194, 0xe681e2db, 0x81c1d37f, 0x33a2bad3,
+0x582b8181, 0x7fdc7f25, 0x81978169, 0x9733486f, 0x3de13ef3, 0x247fd5cf, 0xa91d817f, 0x606a7f56,
+0x817f8178, 0xe61d7b08, 0x7fa08181, 0x058bd29b, 0x28237fbf, 0x4f81b057, 0x488d8103, 0xe1817fa5,
+0x81666297, 0xfabc75c8, 0x7ff75edb, 0x4a62fab5, 0x687fad84, 0xa7221c28, 0x773a5a6e, 0xf27f8581,
+0x7f7f9569, 0xa31d812f, 0x81d48457, 0x7f88bcfe, 0xd743b981, 0x7f608102, 0x18de2185, 0x81d77fc4,
+0x937f337f, 0xe67fe52e, 0x95d481da, 0x887f6071, 0x81301872, 0xd9088132, 0x7f7f5a81, 0x8181aba8,
+0x7f9a7fcd, 0x7f7f4136, 0x3d87d3a8, 0xd581d381, 0x5d306ed0, 0x615b98dc, 0x812b3281, 0xdbe5c443,
+0x817f7fe9, 0x815462da, 0x8122da0a, 0xb5817d81, 0xe12bd56c, 0xfa819a68, 0x907f8183, 0x236aa83f,
+0x1b576c9b, 0x5b6424ab, 0x3f3e3953, 0xec81507f, 0xddb43aa9, 0x818134f1, 0x81c37fb0, 0xbf4a7fcf,
+0x810b7f7c, 0x705b81d5, 0x23636581, 0x3caf7f9d, 0xbe765d81, 0x189a11ae, 0x8194cabc, 0x6063c5b0,
+0x0e3c5353, 0x388235bb, 0x81904632, 0x2b9781d3, 0xd78db758, 0x953fe437, 0x7423f22d, 0x81ad9c95,
+0x7fd74748, 0x329b582d, 0xe0e07f7f, 0x7f81ae8e, 0x962fe50c, 0x3b7faf1d, 0xcaeb8e37, 0x7f54276a,
+0x927f6c9a, 0x828143c1, 0x90456105, 0x7f757ff6, 0x796681eb, 0x7478b225, 0x70d852bb, 0x7f280bdb,
+0x56597f47, 0x51e6fff8, 0x1e7f818d, 0xdc4a8175, 0x10712985, 0x2ee6daa1, 0x81c7d046, 0xa1a36e79,
+0x9adf7f7f, 0x812ee70d, 0x91bc1062, 0x443b7fa9, 0x818f47b3, 0x7f817f3b, 0x7981a09c, 0x7f9c817f,
+0x1b46d2cc, 0x786179de, 0xd97f61f2, 0x81b4f213, 0xd381874a, 0x7f4f7fc4, 0x9c81c3d5, 0x17d59842,
+0x7fc9a8fc, 0x996840b5, 0xd5a79281, 0x88378181, 0x7fd4ca81, 0x81ba7fee, 0x5dae297b, 0xc8fa0e5c,
+0x987a5757, 0x5debc016, 0xa64eb973, 0x61a51b81, 0x66509c7f, 0xeb7ad965, 0x7ada817f, 0x4d5bf7bc,
+0x8876b8a4, 0x7d73b4d0, 0x762cb5ad, 0x6ec14d66, 0x6bfdad7f, 0x7f7f810e, 0x81bc2b15, 0x0f817f9c,
+0xc72fe940, 0xc9168b0c, 0x7f6e8d79, 0x7f81fadd, 0x706181f6, 0x678181e7, 0x3f68c5e8, 0xa06d8195,
+0x78d73d7f, 0x7295109a, 0x05897f55, 0xbdc07281, 0x81817fe3, 0xcd157f30, 0x489ca757, 0x53468119,
+0x3f6a81b8, 0x03fe7c43, 0xb511cda3, 0xe581a17f, 0x5e3e3ec9, 0x7f507f96, 0xbe12a481, 0x81006ddd,
+0x49322cb4, 0x27f7a81e, 0xc6085618, 0x8148d270, 0x68668181, 0xec5ed498, 0xa011833a, 0x81475300,
+0x071d3a63, 0xa2c55142, 0x7fe9767f, 0x6e3c21fe, 0xeb63814a, 0x7fd57ffd, 0x9f91630b, 0x475f219f,
+0xbbb5c7bc, 0x686de142, 0xb652909f, 0x6b8e5a7f, 0x7f885858, 0x7f027ee1, 0x7f818191, 0x818881d4,
+0x1b7c017e, 0x8581aac9, 0x627fa790, 0xaf837f7f, 0x69064681, 0x311d32e9, 0x6f7f0ba1, 0x7b81a1c5,
+0x7f4f8144, 0x81e38144, 0x528daa3d, 0x1c098175, 0xba6b0ac7, 0x732614ab, 0x5b2c5d7f, 0x81815ce8,
+0xb37f7fbb, 0xc87f8ec5, 0x81b08181, 0x5bcb8136, 0x7f2524c5, 0xf5e881d8, 0x50ceaf7f, 0xf72387a1,
+0xd4c74e74, 0x663f7fe8, 0x26ae4a7f, 0x5d7f6358, 0x8178bbdb, 0x46f38102, 0xb0327f53, 0xa019f297,
+0xeff57f12, 0x7f7f79e2, 0x8120817f, 0x73e4b322, 0x999c6349, 0x92ba973e, 0x7f7fbc5c, 0x81946449,
+0xaf4b817f, 0xca523d00, 0x81817fbf, 0x3b145a81, 0xec54886e, 0x81cb173e, 0x5f02667f, 0x967a8181,
+0x8a817f81, 0x3cb93c41, 0xfa811336, 0x74feb5a9, 0x821b9081, 0xaea865af, 0xf17f4e71, 0x52810059,
+0xaebc3b36, 0x6a8f7fd2, 0x109de3eb, 0x4c555f48, 0x8166cc78, 0x7f4c7b48, 0xc7d1d381, 0x1381537f,
+0xa0ab5c1f, 0xa00d0039, 0x81157f81, 0x2f206f81, 0xacb45b81, 0x2ec382f3, 0x7ff0383e, 0x44dc5aeb,
+0xc37f81cd, 0x43553306, 0xa63d7f81, 0x7f7f8140, 0x7f7f818a, 0x7d82bd27, 0x817f8b7f, 0xa3579535,
+0xc2e47871, 0x81815a0b, 0x49977081, 0x724cc372, 0xc681c27f, 0x2b7cabf0, 0x3081a6ac, 0xec7f964e,
+0x7fda3ad3, 0x422671a4, 0x60008158, 0x7f738e7f, 0x538e6f81, 0xb73e0ab0, 0x796a6551, 0x81ad178b,
+0x19731c7f, 0x1bf8c26a, 0x4acb7fd4, 0x5121b547, 0xda547fff, 0x7e505ff7, 0x817fff48, 0xa0813934,
+0x3d4f77d1, 0x83f327ef, 0xc7937f6b, 0x357c4a84, 0xc183ca7f, 0xbd6081db, 0x30e0d783, 0x492aa57f,
+0xbba6671e, 0xb062baef, 0x7f817f20, 0x7f267f58, 0x7fb94b3f, 0x447f5b21, 0xb864997f, 0x7fb057f8,
+0xb1401a7f, 0x7fb57f9d, 0xefbb8175, 0x66892581, 0x7f06fa7f, 0x817a90f0, 0x7bd5793b, 0xc37ead24,
+0x6feaa4be, 0x3a548cde, 0x8e81f98c, 0x81b78199, 0xe6c11940, 0x4d647f2f, 0xbc5c8181, 0x8175fa91,
+0x8188864b, 0x85591890, 0x47ce5d57, 0x38a4efb7, 0xce5e739f, 0x81737fd4, 0x6d7f635e, 0x9c861774,
+0x89818262, 0x45bc8114, 0xd1552a89, 0xc68174f8, 0xaf9081d8, 0xcb08e35b, 0xf5c404b2, 0x2ce96576,
+0x11895a36, 0xcf20e0ea, 0x2548e7dc, 0x8f774c59, 0xf85a8f56, 0x7f81ddae, 0x7f7f627f, 0x1481491c,
+0x7f97661b, 0x787f81e0, 0xa2192f7f, 0x6cb37fb0, 0x8181ae27, 0x3f7fafec, 0xce7f5a86, 0xae067f7f,
+0x3c1c8181, 0x817eb443, 0x8e741041, 0x5a4ef2ba, 0x61029de4, 0x9d637e34, 0x819d7fca, 0x8181cd7f,
+0x8175b96c, 0xbc4f6ecf, 0xf826aead, 0x567fa36d, 0x81968197, 0x9f9dcf3e, 0x265c8131, 0x81d9deab,
+0xc21cf772, 0x7f6bd907, 0x313f795b, 0x817f197f, 0x09ecfe43, 0x6114402f, 0xe0995a81, 0x5f263281,
+0xbe7f8158, 0x7f7f26dd, 0xfd7f7f7f, 0x3da2c609, 0x6ce3810d, 0x7f81cd1b, 0x81d68809, 0x42be9c6c,
+0xf3d37f5c, 0x7f81e031, 0x774e0c30, 0x7f8f468f, 0x9ebb42b2, 0x7f817fc0, 0x1376817f, 0x25f78181,
+0x7f8eb3be, 0x20228505, 0x229fe181, 0x81ac277f, 0x4f308129, 0xb8818111, 0x81d47fc7, 0x818181f0,
+0xc27fd34a, 0x9dbc810a, 0x8481d981, 0x61817581, 0x8a2c817f, 0xe7815625, 0x96a7946f, 0x3a7f5d5d,
+0x835f2fc1, 0xb6082dd7, 0x567f687f, 0x838181b6, 0xc663e9ad, 0x517f7fbb, 0xa570adb0, 0x12cfc2b4,
+0xc1587f39, 0xbd8140ba, 0x7f814366, 0xd00981ec, 0xc27f217f, 0x5cd1b2ad, 0x81992c7f, 0xb1b57f62,
+0x3bb9b1de, 0x9213cd8a, 0x814f136e, 0xa5c27fc3, 0x947f7f59, 0x8ef30ddd, 0xd3f290e9, 0x39bc7f8c,
+0x7f814e81, 0x5381ff22, 0x7f81f04f, 0x0adde113, 0x5b93867f, 0x687f8111, 0x7f7f1c60, 0xb856814f,
+0x7f8e8196, 0x5cfb66fc, 0x20310ab4, 0xa2599964, 0x973f0065, 0x817f95d6, 0xa43b7f7f, 0x816bb1c3,
+0x7c7581e9, 0x521770cf, 0x81456be1, 0x5e26818d, 0x3b54057f, 0xd4e231d6, 0x977f0346, 0xe777814e,
+0x81b6095a, 0x7b337fd7, 0x18bb202b, 0x219b7cf9, 0x2bdeaa81, 0x55dcd1d2, 0x8123905c, 0xe463fd74,
+0xd16ec17b, 0xd90f4e3b, 0x817fd97f, 0x817f7f7f, 0x816afd35, 0x3dd87f51, 0xa62f0e5f, 0x9f4766ce,
+0xa933c505, 0x81049129, 0x627f3e7f, 0x025ea181, 0x7b5e4119, 0x0d11aff9, 0x817faaa2, 0xe3bc817f,
+0x7fb27f81, 0xc07bc500, 0x9451c181, 0x1fc6811e, 0x7f9f9e3b, 0x7f4c1a91, 0x7f1f7148, 0x8358819a,
+0x81119a81, 0x16d55f0c, 0xc07f7f2e, 0x467f9991, 0x237f8c7f, 0x81638101, 0x2aacb9ae, 0x4f439f32,
+0xc65e96aa, 0x7f826508, 0x7fa86ab6, 0x602ddbc4, 0xd07fd00a, 0xb0e381dd, 0xca81cc2e, 0x7f7b7f15,
+0x7f81b9bd, 0x21627f38, 0xa481ed5c, 0xeee8d79b, 0x64369481, 0xb97f81b1, 0xf443d7e8, 0x50a410b8,
+0xd87ffbbe, 0x18589760, 0x814998d5, 0xc1814b2f, 0x7fc33b7f, 0xd25b7335, 0xb6b2987f, 0x988a7f48,
+0x9aa4fb81, 0x597fd920, 0x7f4e7f9a, 0x7f819892, 0x81daeac9, 0x7f538fcf, 0xac7f8198, 0xd2529c90,
+0x0ff00ba8, 0x765cb53e, 0x7f0fd3ab, 0x0d81cb33, 0x81989961, 0xc13c7f25, 0x20d6a6bf, 0x7f817fd0,
+0x6f6594db, 0xec8c68eb, 0x638194a0, 0x3b89815c, 0x81734c65, 0xaeb69ec3, 0xd20b6440, 0x2f71b6dc,
+0xc990816e, 0xb6077fda, 0x7f4cc48a, 0x816aa8e8, 0x817f397a, 0xfb8181b7, 0xe64d11e2, 0xe97f1576,
+0x10706f7f, 0x9b935d4c, 0xaf7f3547, 0x7f175ec9, 0x7632a981, 0x2f61d4f4, 0x7a597f81, 0x499e7f00,
+0x7f81315e, 0x81c4230c, 0x8cb66a2e, 0xe76a8105, 0x81817fc6, 0x7f0e50bd, 0x83ba337f, 0x81009281,
+0xcac68465, 0x617fd326, 0x893981e4, 0x7f8ed9b3, 0x59467f7f, 0x0181e258, 0x7f81b281, 0xc9816629,
+0x7fbc8181, 0x08e1cadd, 0xa8328181, 0x76b6e071, 0xb36d7feb, 0x505490d7, 0x09d5dd31, 0xba81632d,
+0x7f7f6fd0, 0x9e45813c, 0x7c4c4f70, 0xd97f5090, 0x247f335c, 0x357fbb4d, 0x267fd5c8, 0x26d08181,
+0x51447fa8, 0x81358efb, 0xb9197f52, 0x40aadca1, 0x7f6781aa, 0xaf272a09, 0x8177a4b2, 0x497fb515,
+0x819b7f7f, 0x8b817f41, 0x257f7f92, 0xa8d2244e, 0x477af9ef, 0xa8817f36, 0x5ca681f5, 0x7f1a76cb,
+0x8181c5f1, 0xc4ddc7aa, 0x81a1c2bc, 0x7f466fa2, 0x625c237f, 0x3ddd1f44, 0x4f54fdde, 0xa281f2d5,
+0x95d14e95, 0xf26e7fd4, 0x9a813a90, 0x8154361c, 0x327f7f42, 0x7fa2983b, 0xd9c28197, 0xf00d1898,
+0xb95848d4, 0x387f81f0, 0x9f8e7f4a, 0x1c5cb9ec, 0x1f63b5fc, 0x187f7dcd, 0x7f1c7f05, 0xa855e2cc,
+0x5a747f98, 0x7fa1b4ee, 0xe8e51aaa, 0x7f81ec81, 0x38818175, 0x81815f07, 0x84888181, 0x81810852,
+0x316e0060, 0x819b1c6e, 0x3d814577, 0x5ecc5d81, 0x5e81814c, 0x7f76914d, 0xfc7f814b, 0xd2819d96,
+0x70a34ad0, 0x7fd544f3, 0x71e51581, 0x817d45a4, 0x7f479a68, 0x42447fae, 0x9a974f7f, 0x817fbbd2,
+0x989f367f, 0x78fa30c0, 0xbb902e75, 0x7fda7f02, 0x7f82c5b8, 0x33c325c4, 0xdf89815c, 0x81c37f33,
+0x52f37ffc, 0x7fcc4702, 0x81488124, 0x7f548196, 0x4214a4a3, 0xa034b302, 0x6a817e04, 0xc67f795e,
+0x17a98157, 0x7f7f7f5b, 0x7f7f4c56, 0x7fe0b181, 0x7f907fba, 0x42f82fd9, 0x223ea236, 0x3d2025d1,
+0x097f81b1, 0x81a35969, 0x373cb170, 0x44a57c3b, 0x26bc5a7f, 0x34657ff6, 0xc83b3d3f, 0x99be6c2c,
+0x1c811f7f, 0x5c7f81ac, 0x33fa49f6, 0xa5c38181, 0x81ed8144, 0xc88a652a, 0x7f817fe3, 0x953cfc91,
+0x466681d3, 0x366f16d6, 0x187f2ff5, 0x077ff351, 0xbe1b817f, 0x3884ec81, 0xb17f8181, 0x9a39437f,
+0x476fac61, 0x7f911514, 0x24b0038f, 0x5647567d, 0x8143c7ae, 0x81b03a31, 0xec7f085e, 0xc10d7f55,
+0x0a50b9f6, 0x7f1fd244, 0x7f81a1c7, 0xc48148ca, 0x877fc97f, 0x81115e37, 0x827ffdf3, 0x48b741c2,
+0x7f9fc5c0, 0xf87f81ce, 0x43a1029c, 0x2a78427f, 0xff9a164d, 0x7ff981f6, 0x1b7f81aa, 0x6f48ca6a,
+0x547f7f2a, 0xa9ce5cf0, 0xc07f7f7f, 0x7f6fa54d, 0x58817fbb, 0x7f96fa32, 0xfdc18381, 0x7abd7e7f,
+0xc604b981, 0x64217ffe, 0x8893bd7d, 0x7f140281, 0x7759b9e3, 0xcc648129, 0x81c981c6, 0xaf2ba351,
+0x9ecd819f, 0xac816ff2, 0xb516672e, 0x4157ab81, 0x81d21796, 0x35643433, 0xf13d5a7f, 0x9881d003,
+0x5081bbd0, 0x7d7fbdcc, 0x6ba50d3a, 0x8170677f, 0x85b29f81, 0x8aa72210, 0xfbaaa381, 0x7f0e8f34,
+0xcf367b7f, 0xe60399ab, 0x7f7f7f01, 0x817f7f11, 0x81818932, 0xe39a6e31, 0x8d3b8181, 0x107d2bc1,
+0x908164f7, 0xe41a7fc5, 0xe944503a, 0xeb4b6559, 0x22817f81, 0x816ea8ff, 0x1557e37f, 0xaa7f701c,
+0x817f828e, 0x738106c4, 0x7e0e7f05, 0xac768181, 0x17898158, 0xc081ea33, 0x827f9958, 0x3b7fd4fc,
+0x16181f7f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x0c7f3a86, 0x7750813d, 0xd2b385bc, 0x6f7f7f72, 0x7d487fa8, 0x7f7f8d65, 0xb6578196, 0x4d93815a,
+0xf9a54748, 0x317d6469, 0xe0466f8a, 0xef869693, 0x3da5a9e2, 0x7f7f05a1, 0x14c68157, 0xc2148135,
+0xad9ed181, 0x7a7f6081, 0xf10d659b, 0x4a38dce0, 0x114d7f2a, 0x2bc7f79f, 0x0f7881f1, 0x423e5553,
+0x9c2b817f, 0xde7ffb85, 0xe18117ca, 0x67fd7f7f, 0x3fbbf57f, 0x9b34ad7a, 0x487a543f, 0xf06322f8,
+0x9ce93023, 0x3581818a, 0x6a7f4d69, 0xad3d627f, 0xbd812c92, 0x8be4cc7f, 0x23b47fc4, 0xc87f819b,
+0x104d6e7f, 0xcfcb8134, 0x0d8152cf, 0x467f7f19, 0x113f1ec5, 0x589bff9e, 0x457fa8c8, 0x2a1246d0,
+0x731e257f, 0x40e460e8, 0x13d3057f, 0x817c8de1, 0xc09dc798, 0xab81d4f1, 0xa1a49d8c, 0xbf50df7f,
+0xbc8192f7, 0x73aa4d5a, 0x1c817f43, 0x428fd6fc, 0xc282884e, 0xb9f67fd8, 0xd7777f4d, 0x1aa2d89a,
+0xa5537f81, 0x8878b631, 0x4bdfd881, 0x7f21b57f, 0xcd7f7f7c, 0x4d2aa1d0, 0x3e138144, 0x3c7fe433,
+0x146e5fe3, 0xa53b7f85, 0xa9537ffd, 0x819eda1c, 0xf93e2881, 0xc3814f7f, 0x018d69b4, 0xf87fa19f,
+0xb09f9144, 0x6ec23f94, 0xdf7f39c6, 0x48087f7f, 0xfc818184, 0x18815bc3, 0xc764598b, 0x11ed68c7,
+0x81df81bd, 0x7feceb38, 0xc90a473a, 0x81817f81, 0xef3a537f, 0x7f4d3873, 0xf45c846f, 0xfeb68afc,
+0xd326d181, 0x7fe4ae7f, 0x3e817fb5, 0x81c95de9, 0xbebdcd7f, 0x23053726, 0xdd8d8181, 0x1d545233,
+0xe37c933d, 0x81e52c1d, 0xc0ab2d81, 0x81e2667f, 0xcf2e70db, 0x9370319c, 0x21add116, 0xe6c34081,
+0x076912e7, 0xa781aca0, 0xd6f5a5d0, 0xa9af5d7f, 0x2e817c77, 0x81e1661c, 0xd5308181, 0xae7f6ec4,
+0x45815295, 0x2dbc2581, 0x50bde53d, 0xcd8cb1bc, 0x2e67977f, 0x32fc789f, 0x2b81ca3f, 0xef7f7f61,
+0x19a7d611, 0x81427f81, 0xe98181fc, 0xd4397d7f, 0xd9ab7fb7, 0x819c8c92, 0xd5478339, 0xf0555aae,
+0xfe09f481, 0x8128527f, 0x337f1081, 0x6dae3aa2, 0xccb67f81, 0xb1d8d87f, 0xc2d3dd02, 0x97af814d,
+0x812f1c5a, 0xc50c8181, 0xcd70610a, 0x7f555df4, 0x567f7f23, 0x0a0d917f, 0x4b81815c, 0x184a5b8e,
+0x5054c67f, 0x7f7f8ced, 0xf0b31f7f, 0x11698131, 0xe0ac5442, 0x57ffc57f, 0xb681cc02, 0xb78c8193,
+0xa629b48c, 0xf2a8d43b, 0x59167d37, 0x81818bf2, 0xc87c817f, 0xbf7f8e7f, 0xcdbc2243, 0x2ed78e74,
+0xfe817d61, 0xa3613c01, 0x25e281af, 0xbd6a7f36, 0xe57f4b7f, 0x81898161, 0x2a415081, 0x50b07fb6,
+0xe77f9c72, 0xd43681aa, 0xd07fb648, 0x3c7fbd5b, 0xa555c475, 0x8169dc64, 0x09106247, 0xf9b660ab,
+0x389542ac, 0x7fa22c4e, 0x81304e71, 0x29208c90, 0x317fa43a, 0x8281819d, 0x7f212065, 0xc0682681,
+0x3f2b5dc7, 0x87d86d81, 0x5c7f4192, 0x7f54332b, 0xc564a449, 0x7f817f58, 0x3c6576aa, 0x147f816d,
+0x4957d091, 0xbdaba3a7, 0xa17fa381, 0x49628138, 0x372f815b, 0x81676748, 0x8dba817f, 0xc89e8129,
+0x866fc855, 0x43ba4a81, 0x8f4b7ec2, 0xa47f054d, 0xc3b07185, 0x7f8d3ad0, 0x2c7f9f8e, 0xc17f27d3,
+0x33956381, 0x8e12a081, 0x7be52e32, 0x44b28122, 0xe4947f6d, 0x6eae4f7f, 0x34df816a, 0xd7938168,
+0xa7a9528b, 0x7f81ec45, 0x41857f6f, 0xbc28817f, 0xcbd67c06, 0xaeb678d2, 0x529a547f, 0x44813b6e,
+0xd44f247f, 0xbe1b9879, 0x877f4996, 0x5b9a8dcd, 0x2e558281, 0x1d817f84, 0xda7f8186, 0xdda9f4a6,
+0xe698ae70, 0x7fb54c8a, 0x0aae8550, 0x857ff8fb, 0x1ac42e8e, 0x3f27814b, 0xe27fdc2d, 0x2db1eb81,
+0xca817e5a, 0xec7f62e2, 0xc7dea079, 0x7f7a7f26, 0x7fdfbf81, 0x7fe89da8, 0xa9187264, 0xf98192c9,
+0x6af88181, 0x667e3981, 0xf97f3c48, 0x7fdf817f, 0x3b9bbc81, 0x55bfbc81, 0x096fa6e1, 0x1b75a67f,
+0x357f83ed, 0x7f7f6f7f, 0xf3b43812, 0x9d4c0d92, 0xa8817f4d, 0xb96c877f, 0x34818178, 0x5d7f997f,
+0xdb7f5c7f, 0x39b056a4, 0x33bcffaf, 0xb398b57f, 0x285a4bf1, 0xb181574b, 0xc1e56d31, 0x4b717fd2,
+0x56337f81, 0xed938157, 0x7f4b7f47, 0x49a3812b, 0x2e667fcd, 0xcd817240, 0x8b5470e6, 0xf693814e,
+0xd3e07f7a, 0x7f7a4781, 0xf44cd60c, 0xfd546281, 0xef995981, 0x81e70628, 0xd3b97f47, 0x07819aa8,
+0x707f447f, 0x9181c079, 0x72ae8173, 0x988d2a78, 0x7f814478, 0xb57fa076, 0xde7fb260, 0x17817f3b,
+0xf045c31b, 0x7f7feb13, 0xbee5d07f, 0x5f8192ae, 0x0c9381f7, 0x28817f7b, 0x985964d5, 0x81817d81,
+0xb381b799, 0x38b0817f, 0x3a887f0f, 0xf353fe81, 0x53817fdb, 0x5c814d56, 0x39b415ff, 0xc9c78c59,
+0xb2817fad, 0x5884bec5, 0xd629b07f, 0xb67f81cb, 0xcb81abe9, 0xab7f9b7f, 0x35815781, 0x85878181,
+0xb0b2177f, 0x86223495, 0x32cd7f69, 0x3c664743, 0x1d7981c2, 0x817f817f, 0x16cadc06, 0x03786a7f,
+0x03818107, 0x5a8dd1d1, 0x58e57f20, 0x7f818152, 0x444c50f0, 0x3d81810c, 0x66ae7f62, 0x39d01614,
+0xbd817f81, 0x789b7fa6, 0xadcd819c, 0xd37f8171, 0x291ebf81, 0xd5923ac9, 0xc37f63bf, 0x1c7981ae,
+0xda5e969d, 0x248c5899, 0x8fbdc4b3, 0x6c50d2cb, 0x2a5fab0b, 0xc42d818d, 0xa4776781, 0xaa6281fd,
+0x20534bc6, 0xb729727f, 0x6481de5c, 0xffc8a5e9, 0x707f25f2, 0xc674ba57, 0xe2ff9cb8, 0x02433e79,
+0x108e223b, 0x617f9cd7, 0xb5507f81, 0xa6f63ee6, 0x09b45856, 0x7e7fe581, 0xe4f8417f, 0xe11d98be,
+0x44817f7f, 0xc9c581df, 0xf7817fb0, 0xac6da566, 0xc681ed7f, 0x3249810f, 0xab55b281, 0x35e64c81,
+0x61e9b982, 0x8d8c4781, 0x4eafd663, 0x7fb8302e, 0x40a9bcb1, 0x17b17f9e, 0x817f92c0, 0xe35d2fb3,
+0x4ca815dd, 0x817086b9, 0x389b817f, 0x3c0d955f, 0x447f7f1a, 0x7f11307f, 0xada0815a, 0xafca7f7f,
+0xce48b124, 0x7fd94e81, 0x2edc81a4, 0xaa098a97, 0x14030263, 0x97813a7f, 0x8181d97f, 0x2581c9e6,
+0xe57f7f05, 0x16880f81, 0xa6e88184, 0x818490a2, 0xd5a87f94, 0x8b81a081, 0x38813781, 0x14a59a5a,
+0x486b8c40, 0x893449c7, 0x1f03d659, 0x81bb2831, 0xe0d8c66b, 0xa1bb7066, 0x1b7f8c71, 0x07815581,
+0x3820cb84, 0x8d3926b5, 0x81f27fd2, 0x46ff3a84, 0xfddc057f, 0x16d21ad1, 0xdbc27852, 0xf9817f34,
+0x7f81397f, 0x6c0f8101, 0xf22a100c, 0x7c998171, 0x4b68bad6, 0x7f588114, 0xc3465c81, 0x439e037f,
+0xd9817f52, 0xf1bd5594, 0xf93f9f81, 0x39447f7f, 0x46dca006, 0x93f30f7f, 0x6e215e81, 0x092ffdc3,
+0xad49e8a0, 0x7f4e7fba, 0x9b9c4fc6, 0x8131f77f, 0x0700b27f, 0xf0de61ab, 0x258181fb, 0xd8e8bb56,
+0x36932155, 0x9c7f2981, 0xb2bfe055, 0x7f0095b9, 0xaf73327f, 0x70817fbb, 0xb3a281d6, 0xfac08a53,
+0x24e4727f, 0xcbb5dbbb, 0x38be99fa, 0xbcb94e7f, 0xdf2653d0, 0x93df5efe, 0xfcdc697f, 0xe754909d,
+0xc6810060, 0x7f0ce4d1, 0xaec4a5ca, 0x4a7f81bd, 0xc17f817a, 0x7feecc3f, 0x2981285d, 0x3e0e6e81,
+0xab81814f, 0xbf27187f, 0x12409322, 0x1c9dc451, 0xc48e03e7, 0x64013b81, 0xb5847aa7, 0x350a1b84,
+0x27458181, 0xa1237f61, 0x9714287f, 0x817f8170, 0x1a7f7f09, 0xf07fecc7, 0xd686d4c9, 0x9abd7fa9,
+0x449dc0bc, 0xc1177f9d, 0x7f547f9a, 0x7fbd7fe3, 0xcab19d2b, 0xc981b27f, 0xdc8ba548, 0xe95304a6,
+0x22225820, 0xd29262ec, 0xf27f9f78, 0x1b94427f, 0x4738a436, 0x7f814fe0, 0x52817f7f, 0x1d818181,
+0xf8d92d89, 0x24817fa3, 0x66d6aadb, 0x4e55b9ca, 0x7f81de8c, 0x7f814e64, 0x24141e31, 0xa5232778,
+0x34e27f81, 0xdc87c78f, 0xc016dfb1, 0xce91829c, 0xe662c230, 0xda74e681, 0xcfb57bb8, 0xf18179ff,
+0xcc818481, 0x4736ed45, 0xcc6ee881, 0x3a815a81, 0x81b77fb2, 0x56816f2f, 0xe82bcb89, 0x3875ad5f,
+0xe05197e1, 0x1a7bc17f, 0x31a3f841, 0x7f90a77f, 0x1df3b910, 0x583f815b, 0x257f814c, 0xee7f7f8e,
+0x7dbdc37f, 0xb6810a1c, 0xce816d85, 0x459bf72d, 0xd4fe0481, 0x0d49024c, 0xbfa3a055, 0xed9baf30,
+0xf27f7f7f, 0x7dd24f9b, 0xc481817e, 0x7f899052, 0x074d5bdb, 0x2335c3fe, 0x00759f7f, 0x251bacbb,
+0x147fc935, 0x0b180994, 0x9f7fa637, 0x387ff150, 0xcbac8967, 0xf37f60cb, 0xe4c216be, 0x7829816a,
+0xd7b89981, 0xf8ae2592, 0xbeca818c, 0xf3817a81, 0xc681017f, 0x2f2f2e8f, 0xfe577f1b, 0xd503d778,
+0x2d7f7f67, 0xb281c0f0, 0xf7d7812c, 0x817f9598, 0x1af6fb36, 0x157f3781, 0x5e31a27f, 0x038181ae,
+0xf9fb81ad, 0x7a8eec81, 0xc8652e7f, 0xc67ba487, 0xbfce7f7f, 0xdf02a27f, 0xf9c1813d, 0xcaac0f90,
+0xdc448181, 0xb17f921f, 0x99be8181, 0x7fc09993, 0x11ad1bc3, 0x5c7532bf, 0x25a8ce28, 0x0ab6a823,
+0xc3c29055, 0xad55b6ea, 0xed81e0dd, 0x8caa6553, 0xff817fc8, 0x7f70d513, 0x433671dc, 0x5db37f6d,
+0x7f318170, 0x55bd4dd5, 0x00c181b7, 0x41c3bb90, 0x441a818e, 0x84e78140, 0xad8a2c81, 0x2bc38158,
+0x82654c81, 0x29d6600e, 0x227f7fc8, 0xa43d577f, 0x2b8364a3, 0x144e2a57, 0x07817f1c, 0x4a8171cd,
+0x47d5a981, 0x3c7d0781, 0xba636c7f, 0x2c7a7f7f, 0x90cf187a, 0x6b4c3671, 0x3a2c436d, 0xef81de81,
+0x4a828117, 0x814dabc0, 0xf930e17f, 0x4c3265c0, 0xe5ef7a7f, 0x819b8504, 0xd5427f81, 0xd881e992,
+0x946a45fe, 0x310162a7, 0x14819c81, 0x7f817f4a, 0x552fcf42, 0x7f707f18, 0xb9dc4881, 0xa17f81c2,
+0x9e476d98, 0x7f7f7ff0, 0x37662d4e, 0xdb7f99cc, 0xf9fe8cc1, 0x1f4c7fd1, 0x3588817f, 0x547abea9,
+0x356e7f7f, 0xab1e857f, 0xda0e7f5c, 0x9d777f7f, 0x451f1bb6, 0xa82e087f, 0xb71d347f, 0x0916d881,
+0x177e817e, 0x7f5a66a4, 0x237f2e6e, 0x816dafde, 0x2f8124c1, 0xcee67158, 0x067f667f, 0xe1258187,
+0x3a3165f7, 0x1f7fac81, 0xf636364d, 0xf2818e36, 0x0b9e207f, 0xed2d7e81, 0xaa6e2281, 0xcb50b6a3,
+0x237f72c6, 0x95819fa0, 0xd7d0c888, 0x39988141, 0xc8b07f8d, 0x5a43c942, 0xf3cd687f, 0xa2e77aec,
+0x9909bb1b, 0x7ff8e681, 0x5d39837c, 0x5625817f, 0xa9738110, 0x8b604bb2, 0xf3ffa881, 0x5f359eb5,
+0x07bf7f49, 0x7f63c67f, 0xc9db7fcb, 0xa65881c5, 0xf2818130, 0xa5817f81, 0x26b4174f, 0xc06f817f,
+0x3b8181c2, 0xbfeb4d6f, 0x9e857f91, 0x58a9a1b7, 0x67147fdc, 0xcd257081, 0xb78d4081, 0x3749ebb8,
+0x22ac7f89, 0x4af84134, 0xe3f97943, 0x2d8187c6, 0x027c8181, 0x81c1bfef, 0xc32b2267, 0x42257f81,
+0xb49b3eb3, 0xa3d47fc2, 0x27ff4d81, 0x69b4a46e, 0x81818181, 0x7fd5817f, 0x00a97d91, 0x10897f7f,
+0xd87f0d3b, 0xcbec8b7f, 0x7f814de6, 0x8286209d, 0x06e2bf7c, 0x81e28881, 0xae64afdd, 0xabc5667f,
+0xee22bee0, 0xe157d171, 0xb39a5bd6, 0xabb6d1c0, 0x53c19d81, 0x447fdb81, 0xfc086996, 0xd65f0481,
+0xc87f4d35, 0x313a12db, 0x5d81a1a0, 0x01231072, 0x327f81d6, 0x7eb1ba7b, 0xe9485dad, 0x5781767f,
+0x047f2481, 0x817f5b50, 0xda064bd7, 0x7ff07b3c, 0xfde4a68a, 0x7f83816b, 0xe67f7f34, 0x1a56f181,
+0xe2bbb681, 0xe4687f74, 0xd5a20bd8, 0x81d581a6, 0xb2395342, 0x977f0fa3, 0x81e3b5dd, 0xf1cd8147,
+0xe34f48a1, 0x258142c3, 0xe24d510b, 0x46d6816a, 0x2a608ae6, 0x5781ef81, 0xcce97f0d, 0x677f7f81
+
+input1 =
+0xaa2381bc, 0xbde77f4d, 0xefa38185, 0x81a67f75, 0x6cceb856, 0x4976bb25, 0x3efc977f, 0x86cdf691,
+0x13497f81, 0x7fe7730a, 0xd71d8163, 0x8c7f7fbd, 0x1bec817a, 0x8154b897, 0xc71e45b6, 0xbed568c3,
+0x256c6514, 0xd481af7f, 0x19ad697f, 0x817f745f, 0xd27fa187, 0xd5e769d9, 0xd816cf7f, 0x1aa4815b,
+0x035e7ff6, 0x85de810b, 0x3ea73657, 0x216281b2, 0xe48144b7, 0x3277dfe8, 0xf8c57f20, 0x907f5091,
+0xf481b081, 0x9d8152cf, 0x0e6a81c0, 0x7fff7f06, 0xf8884d81, 0x687f81b3, 0x2657ba35, 0x527fc24c,
+0x9945694c, 0x1faa4e5b, 0x37819334, 0x57f52a7f, 0xec7f817f, 0x817fa0a8, 0xe3a8818a, 0x16beacdb,
+0x2ad2b97f, 0xb981245b, 0x359a8181, 0x7f97265e, 0x9de4387f, 0xed7f058a, 0x0e817f81, 0x4e69bdb5,
+0xc5e38552, 0x77482e81, 0x6c817542, 0x447f2990, 0x07b1f9dc, 0xc4247f82, 0x077f7f81, 0xe58bdca6,
+0x55e07f74, 0x0e7fe47f, 0x04883e81, 0x4981f87f, 0x7d7fce29, 0xe07f7d7f, 0xee817fa6, 0x7262da81,
+0xe158813b, 0xe35e41b9, 0xf17f6d65, 0xef7560ea, 0xae408493, 0x97812300, 0xf29f816e, 0x557fd5aa,
+0x328bb778, 0xa27f7f25, 0xde7fb5cb, 0x03577f0b, 0x577f18a5, 0xb9816d20, 0xe28d2a7f, 0x248c7fb9,
+0xff5fb965, 0x93b27f9c, 0x2d817581, 0x41958195, 0x3a7ff044, 0x7f7f6faa, 0xdb81b784, 0x5081603d,
+0x363ff38d, 0xc747d8b3, 0x537f812b, 0x8176a97f, 0x1d8181d3, 0x81811929, 0xe893d4c7, 0x3c7fcf7f,
+0xf6385c81, 0xaa63b42e, 0x81c3a781, 0x488142a7, 0xcbef89be, 0x3f748159, 0x50c52932, 0x298198d7,
+0x14c68e7f, 0x7fd8a798, 0x085a632f, 0x7f1d7f7f, 0xb2e34289, 0x88c3b262, 0xb044817b, 0xbf7f238a,
+0x5ae6b554, 0x9e833081, 0x607f985d, 0x0203226c, 0x333f63fb, 0xc77f8181, 0xe8297f7f, 0x9dea7f33,
+0x6f2e1f54, 0x2e41327f, 0xff0f7f81, 0x7ffa7f30, 0x343f74a6, 0x81f59f81, 0xaac67dbb, 0x6f81da1f,
+0x79ec8153, 0x78eae674, 0xec7f6e71, 0xa46a48bf, 0xe5810efa, 0x0f41b9a7, 0x3a1124a5, 0x5ff97f7f,
+0x0bd5be75, 0x7f8181f0, 0x242f409e, 0xf47ac606, 0x1e96d94f, 0x43a66a81, 0x18fc815c, 0xa51a7f7f,
+0x1185d27f, 0xa00c810f, 0x078ae481, 0x71d7866c, 0xd47ff796, 0x813cf240, 0x45814d48, 0xbc6c3618,
+0xa8b937ea, 0x838e7f7d, 0x19b3817f, 0x7f73be95, 0x00fa46b3, 0x4c43655a, 0x20f67fc2, 0x98fdda7f,
+0xe879817f, 0x4c9e7f2d, 0xcd7fefc2, 0x9681a909, 0x1e59e7b3, 0x35818136, 0x9e3a977f, 0xaf7f207e,
+0x9633227f, 0x44450e81, 0xc2c25f7f, 0x7f1a3f81, 0x08acf783, 0xd083a838, 0xd2627f59, 0x6d327f32,
+0x362c2b5e, 0xee8e507f, 0x48b431c5, 0x00816381, 0x1e6c1150, 0x7df48149, 0x36f94f81, 0xc5667844,
+0xf7cbf52c, 0x520081b8, 0xc6967f7f, 0xc88981b8, 0x328181ee, 0x697fa9f2, 0xc99a7f81, 0xb5a08181,
+0x1d74dc89, 0x643ab5cb, 0xeb81f9be, 0x987f277f, 0xad38747f, 0x61778c52, 0x59817de7, 0x05ae8144,
+0x217aa1de, 0xc0817fe9, 0xa1a6b4dc, 0xece08189, 0x4118207f, 0x9a8181a8, 0xcf0f81c9, 0xba81d081,
+0x138181b8, 0xd537957f, 0xfc7f9b8e, 0x7fc9607f, 0x16c085fe, 0x81fa7fb6, 0xf7847f66, 0xc20ee0fd,
+0xf983ec97, 0xce209f7f, 0xe2815922, 0x39b07aa8, 0xd3a82353, 0x6ee38287, 0xc60d7f29, 0xcf478f57,
+0x594d731b, 0x0e8c42fc, 0x6a702ce3, 0x7b81b301, 0x3181a450, 0x7fe94481, 0xe581b66f, 0xd87f7f2a,
+0xc1b385ee, 0x81816964, 0xbb7f5093, 0x8151817f, 0x51e3547f, 0xb3fa7549, 0xca81b044, 0x258143bf,
+0xb18181c8, 0x7f54eb08, 0xd4c9db57, 0x68a981b2, 0x4ef17f69, 0x917f977f, 0xda38865e, 0xe97f3e5f,
+0x0bbc63dc, 0xec34daaf, 0x1dc38186, 0xb381810e, 0xcbacafd2, 0xdb3ec56a, 0x22817381, 0xbc44cc4d,
+0xd681d0b0, 0xe614c8a9, 0x53577f7f, 0xdabc3012, 0x353ecdc2, 0x81728179, 0xb660cf7f, 0xef49ca49,
+0xc645dd7f, 0xd16a7f81, 0x1fb99d7f, 0x7d36d57b, 0x04ce7f46, 0x602adede, 0x1142cbb1, 0x60de427f,
+0x29814ccb, 0xe9ad7d99, 0x127b2881, 0x5c5aa08f, 0x38c0db9f, 0x7f76d981, 0x63b32381, 0xdd41ce81,
+0xce14e57f, 0x74ed7398, 0xdd81e6eb, 0xb6f2d581, 0xa581b77f, 0x468c81d7, 0x5f2d88b8, 0xf481fd21,
+0x6ec1e381, 0x71568485, 0xcbfa7f6c, 0xa02e0c9b, 0xd9a09a7f, 0x813d8176, 0xcf43c52b, 0x31a8bca1,
+0x2432dce5, 0x78277f94, 0x474e592e, 0xdefb7f81, 0xff147f51, 0xbb7f3858, 0x25f1e591, 0x36fad833,
+0x0ac87f39, 0x815d9781, 0xaebaaa81, 0x4981815f, 0xd7817781, 0xb44838b5, 0x32626981, 0x417fe2f6,
+0xdf638c92, 0x8624067f, 0x4432e69f, 0xd8688a7f, 0x06815215, 0x25bbbb7f, 0x5b5b6f63, 0x417b5b81,
+0xcc4a7b7f, 0x6ea47fd3, 0xe866b481, 0xc630c9aa, 0x083781ed, 0x69de817f, 0x0381f9f2, 0x84812ce2,
+0x027f4dd9, 0x7f5a9e81, 0x00ea319c, 0x222b9a9b, 0x34a143f0, 0x7fefd1d0, 0xb4947981, 0x11474bc1,
+0xcd44df7f, 0xa2878439, 0xd6f040b9, 0x6f86817f, 0xc67f7f81, 0x7f693443, 0x8d21b1ce, 0xdab1aed5,
+0x3f17ae71, 0x45b7ba7f, 0x05229255, 0xb181d8f5, 0x688681e3, 0xea81e181, 0xf57f817f, 0x7fdc5881,
+0x6e817f7f, 0x817f537a, 0x3987247f, 0x300a7f05, 0x3128057f, 0xe731b77f, 0x4881b50b, 0xb86dae65,
+0x00c015a0, 0x81397552, 0xb9bcab24, 0xf5818181, 0x57d18190, 0x81c3648d, 0xed813a67, 0x4c5d3a06,
+0x3581a4e3, 0x64db6467, 0x21af7d27, 0x5adf7f57, 0x66d9c99f, 0x5b183375, 0xbf4c41e5, 0x577f7ff0,
+0x4e818181, 0xf295493c, 0xd2c28170, 0x5c3a7f8e, 0x09c18181, 0x7f7f7f9c, 0xae675fa9, 0xf6d781a4,
+0x66ba10dc, 0x7f882981, 0xfe7f7f7f, 0x7f7ffea4, 0x2798d845, 0x899cb6fb, 0x4982bcd9, 0xc0815ab0,
+0x558181aa, 0x52110702, 0xd179e3c5, 0x482923bd, 0x187f8181, 0x81b3f6d9, 0xfd96a581, 0x2c5d1a81,
+0x6fde23dd, 0x9e815063, 0xfba49bcc, 0xfa775f4d, 0xb1b8b681, 0x81894f1b, 0x3c8163fa, 0x2d7f3d81,
+0xc57f6681, 0xbd7f7e81, 0x137f7f81, 0x6b3d6f81, 0xe5e2610d, 0xb4683186, 0x7f6e817f, 0x90c12abc,
+0x13a3502a, 0xdddeaa8c, 0x07a67f79, 0x1a5481ce, 0xb87fb01b, 0x0a4b1e7f, 0xd77ffcb7, 0x03535781,
+0x5a5f697f, 0x02ca7966, 0x379638bb, 0xc507c941, 0x5e7fdf8e, 0x7ce0c99b, 0xa162ccfd, 0xff8196cc,
+0xd43aa081, 0x67798185, 0xd6277f2e, 0x7f6dcb7f, 0x217fcd76, 0x2c88fb91, 0x06815b8f, 0xe37f7dae,
+0xe937257f, 0x648181ae, 0x21652c4f, 0xbf81685b, 0x36abe921, 0x3cb5de30, 0xa88e8162, 0xd87f812b,
+0xb981d14d, 0x75c181a7, 0xf7c08aa1, 0x57904e7f, 0xf6f688d8, 0x7fcf6281, 0xd33dbf7f, 0xc07f9a73,
+0x197f8135, 0xcabf8bc6, 0x3f81c37f, 0x487fac4f, 0x8ddc924b, 0x50257f7a, 0xf75e1496, 0x28d2d48f,
+0xcd91817f, 0x2a7f81b2, 0xbd7fb67f, 0x3b877fe1, 0x407fd8fd, 0xbc815f20, 0x7f50e581, 0x8bdfae4d,
+0xb1eb7f81, 0x07819f40, 0x3765274c, 0xde7fd081, 0xa0817f7f, 0x8dbe5081, 0xfa436f7f, 0x4848463b,
+0xc5c45cdb, 0x7f8b1865, 0x5bf381b6, 0x45aa497f, 0x7f813694, 0x54f15918, 0x72886c49, 0xe3fb31b0,
+0x0db1a582, 0x4aadce1b, 0x39926d8b, 0x9a30a85f, 0x1b606181, 0x1c6d165b, 0xfb057f4b, 0xcd7f81ec,
+0x12bf7ffb, 0x7f5f91d4, 0xca8158b7, 0x86134234, 0xf0f17f3c, 0x7f4e05c4, 0x34814f7f, 0xe5c1106a,
+0x2d50c67f, 0xb57fa18b, 0xb7816481, 0x7fffaadb, 0x607f817f, 0x5048ea81, 0x82495d02, 0x17819b7b,
+0xaba67981, 0xb5817f7f, 0xee57a2b6, 0x3591a602, 0x2885a153, 0x429ba160, 0x757fd0f5, 0x344e9d7f,
+0xc77a7f8d, 0x2a7f8160, 0x3198b27f, 0x81c552bd, 0x0374e058, 0x31605de1, 0x40d0817f, 0xb281a37c,
+0x156ce27f, 0x91893090, 0x06f58181, 0xc4487f6d, 0x0a7f7f9d, 0xc3a17141, 0xc03c39c5, 0xb581b2b5,
+0x526a7f7f, 0x7f7f7f4e, 0x7fec7f7f, 0x95cead7f, 0x161ba8d2, 0x8ad0d081, 0xe4f19557, 0x5bb6fca9,
+0x2d813a6d, 0xddbb7f81, 0x1cb1e281, 0xc2b43734, 0xd07f4641, 0x7f81bb39, 0xae9b1b81, 0xbe817f36,
+0x1caf7f81, 0x7f704922, 0x108f777f, 0x81662d7f, 0x479ca35b, 0x818513c2, 0xa41d8607, 0xd081b235,
+0xf6817fcb, 0x7f015960, 0xadb15f5b, 0x81be2abf, 0xf2b0e29f, 0x81819224, 0x38a7407f, 0xc9817b09,
+0xf307556c, 0x7f818181, 0x0281817f, 0x3fce810c, 0x18b47cd4, 0x81e2a53c, 0xe359840f, 0xe27f81ad,
+0xa1665081, 0x7ae062b6, 0xe0b27f35, 0xcd376e73, 0xd9a6d373, 0x817ffe7f, 0x02810946, 0x06498116,
+0x9b7fbb1b, 0x8d2b812a, 0xff14f781, 0x937de081, 0xb77ff44b, 0x4b2732c7, 0x0720bd96, 0x9e647f13,
+0xb831d474, 0x811d8183, 0xa5db837f, 0x8aa1b04a, 0xd4377cfd, 0x7f814241, 0xee8fec39, 0xcc81d881,
+0x2e29d770, 0x7ff76366, 0x7fbd363b, 0x74bbd13e, 0x2e817192, 0x9f6b81db, 0x44913bb3, 0x327f0de1,
+0x2d7f8881, 0x54f2afaa, 0x107f513c, 0x4c8191d1, 0x117fe67f, 0xffa21764, 0x2c931727, 0xd09ba693,
+0xf74e4882, 0x51ed8bc6, 0x3a23d683, 0x47437f70, 0x7fad8181, 0x9a610813, 0xa57ff47f, 0xbe1b5b9a,
+0xf4bf8c33, 0x43074944, 0xe4ef729b, 0x1e7165d6, 0x74e081c6, 0xe281810c, 0x2a4b81e4, 0x10ede221,
+0xc8375d7f, 0x81c07f81, 0x49cb7f83, 0x5f589c22, 0x276441a9, 0x7fe67f0b, 0x4d7f1d7f, 0x1872814a,
+0x05b6a577, 0x8140fa5d, 0xe47f9bc3, 0x44166064, 0x73896729, 0xb5c0867f, 0x247f445f, 0xccc92994,
+0x29611b37, 0x27531258, 0xeac27f9c, 0xd43f4e7f, 0xc27f170f, 0x6d9bfc37, 0xfc819181, 0x077f598a,
+0xe0c5d398, 0x7f23182f, 0xed171743, 0x20bff85d, 0xb0d0be7f, 0xb8938149, 0x45017f32, 0xcf2cc65d,
+0xdf7fc481, 0x7f380777, 0x81b8f0dc, 0xf6696596, 0xff007f29, 0x896e1abf, 0xfaac2d81, 0x5bc357ba,
+0x6a397f2e, 0xbfaeb45a, 0xd64e2b7f, 0xe49b4587, 0x565c6c51, 0x7f206a7f, 0xc381540b, 0xfc3d7f73,
+0xd4ec9f39, 0x887b7f27, 0xe3c1e07f, 0xb721523e, 0x0310819f, 0xc0c793ce, 0x387da141, 0x814f61ac,
+0xd1347fbe, 0x19244c1f, 0x8d3d58f9, 0x813a7fc9, 0xfae27f54, 0x7f39f481, 0xe37f818d, 0x034632d9,
+0x5b06c07f, 0x65ab8b36, 0x127f34b5, 0x18a681ad, 0x73510e20, 0x2f2ffa85, 0x6814ca9e, 0x5b7f7ead,
+0x08da93da, 0xc826da54, 0xc1686fd2, 0xb6f00fbc, 0x28bb5dbb, 0x7fe5297a, 0xb5ed8181, 0xccd9067f,
+0x177f1561, 0x71b41a19, 0xd9817f7f, 0x505b50c5, 0x309dc978, 0xb97f4f81, 0x4e81c219, 0x2d81d04a,
+0xdf3d5fa1, 0xfc6e5c30, 0xf7869481, 0xfc81e47f, 0x67b5817f, 0x7f72577f, 0x2c938136, 0xd576ad7f,
+0x63beb36f, 0x7fb3817f, 0xce56ca81, 0xd801e58d, 0x425f2522, 0x8a25817a, 0xdc7673c9, 0xd7b57fca,
+0x927fbe2a, 0x149b9881, 0x9ad781a9, 0x214b9d4d, 0x2dae1287, 0xfa772ca4, 0x3b7fdd35, 0xf59e4174,
+0xad3a28f5, 0x8144698d, 0x1ca792df, 0xdb7c7fd1, 0xe96d497f, 0x567fa7d9, 0x489b70cb, 0x3442de7f,
+0xa2554c37, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x4dc76c95, 0x29b78ec8, 0x3d927f7f, 0x307f93c2, 0x8181da7f, 0x99f741df, 0x6e1d417f, 0x1bbda834,
+0x954b5a9f, 0xc6817f07, 0x7fc01005, 0x3b5a81e4, 0x73cd7f5b, 0x7f817f3c, 0x8e7f812b, 0x59d48a03,
+0x982475ef, 0x65a1c068, 0x400cc79b, 0x81f231fe, 0x840329e0, 0x1f6054eb, 0xf8813d3a, 0x7f4a9296,
+0xbff677c5, 0x7f3c6f0c, 0x7f2890cd, 0xe0aaaad6, 0x81ae9428, 0x7f8117f1, 0x7f097f88, 0x7f27cfcc,
+0xca67205e, 0x815f7f37, 0x7f0ac07f, 0x717f95d2, 0x7f9232a7, 0x2bb803d4, 0x3c12c7e7, 0x937c81ea,
+0x7f1cdd3b, 0x0622b6c0, 0x62d71247, 0x811cb00b, 0xaef9e981, 0x0f818ff5, 0x740e6f53, 0x30616410,
+0x81fed3e0, 0x49167f3a, 0x4577315b, 0xe49130fa, 0x817c7f23, 0x7ffef7ec, 0x4fb47f17, 0xb365b1f8,
+0x81a09c38, 0x7f818134, 0x9568e717, 0x4ead1921, 0x8ebd9806, 0x7f911cf8, 0x8c7f5efc, 0xf29114a8,
+0x90bc6ae9, 0x0b5f26c1, 0x81bc9281, 0xf0fb5532, 0xc89ab77f, 0x7ec0b9d4, 0xf00bdcf7, 0x7f7f7a24,
+0x097ff51e, 0x64d62dfc, 0x7f7f819e, 0x34c05cc3, 0xa2957f19, 0x81101e05, 0x7fd68181, 0x1dff81af,
+0x7f81dc24, 0x7b3c6769, 0x7ac490dc, 0x814032c5, 0x9d81747f, 0x7fb46342, 0x72607faa, 0xd40c8161,
+0xa5ab574f, 0xf0838bba, 0x33fd7f47, 0x289f81be, 0x817f480f, 0x4bfa552d, 0x8ca1d5d5, 0x817f492b,
+0x418125e0, 0xe45d5af0, 0x811b1751, 0xe04d81f8, 0x7ff2917f, 0x65811a53, 0xe65da37f, 0xbafdd439,
+0x53818189, 0x752c7ebb, 0xc301567f, 0xb0816f27, 0x708166db, 0xc0b57f49, 0x3a818169, 0x4f16189c,
+0x13d6e83b, 0xd258a20d, 0x7fadbdb2, 0x7f93560d, 0x81fd5399, 0x6014dab2, 0x9cf45f1b, 0x107f71d5,
+0x352e8109, 0x5a5d6efa, 0xb458ef47, 0xb4a96098, 0x7ab91c37, 0x81bd762e, 0x816cb0d7, 0x3f9819d4,
+0x8113b97f, 0x7f09fa33, 0x9e7ffa99, 0xe98181ce, 0x4ffb3064, 0x7f0681ea, 0x81ef06ad, 0x385abdf5,
+0x1414457f, 0x18dabc5a, 0xc27e0d7f, 0xd87f8115, 0x703f7fcb, 0x300b7ff1, 0xb081f55d, 0x024d78f8,
+0x72949a16, 0x90603c38, 0x7fba6fd4, 0x4820e44f, 0xd57f81af, 0x9c7f7ef9, 0x61c6b27f, 0x81b6141f,
+0x7c52514a, 0x5f817f78, 0x668119a7, 0xe441aa7f, 0x53819553, 0x7f721521, 0xbd7f7f17, 0x593081de,
+0x8b252de8, 0x7f7f81c1, 0xaca9436e, 0xb5e0b104, 0x81e49d81, 0x75b48102, 0x5c278118, 0x9f6c36c9,
+0x509481fa, 0x53d1e640, 0x52108181, 0xeb7f7fff, 0xde417381, 0xa781cb33, 0x4fab55f4, 0x3e7d75f1,
+0xf17f0c1a, 0xe8e1817f, 0xcf1f7f81, 0x96d8ba40, 0x1318fc72, 0xd7ae3d1d, 0xf7e88126, 0x32bfe432,
+0x453f694b, 0x7f7fbab6, 0xeae7de30, 0x3d81d7d1, 0x438d9cc7, 0x387f4a05, 0x7f46ab81, 0x635bdf10,
+0xc281ae24, 0xc5c67fc4, 0x81acb53d, 0xba4f4d04, 0x424f72cc, 0xbf7faa1f, 0x55de1de8, 0x81429a1d,
+0xdec94147, 0xff007f42, 0x3fa74821, 0x0cb74e9c, 0xff81627e, 0x6343810f, 0xf7393529, 0x7f44ad81,
+0x7f811f39, 0x81e981a0, 0x8c8c4421, 0xc4819190, 0x81816881, 0x7f7fd234, 0x3688c16c, 0x9c34b357,
+0x6046e3f6, 0x86123bdc, 0xbd45957f, 0xe6cd777f, 0xe0951ce7, 0x9b7f63a6, 0x817f29c1, 0x7f5a81ca,
+0xde7ffcbe, 0x812c3207, 0xa099537b, 0x2a2f81d0, 0x16817f9a, 0xbb81817c, 0x7f81e538, 0x957a4200,
+0x81753bab, 0xaf63a506, 0x3081691c, 0xb0a47f2c, 0x0f157feb, 0x8e4330fe, 0x635b8189, 0x7f81ee34,
+0x7f40caae, 0xbce88e05, 0xabb52199, 0xd2ba102f, 0x7f7f8173, 0x810b32ab, 0x2e222781, 0x7f819951,
+0xfbc73dca, 0x5d81d181, 0x7fb09d81, 0x7faa3098, 0x7e81435b, 0x61e995d6, 0x7f7974f3, 0x7fef81f9,
+0x402faba7, 0x7a647f3c, 0x815c6826, 0xba2b2ffe, 0x7f095b7f, 0x7f9236b9, 0x9953636b, 0x344c64d2,
+0xd784acc0, 0x7f818426, 0x61ab43f8, 0xd5813c70, 0x7f817f81, 0xc9867fa8, 0x6f4b4181, 0x3881b1df,
+0x69813f27, 0x81d0780c, 0x17c84a36, 0xbf908ccc, 0x7f5e812b, 0x317f7fea, 0x7f817881, 0xf731c537,
+0x7fb221e7, 0xbae09bf7, 0xcc5d947f, 0xcfc13926, 0x6e0db67f, 0xdf17be28, 0xcaa4ea2f, 0x9870810f,
+0x357f701d, 0xa281815d, 0x91497468, 0x5fbcbeb0, 0x7fd54d81, 0x7d5e91f3, 0x8d6555f9, 0x35d416e3,
+0x9a7f8c11, 0xd875779b, 0x6b7c6681, 0x24f77f50, 0x288bd781, 0x7fad2b50, 0x637f1a23, 0x527f2ea7,
+0x277f7fc3, 0x819c13cb, 0xe1bb65f1, 0x48151c1b, 0x8e7fd27f, 0x7f7065ac, 0xfe0bb14d, 0x588e7f0c,
+0x819d7f34, 0x81c455a5, 0x4f6b7fae, 0x7fb56506, 0x7fcfd5a2, 0x3e6981dd, 0xcc814569, 0xc5fb811a,
+0xc0e07fbc, 0x817f8153, 0xac356315, 0xc94db6d8, 0x7f88e57f, 0x81e57fd0, 0x7f1f6c0f, 0x78d581e1,
+0x7f2137f6, 0x1c57815a, 0x627f55c0, 0x69e4dbcb, 0xa68181c3, 0xb9907fea, 0x55897fa0, 0x7f54a91d,
+0x3e7bb314, 0x7f167f5f, 0x75cc8181, 0x177f2fd0, 0x6d39f7e9, 0x7f817fd3, 0x7f6eb0ea, 0x817fc7ad,
+0xae5b5b04, 0x86cd281f, 0x3528fe7f, 0x87217fff, 0x87860479, 0x8b7f4510, 0x7faa816c, 0xb9d62c33,
+0xdd1c6ccc, 0xb48104fd, 0xbf508f81, 0x34994944, 0x8181b843, 0x74e47f47, 0xc6baf38e, 0x624b06cc,
+0xfdadfaeb, 0x948189ac, 0x7f7f992d, 0x813edf00, 0x81c3587f, 0x5eb2819f, 0xcee54cef, 0x277f38d9,
+0x8a187fb6, 0x9736ed05, 0xed70487f, 0x4f307fa9, 0x81ba975e, 0x81dd81ed, 0xd0da7f88, 0xf24881cc,
+0x12e656d0, 0x7f9b6a1f, 0xcf7fcf7f, 0x78787ebd, 0x7f8319f2, 0x7c7fe9ed, 0x29b381ae, 0xfa4f81cb,
+0x13cc81e2, 0x9a2aa0a8, 0x817f8112, 0xfda22318, 0x7f65e85a, 0x727f6812, 0x7f814b0b, 0xcfe2bcd5,
+0x6b816ce3, 0xb2965ab7, 0x819981bf, 0x73799635, 0x82854b71, 0xbc3e8132, 0x91c714a2, 0x81817f2e,
+0x2cc55af1, 0xb87fb038, 0x7f7f1718, 0x02ba14fe, 0x5e348128, 0x817ff97f, 0x81d03daa, 0xde37813b,
+0x443781c0, 0x0e4e32e2, 0x85a7ad81, 0xba276c16, 0xb61ed9c6, 0x81ca27d3, 0x7f762e7f, 0x4181d581,
+0x7f7f5508, 0x6eb1b250, 0x5ad47f4a, 0x7fd56756, 0xbc817f81, 0xd481a9ba, 0xf8a74db3, 0x7d1aae25,
+0x81397f36, 0x7f62a402, 0xab3b3081, 0x4c45c301, 0x3eb57f88, 0x6d2e7fdd, 0xeb1ac681, 0x813881c0,
+0x7fd127b4, 0x67e57f90, 0x4fcb6d3a, 0xc566afe7, 0xc58bdb7f, 0xe0486a7a, 0x363f8181, 0x7fdd8191,
+0x67149cc2, 0xfe7fcf00, 0x7feeb9dc, 0xccabbd95, 0x7fab347f, 0x98eda0d8, 0x7faf81a3, 0x3b8c7f0a,
+0x1c387fa7, 0x7f055ed9, 0x567fbd7f, 0x4d7f7244, 0xbb8175af, 0xef7f7f5f, 0xa9a58119, 0xada9eec7,
+0x592da3bd, 0xb5a98177, 0xe17f813e, 0x94816af7, 0x69ec7fc5, 0x7f29dd4a, 0x9481c981, 0x5d3198da,
+0xf84e81bb, 0x41817f7c, 0x7fb31b60, 0x7f7f5e03, 0xea81c490, 0x7681571c, 0x9b54b581, 0x812d993b,
+0x7fefd381, 0x7f907fe3, 0x7f81a862, 0x758181bc, 0x46d6507f, 0xae81a50a, 0xd1562a1d, 0x3dcb58d2,
+0x489e40fd, 0x7f8fa98a, 0xb07f7f81, 0x238b7b40, 0x49686384, 0xca817f4f, 0x607f7fd7, 0x3a0d81ab,
+0xb0fa42e3, 0x7f81563d, 0x829a817f, 0x51d48167, 0xcc817781, 0xd54f5638, 0x7fee1218, 0x81a49e22,
+0x0081ec2f, 0x5f5eecf5, 0x6bbc9ce7, 0xa28138d6, 0x86811081, 0x7f0283cf, 0xfff67fb7, 0x81c2814a,
+0xc7817f52, 0x85818146, 0x8781a77f, 0x8181e9f6, 0x4731f881, 0xf51a35d8, 0x236931b2, 0x6eaefadb,
+0x7f81c61c, 0x947f3d7f, 0xbcf43b52, 0xd5814849, 0x17b6e07f, 0x7f6a81b6, 0x817f8163, 0x817f595f,
+0x7fa5ae33, 0x2b63a90a, 0x77627e81, 0x81816660, 0xae7f6281, 0x26c6dedd, 0x757ff9c4, 0x7f7fce30,
+0xab9d7800, 0x68fc444b, 0x3d7ff681, 0x93264a1d, 0x81361db5, 0x817fb6d3, 0x1681136f, 0xc5655027,
+0x792781e2, 0xeaada9c7, 0x34d1817f, 0x81687fc6, 0xa88d451a, 0xdce97f0d, 0x443935cd, 0x810a68b9,
+0x73ef4023, 0x66372979, 0x9a31076e, 0x81813dee, 0x56b11a7f, 0xc76a81da, 0xe0e48181, 0x6681b8b7,
+0xa99858ec, 0x7fb38de5, 0x7f6f817f, 0x92168381, 0x53819b02, 0xc3c27f2d, 0x5299d77f, 0x81e47f60,
+0x687ffbc6, 0x7f5f9df9, 0x0ab4c09d, 0x44856927, 0x5e63405f, 0x7f9fe864, 0x8c884d25, 0x794dd01f,
+0x7f81fb68, 0x31bed5f5, 0x3e658638, 0x3e7f8151, 0x7f7ba8e4, 0x7f304a8b, 0x37c18157, 0x7fb2c6fe,
+0x7fa39bef, 0xa37ff9a1, 0x29983fc2, 0x777facc9, 0x547ff37b, 0xe6815b17, 0xec5a457f, 0xacade303,
+0x7f2603dc, 0x697fcd23, 0x7f7fd042, 0x4a81a54d, 0xd481bf87, 0x7f4e7f0c, 0x0d5c9d05, 0x26ca3c2c,
+0x4f817fe3, 0xc9368b0f, 0xaddb8181, 0xc210e075, 0x248f7f81, 0x697f7f11, 0x817f2f81, 0xef697ff1,
+0xd98181b9, 0x810a4f50, 0xbb9e045a, 0x8ea3771d, 0x787f6931, 0xfbb9812d, 0xb778f981, 0x7f354b27,
+0xfc813658, 0x25818137, 0x7f3402a1, 0x27eabd01, 0x81c18181, 0xfd7fa22c, 0x9784817f, 0x7fa57fb3,
+0xd881f3ce, 0x887f60bf, 0xdc816b0c, 0x3890b818, 0xc37fa281, 0x8f4681f5, 0xb07fb08b, 0x82ad24d0,
+0xc189ab02, 0xe3fddb8f, 0x7f744610, 0x435781b0, 0x8104f653, 0x41bb81be, 0x9a4c717f, 0xf9d4c1e4,
+0xbdc36404, 0x8ff9818a, 0x54d3ab9c, 0x24aec8ef, 0x81ac5bc8, 0x81908100, 0x74f05a0f, 0x0c5b7f2d,
+0x5279a3e3, 0x2d8169b9, 0x7fdc4897, 0x7f5f89bb, 0x9f457581, 0xde817fd7, 0x59813d7f, 0x67817fe7,
+0x7f817fd5, 0x7f5978ca, 0x23ab813a, 0x70819ce8, 0x41575433, 0xb17fa99e, 0x697f7f7f, 0x60aeb15a,
+0x7fa5a9df, 0x39818181, 0x818ea205, 0xbd819fb2, 0x7f0fa491, 0x814981d8, 0xb9c186e4, 0x817f29e5,
+0x81afcd17, 0x842f81ce, 0x058b8e1d, 0xea3da29e, 0x379f5ab7, 0x223c84c9, 0x93bcd8bc, 0xc895baea,
+0x6b7d3cc9, 0x7f2b8152, 0x7feccb81, 0x7f71634c, 0x810f7f29, 0x89c14aff, 0xc0ce05d7, 0x7aed49e1,
+0x817f4d0c, 0xeeaa0afb, 0xd7817f81, 0x6681d76a, 0xa37f4881, 0x38708103, 0x7f8181cb, 0x0a8f6639,
+0x8581aec3, 0xe82836d2, 0xda7f4781, 0x40d67ff3, 0xcc335f7f, 0xce207f44, 0xff9181f8, 0xbae52614,
+0xfccdf700, 0x9dc19f54, 0x5d7faefc, 0x5bcc2357, 0x817f7fb1, 0x6f5a9dd7, 0x81af5633, 0x810a7f59,
+0x551c8a18, 0x4b816452, 0xe981d940, 0x81d175f6, 0xee7f5746, 0x276f51b7, 0x16ae817e, 0x652063ba,
+0xd84e5e44, 0x7f385f2a, 0xa2e1b28f, 0x7f817fd2, 0xd8477f34, 0x508f31fc, 0x7e357fc7, 0x7fa07f7f,
+0x7f6d7f52, 0x7f717038, 0x7f819c3a, 0x2f973937, 0x71ac7d7f, 0x790950c2, 0x9aa97f81, 0x7f427ffe,
+0xf3f974a1, 0x8107812c, 0x817fb77f, 0x4d458151, 0xc93d2395, 0xb497d049, 0x4b955c87, 0x047eaef1,
+0xcc6c07cc, 0x5eff94ad, 0x3bed1246, 0x74d8c531, 0x815afc81, 0xaccf6eca, 0xbe4e3f64, 0x079b37b9,
+0xa0898136, 0xfe8a81b9, 0xb7df45fc, 0x7f7f7157, 0x725581a3, 0x7f0c56ec, 0xe6430781, 0x4356def3,
+0x54ca7fc7, 0x234f3eee, 0x7f270367, 0x704981c1, 0xfe623836, 0x816d2725, 0x7b9d9e81, 0x3b49d3ae,
+0xd2925440, 0x819a7fa5, 0xb025c9a5, 0xbbd77fc1, 0x81737f81, 0xbcb891ae, 0x442ab466, 0x812e41cd,
+0xbdb081a8, 0x8e7f5c2d, 0x8458dfb7, 0xd77f8130, 0x9bcbbc47, 0x783a7f5f, 0x27c4d502, 0xadf8cb31,
+0xa51e9baa, 0x814d812f, 0x7f1a7f8c, 0x1874f4be, 0x4ac57f81, 0xc7b67f37, 0xc0817ff9, 0x8c81e1ae,
+0x6f7f9331, 0xa17f7f9f, 0x7bec5242, 0x81b79554, 0xa27f7f7f, 0x181da812, 0x52e681f5, 0x5c3781fb,
+0x895981ae, 0x7f7fa003, 0x9555817f, 0x32391fdf, 0x0c7fff6a, 0xb681981d, 0x1b93a683, 0x7fc3d495,
+0x83f5810b, 0x854399a0, 0x997fd57f, 0xe87f6929, 0x7fbafb81, 0x7fe201e3, 0x7f7234b3, 0xb6889ebb,
+0x8ea7cdcf, 0xd27fab96, 0x9a562c7f, 0x6c7f7fd8, 0x2277467f, 0xb3108ed9, 0x818d0171, 0x81bc477f,
+0x650719f9, 0xba7fe501, 0x7b5796ca, 0x3fc581eb, 0x9a90469b, 0x7f041112, 0x527f7947, 0x8d3d4657,
+0x7f627fdd, 0x64053a56, 0x817739c6, 0x812268ee, 0x69ed9b7f, 0x3d7f7f1a, 0x7f2264f4, 0xb76c55f2,
+0xd06981fa, 0xa72359d6, 0x3708812f, 0x7f7a4c29, 0x467a227f, 0x685eb4c5, 0xeeeb81c1, 0x2999b5e3,
+0x7f7fa0be, 0x73586e92, 0xc7817f0a, 0xc32e7f4f, 0x819b9046, 0x8179acee, 0x29b1a517, 0x557f0ef9,
+0x8116589d, 0x557f26f3, 0x861970dd, 0xcb817fef, 0x9bb6ba72, 0xaee4ddfa, 0xd17f81c9, 0x257f76bf,
+0xb04b4df4, 0x8f7f8124, 0x818181fc, 0x4fcc8f06, 0x2f7cc181, 0x4900141a, 0xf0709c16, 0x6865b5fd,
+0xd9ab9128, 0xa2321900, 0xa1a6de7f, 0x58e47f23, 0x54ac4a45, 0x1af1e618, 0xed633c24, 0xde7f7ff7,
+0xd48139b1, 0x5a640dcf, 0x63d9de7f, 0x81669358, 0x4f4571bb, 0x7f7fa692, 0x7debaf85, 0x9d7f7f10,
+0xd9c34e9a, 0x708981e8, 0xfc838ac6, 0x430bf6b2, 0x81a1a4ee, 0x7f8181ad, 0x35e98d7b, 0x4e3681de,
+0x7f7256e9, 0x7fa3b47f, 0x5a813e7f, 0x8128aa15, 0xff42357c, 0x581e98a3, 0x81534281, 0xe58196fb,
+0x11b90c6b, 0x7f81e5e5, 0x7473f57f, 0xa9475b2c, 0x24d77fa7, 0xa27f591e, 0x7fba81a5, 0xc9f19310,
+0x3c64d05f, 0x86aca9f0, 0x69b57f01, 0xbb747fb6, 0xdd81e923, 0xbe814a26, 0xe6811b22, 0x7f817fdf,
+0x7f81e46a, 0x647f8170, 0xf2812d9b, 0x7f765fa5, 0x812dfe0e, 0x2584ed72, 0x811a7f7f, 0x417f7fee,
+0x81d28138, 0x7f8e7fff, 0x9c7e28d0, 0xa71eb5f5, 0x65993e7c, 0x927ff0e8, 0x7f5cd4ce, 0x2886b35e,
+0x7f81d3bf, 0xc2d1441e, 0x2f2cbadd, 0x8c9c4cb4, 0x34dba16b, 0xaa37c5c8, 0x5881ec6f, 0xfc7f64a4,
+0x81bb8128, 0x7395489a, 0x7f647f7f, 0x44ef7f9a, 0xc3b4d6a1, 0x8693af02, 0x87fab099, 0x7f7f2f05,
+0x0191d5f8, 0x0b4281cb, 0x615b990b, 0x554b7f4c, 0x7f7f66a2, 0x817f793b, 0x5681aa97, 0x21aea0bc,
+0x81925b0b, 0x81c69839, 0xb115814b, 0x9e81d8b0, 0xc70c6f7f, 0x8f14de16, 0x3f81b4bc, 0xaa0c25dd,
+0x81f8346b, 0x6981226b, 0x81b1817f, 0x7f2081e4, 0xa2848117, 0xe4cbcc32, 0x817081d5, 0x817dbf75,
+0x157f2614, 0x5a0477d6, 0x8b818105, 0x9e7f34d4, 0x48da3235, 0x397ff6d2, 0xa02f7092, 0x817f8b13,
+0x307b35ca, 0x783c7fe6, 0xa2c29081, 0x555b8101, 0xf764ee86, 0x463a8149, 0x577f837e, 0xb1948151,
+0xbd2f86f5, 0x6e5fc338, 0x7f67a373, 0x55817003, 0xa1e17f77, 0x8a817fff, 0x49365e44, 0x817f8933,
+0x209ba8a9, 0x7f311515, 0x7f519140, 0xa9549352, 0xbd817f8a, 0xafc4a005, 0x620d407f, 0x88302fd2,
+0x5cf481f2, 0xbd7fff40, 0x7f7f9cfb, 0x91ae81fc, 0x73f15c81, 0x93814581, 0xc7e8818c, 0xc481a1fa,
+0x99818124, 0x7fecdbf3, 0x207d8d39, 0x64818328, 0x7f9dbf5d, 0x2181f9c2, 0x817f7f8c, 0x367c1801,
+0x2a019011, 0x815f5d39, 0x81817fb8, 0x7f22815e, 0xb3ceca8f, 0xa6560501, 0xfb548181, 0x2b7ffe18,
+0x5394bb1c, 0x7f9981d9, 0x7f7fce32, 0x815ba6e4, 0xabd0d732, 0x7f5c81fa, 0x7f369f77, 0xa42b7f51,
+0x900db9cd, 0x9993bde1, 0x7fc8819a, 0x116f9310, 0x8ef767b0, 0x7a817f02, 0x56819b81, 0x29aee511,
+0x7f2b8d3a, 0x818a442a, 0x555c3ff5, 0x1d6c4929, 0x7ea9697f, 0x780b8fa6, 0x097fa426, 0x9b7f89d9,
+0x165081de, 0x45a184c0, 0x405c7fc7, 0x6bbcd6d3, 0x7b81837f, 0x33867f12, 0x878f7f62, 0xc6cf1002,
+0xad819f7f, 0x3df9422a, 0x77ca9e81, 0x684f7fca, 0x30847f81, 0x81817fda, 0xedc6a081, 0x682c00eb,
+0xca767fdd, 0x1f7fb0e3, 0x377f8a7f, 0x5e85d200, 0xb9237f1f, 0xf2817f2d, 0x0dd88132, 0x81cc0037,
+0x739b39bb, 0xb47fb83c, 0xdf7f8181, 0x7f54f610, 0xbc9e3f06, 0x5762b272, 0x81ebc628, 0x7f9845b9,
+0x7d901f63, 0x81ce7f36, 0x0ebd8e7d, 0x9a81d963, 0x644c3f81, 0x227fbdeb, 0x8e2d5f81, 0x54efc59a,
+0x94ed5511, 0x817f944b, 0x38393d81, 0x592f7ad2, 0x75814881, 0x63275d7c, 0x4a65de10, 0xeb818ff6,
+0x70f93fc1, 0xbbe83610, 0x7d94beba, 0xfd077f2f, 0x7f818181, 0xbb7f47d1, 0x4c8f7f6d, 0x587fa2fb,
+0xbd817f02, 0xae7f8123, 0x4fb981ac, 0x3fd2c446, 0x817f7fa1, 0xb28d81ce, 0x7f813fbf, 0x5a8181a8,
+0x2f6355c9, 0x75624fb5, 0x811842d0, 0x70a38146, 0xea52aef5, 0x7fffa3f0, 0x8f7fdcb0, 0xe31d81e5,
+0x7fe15a51, 0x21894817, 0x9c810f41, 0xe9428145, 0x7f819edc, 0x7feb1761, 0x81368181, 0x2c71f15e,
+0x26813c54, 0xf09c69aa, 0xd17751da, 0x25a1c23c, 0x7f812281, 0x4317b30f, 0x66908149, 0x81869b95,
+0x062874c1, 0x843481a4, 0x81743c89, 0x813e9cae, 0xd8397fd1, 0x7b495f55, 0x7f7f7f53, 0xc0b419e7,
+0xacf11d1b, 0x90a51003, 0x9efa5bb6, 0x77b8989f, 0x8b1ea17f, 0xc46537c3, 0xcca93d93, 0xa955d1db,
+0xc42743ed, 0x7f8a6442, 0x79ab8152, 0xfea48ff7, 0xfbbb819c, 0xa1be81ed, 0xa481da42, 0x477f7fd0,
+0xcc1acdfb, 0x767f1533, 0x99cdda46, 0xfb9c8109, 0x7f757f7f, 0x747f88d6, 0xb5404df1, 0x8b69b739,
+0xc762670a, 0x8125bded, 0x6481a452, 0x943e5aef, 0x7fe3557f, 0x8181bfc5, 0xb14d907f, 0x7f747f9c,
+0x54b4ff28, 0xe19d7fc2, 0x7f25887f, 0x7f6cc0b5, 0x34653ba1, 0xacd70015, 0x7901cc3b, 0xb081815e,
+0x812781fd, 0x871cd81d, 0xd1818494, 0xa97fc1ed, 0x81817f86, 0x9f3cf7da, 0x9857bb81, 0x9d1661d1,
+0x167f5814, 0x037fd0e4, 0x7f337f7f, 0x7fd40904, 0x376a4a69, 0x7f77a308, 0x73b61d36, 0xb4a318cc,
+0x7f9cc3e7, 0xe0d55532, 0xab58707f, 0x9c467f07, 0x8c7f2581, 0x60155a41, 0x7f3fd21d, 0x7f7f59a3,
+0x38176d64, 0xf77fd7a6, 0x0ed2ae81, 0x7f81cdec, 0x3c0f81a2, 0x747d9be6, 0x818c5f83, 0x432e7cfb,
+0x4a44b96b, 0xc8748423, 0x6b818181, 0xe34914d7, 0x980b64bb, 0x7fbe165f, 0x7f104bbd, 0x5c7f9d02,
+0x7f307fcc, 0x8399c1a3, 0x7233316c, 0x92aae7a6, 0x81deda79, 0x812805f0, 0x7f566985, 0xdeffbea8,
+0x2bbf427f, 0x7f819e05, 0x90811687, 0x817f81a0, 0xb581c481, 0xa05cfdd4, 0xe4983e52, 0x813e81e7,
+0x2b5ba42c, 0xf75aaf0c, 0x4bbc8181, 0x817fa502, 0x1a7f2d7f, 0xe97f0700, 0x724a5029, 0xe3700308,
+0xae7fb93c, 0x7f9581ba, 0x819d7f3d, 0x2b2ef875, 0x341c52ae, 0x21b23dfc, 0x6a82a2e1, 0xaa81ecc7,
+0xcf817ff6, 0x7fa17fb5, 0x1fc21a81, 0x817f895d, 0x54973cd6, 0x81a8c919, 0x9f4c7f38, 0x89817fd1,
+0x325d7fea, 0x959581c9, 0x711638c8, 0x07bb81c4, 0x1bf0818c, 0x346b81aa, 0x5d55817f, 0x7f7f8192,
+0x3b7f81d5, 0xe783f367, 0x863038b6, 0x7f53589b, 0x7f4de47f, 0x128165ac, 0x7fa6ccfa, 0xc19f8132,
+0xc3b3483e, 0xa63d628e, 0x2d707fd1, 0xd93a1319, 0x9197277f, 0xd77f0fbf, 0x8156da7f, 0x88819a98,
+0x3eb240f2, 0x81007fbe, 0x067fe653, 0xd3aa8150, 0xa625819b, 0x767ab13b, 0x937f817b, 0xd08181e1,
+0xa47f81b9, 0x3481bd4a, 0x65507fa7, 0xb79181d1, 0xbf1d7d3e, 0xb2818178, 0x8f329d1c, 0x2081b481,
+0x7b84a853, 0x7b679ce3, 0x9ba49881, 0x695ab122, 0x23be9081, 0xd7322a4a, 0x21db3fad, 0x81fc8145,
+0x84a1bad2, 0x9f307bb8, 0x81815581, 0xb84f1450, 0x6d3acdb7, 0xfd64811d, 0x7f8132e6, 0xd7458fee,
+0x81c54610, 0x7f7f73d1, 0x81a5c3bf, 0xe15f7fa0, 0x3c7f517f, 0x047f7fd0, 0x261e438d, 0xb3c47f34,
+0x5c81a1f6, 0xa2c62f5a, 0xe67f9255, 0x4df92530, 0x58877578, 0x817fdbd6, 0x9381d867, 0xb3815eec,
+0x3d8b8ad4, 0x814aab55, 0xa5477f7b, 0xed7f98d4, 0xae7f3681, 0x3b938138, 0x58e37f90, 0x7356b00c,
+0x754181fd, 0x3181503e, 0xc58dc451, 0x818b9cbe, 0x747fcbc4, 0x0918d1f1, 0x5b5ae00e, 0x761d6116,
+0x535ba62c, 0x8c0f22b4, 0xc98fb9ad, 0xad7f6d1d, 0x4f7fec7f, 0x1b437f35, 0x9004b258, 0x787c8d15,
+0xd04b81e6, 0x703d10f0, 0x7f7f8b89, 0x1674b61c, 0x9789ac81, 0xac6c7f58, 0x0e81ac48, 0x0881812d,
+0x117f7cc2, 0xa6bd8145, 0x59817f7f, 0x89cbb4fb, 0x697f9a81, 0x813e5281, 0xf57f4898, 0xee994b1d,
+0x60228cc5, 0x4c341db8, 0x7f6e7f63, 0x107f8151, 0x14397f55, 0x81a951d6, 0xb762ed40, 0x81c39dd6,
+0x546a0438, 0x7f8e88d7, 0x81810e7f, 0x7f7f654c, 0x3b412da8, 0x8aabcfe0, 0x4b83444b, 0x65bea3ee,
+0x507fb43f, 0x16c3c7c5, 0xe322a2d9, 0xfd5a0fd9, 0xc757577f, 0x6cd0b9af, 0xc6078100, 0x3256b728,
+0xc47fdc2f, 0x81dc4bb9, 0xd8d02073, 0xc38671f2, 0xbb9104b4, 0x7fb281b6, 0xcb817f81, 0x819f44af,
+0x29f781bc, 0xdfc231b9, 0x7fae7f43, 0x575b7f79, 0xf4c4414e, 0xe807d15c, 0xd08181ae, 0x8e81cd9f,
+0x942472c9, 0x816362dc, 0x9cba9281, 0xdc6fce74, 0x2b7f7f35, 0x37810c4f, 0xe8709e85, 0x5c7f984d,
+0x8153bc24, 0xbfe581bd, 0x9a7f9c84, 0x3be9e533, 0xb6938127, 0x82ca63d5, 0x08eeb19f, 0x59ebeb0f,
+0x4d7f14f7, 0x3c558f40, 0x62d26981, 0x8181f3a8, 0xe42585ea, 0x7f08817f, 0xaf8181a0, 0x0c5d16cd,
+0xa4dfee3d, 0x3a8182fa, 0x6381883a, 0x7fe9d01c, 0x5e659f90, 0x7f7f812f, 0x4a9d8179, 0xb1e4acf3,
+0x1b8189f9, 0xd983a4d8, 0x817f81df, 0xa2cf1f55, 0x817f337f, 0x7fa3564e, 0x14ae7c44, 0x4ca3859d,
+0x81b37fa2, 0xf8a0b7b1, 0x7f79c0cc, 0x7f3010f6, 0xa5be8c16, 0x2420b129, 0x7f7898f1, 0x7e818139,
+0x7fc919eb, 0x61819a67, 0x88928b15, 0x7eade0d3, 0x4e7fc323, 0x8deb5fe6, 0x7f3f7f9c, 0x81817fbf,
+0x989026db, 0xef81c203, 0x81e4a1e1, 0x35939d41, 0xbbaae870, 0x3d217fca, 0xddd9a1ce, 0x7f7f81a3,
+0x5bf18122, 0x81c55a52, 0xc95c450c, 0x7f5a03e6, 0x65654a14, 0x75d401f6, 0xe0cb297f, 0x5f3c8132,
+0xf7a312d3, 0x81c6d3af, 0x978e8181, 0x1476539f, 0x502534be, 0xd2909112, 0x6ad663ad, 0x7f7fbbac,
+0x8b70da23, 0x4d78af31, 0x7f8159f5, 0x81bad147, 0x348151dd, 0x5e68eace, 0xc2737fa0, 0xf97fa32e,
+0x7e7f81de, 0xa68baddb, 0xbb39817f, 0x7f9bc454, 0x6d09c327, 0xc37f3c33, 0x0a865f7f, 0xba8281e1,
+0x1a3ff406, 0x652c3fd1, 0x94af367b, 0xb381d8cb, 0x4045cce5, 0x7f7fd613, 0x795f7f42, 0xb1818193,
+0x7f371d3c, 0xef816b41, 0x2ca91acc, 0x48b5aa83, 0xaae807de, 0x26813f13, 0x81817f2a, 0x6083604f,
+0xd29e81f6, 0x7fb218ca, 0x4aa50170, 0xc2d74a22, 0x4f4971a3, 0xe9dc5f10, 0x7fb8bedf, 0x1f93814a,
+0xa97f7f0e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0=
+0xb5bc6ac8, 0xf5373664, 0x1310345c, 0xd5bae4e7, 0x1fc9e83e, 0xebfdfded, 0x84bd86ab, 0xb7aabe00,
+0x60b44fea, 0xb9067464, 0x30325378, 0xa9195955, 0xf70c6e5c, 0x90922632, 0xc90b1cdb, 0xf2f5fb69,
+0x73056b63, 0x1a33bf3f, 0x17755b5c, 0xc58bff6d, 0x2f4390b2, 0x2869d508, 0xe7c7dfe8, 0x38552963,
+0x21da5367, 0x07282b9b, 0xa4767105, 0x1e294251, 0xe350a940, 0xb8a6aa27, 0xed12d778, 0xf10d9ece,
+0xab93527f, 0xcf2da7e7, 0x68f6d0b1, 0x811f4bca, 0x577b06b2, 0x3234f13e, 0x30bab7df, 0x8dc47655,
+0xbb843bed, 0x86da3aba, 0x30950c97, 0xdd096d7a, 0xa871fd6c, 0x8bee4e6b, 0x8fea30d0, 0x6c05b4d2,
+0xf3e144d3, 0xd24ebb1f, 0x065635e5, 0x8d3f2cf9, 0x536c6c6a, 0xfbb0a5d0, 0x3d707b42, 0xc44d5982,
+0xa5f4ad8f, 0xf32c0970, 0x1bccf1a6, 0x05916020, 0xa64fb176, 0x5ede6a35, 0xaf4966da, 0x9df5e0e7,
+0x75042abc, 0x9ef10481, 0x11ddcbc8, 0xa0f5518c, 0xd5c23418, 0x2393d558, 0xfbe7dfeb, 0xed1c64c2,
+0x86a36508, 0xde2dfb1e, 0xb8d0fef9, 0x24505232, 0xc894e71c, 0xbcc752a0, 0x40b74e83, 0x90d23c8c,
+0x728e4a61, 0x108f0b08, 0x66f522ee, 0xc258d851, 0x35a31c44, 0x11311b5b, 0xfd3d5be9, 0x5ae448ff,
+0x4f64994b, 0x5b8247a9, 0x4021114d, 0x2f0b6e82, 0x5eaa9828, 0x50ac71c0, 0xfb86ee52, 0x0dc1ac9b,
+0xbbd47645, 0x8f357115, 0x978ceea0, 0xd557db99, 0x99b30388, 0xfc9a8a1c, 0x0f75be1a, 0x50143e22,
+0x8840989b, 0x738ec50e, 0xe6b2783d, 0xf67899c8, 0x27ebed69, 0x6c415a16, 0x3a6cc2dc, 0xcd4e4e5d,
+0x6cb12b2e, 0xdb88d7c0, 0x79cd1582, 0xbc422413, 0xe72ad2f4, 0x8eaac30f, 0x0bd86747, 0x6d87f69d,
+0x15d62038, 0x4b375630, 0x0d51b859, 0x16db2cb2, 0xf210603a, 0x0abeb833, 0x55c694d0, 0xe57ca43b,
+0x0ba94428, 0x1398a406, 0xe47d3889, 0x5a20203d, 0x250d7a1a, 0xd930ffec, 0x03992e79, 0xf2759376,
+0x024ec121, 0x91fc3a2c, 0xb7e11cc5, 0x4ff7d459, 0xb8700134, 0xd6e61758, 0x4eba0a32, 0xb747e3ec,
+0x7073fad7, 0xded80f99, 0x331e2f1b, 0xfa1f1bed, 0x056424a2, 0x1d1d95e0, 0x550b9ec8, 0x51ee2a38,
+0x19525153, 0xd70c4cd5, 0x0d6cd7ad, 0xe44d1cf2, 0x30dfecda, 0xdacd7fe8, 0x7321d795, 0xddf48ef4,
+0xe271e6a4, 0x9c1feecb, 0x951fcd7b, 0x8acc5a03, 0x3fb83527, 0xe306de74, 0x7b9cd6ee, 0x8e140885,
+0xd4c91e8d, 0xe8c39733, 0x0f02f87f, 0xfb06b1b9, 0x0dc9349c, 0xf76bae8e, 0x4f642a07, 0x3d48a9aa,
+0xe3ea323a, 0xa1cd5c8a, 0x40aa0e70, 0x132042d3, 0xa9732f6c, 0xd15a00c4, 0x43d3b046, 0x9a51ebd4,
+0xc46ee0ed, 0xe2a2148b, 0xf5c478f0, 0x1fb01cf3, 0xf4f321ec, 0xd973811f, 0x11ad11b9, 0x5c67adda
+
+e =
+34560
+
+k =
+6144
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
index a866878..cfff56a 100644
--- a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
@@ -666,12 +666,15 @@ ext_scale =
 num_maps =
 0
 
+r =
+0
+
 code_block_mode =
 0
 
 op_flags =
 RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN,
-RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
 
 expected_status =
 OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
new file mode 100644
index 0000000..93792dd
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
@@ -0,0 +1,991 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..ab2deb6
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
@@ -0,0 +1,993 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0xD0000000, 0x33CDC8CE, 0x4FAEE4CC, 0xC7DC23C3, 0xC306D6CA, 0x2B360A24, 0xE91C423D,
+0x1F323427, 0x4B1C33B6, 0x3EC9D0E7, 0x39204DD1, 0xCCD73C37, 0xC6F6D8E1, 0x1DF828F3, 0xDEE34025,
+0xC41EC235, 0xD035E1D8, 0x3CC32843, 0x29B60C3C, 0xE92E122E, 0x454BD4C8, 0x35D02543, 0x33E4D0AC,
+0x07AF2228, 0x38C62DD1, 0x233800C5, 0x3CC02DD1, 0x35E73B19, 0xDEBED026, 0x33C5EDD9, 0x33E51527,
+0x1F21EA18, 0xCC3E3BD2, 0x013CC14C, 0x3724D23B, 0x23CDED2D, 0x21424630, 0xC5B0E64D, 0xCFC03BEF,
+0x24294241, 0x46C526BC, 0xD82F334C, 0x1E283DCB, 0x3F3F33C7, 0x4A14D2A1, 0xD92F2AF3, 0xCFA820CC,
+0xDD30C6CB, 0x2B3ACAB7, 0x4AFE29CD, 0x25BD3200, 0x2D293323, 0xD32A3B29, 0x29E64D0C, 0xBE4BFB3C,
+0xB1DD242D, 0x0427F11D, 0x3046CFDA, 0xD633C0D5, 0xC0DDBE01, 0xDA3DD9B4, 0x3BCE3638, 0x23262CC6,
+0x432BD2AE, 0x23A9E1C7, 0x1BE45609, 0x22CD35AA, 0x32D6371F, 0xCE27352A, 0xE2B73F40, 0xC2D0CE2C,
+0xE72E3A3E, 0x2FF52147, 0xEFCF2E33, 0x003103CA, 0xC6C14A33, 0x45CAC0CF, 0x011E1FD3, 0x23D3C72B,
+0x2EB644C4, 0x484BD930, 0x3AC22E1A, 0x1AB6DD42, 0xCEDDE232, 0x3ACCCC31, 0xB830CA2D, 0xC930D2D7,
+0xD0E049BB, 0xE6243524, 0x3EF53914, 0xCB083BE3, 0x411EDBE9, 0x30C3C3E8, 0x3721F5E7, 0xBBDF3FD9,
+0x2AD21F33, 0xEE402858, 0xD3AFD237, 0x3D39401D, 0x30003623, 0x4734DC46, 0x192ACD32, 0x3324CAC2,
+0xD714D4B5, 0xDC2E21D0, 0x2327CDBA, 0x15B739C3, 0x31C9EEB8, 0xFAB5372E, 0xC239B5DA, 0xE628440F,
+0x34D425C6, 0x293BE6FD, 0xBDC04BBC, 0xE0DDB7CF, 0xD627BC34, 0xA5422FCB, 0x13211ABC, 0x1708E51C,
+0xCE33DAD1, 0x51AEC731, 0x2E383824, 0xC722D0D3, 0xCB32292B, 0xCECC402B, 0x1B312EF0, 0x34CF46CA,
+0xE3BD252C, 0x0C21EC36, 0x4ADFECBE, 0xC4D2E62C, 0xADE5BAD3, 0xDDCC1D18, 0x521AC135, 0x3F302D37,
+0x22CE2DCC, 0x262A1BCF, 0x4EE7D7CA, 0xD43D3526, 0x1840E020, 0xC3201F2F, 0x3ACB453E, 0x41EAD5B6,
+0xB6C4CF17, 0x243A55D4, 0xC7501E28, 0x351DCD1C, 0xE3A8D502, 0x3235271C, 0xAC342F00, 0x34B4E3D8,
+0x36473AE4, 0xAE403CEB, 0xBC3FDA3F, 0x552CDBEC, 0xE7C42B5C, 0xE743E13D, 0x18D44650, 0xBA2EDF31,
+0xB5C3EC42, 0x432EBE2E, 0xADDE4F2A, 0x401BCAD6, 0x03D6EAEB, 0xD0DEB133, 0x153FC4D4, 0x30DA2FD3,
+0xEE282FD9, 0x242ADC39, 0xD72B42D9, 0x44C7E0D5, 0xC72CB3C7, 0x27C9472B, 0x0036DFB6, 0xD9C53112,
+0xC0360E0E, 0x4EEA0E27, 0xEDCF27C1, 0x1739D5DC, 0x22DE2CE1, 0xDCCAF633, 0x31D02417, 0xD7DCD0DA,
+0xDE1DE0DC, 0xD827DD22, 0x1CDBD7EC, 0xCE171BCB, 0xEE2347CF, 0xC22C312D, 0xDBCC2A38, 0xBE0ADED4,
+0xDC20CC2D, 0xD5380DB2, 0x2A32C701, 0x3EC7D41E, 0xCDD7D74C, 0xE83E2A44, 0xC12B26E6, 0xE70046D7,
+0xD626D1EC, 0x35DDE41D, 0x303F27BD, 0xC94D4517, 0x31D1E229, 0xAD3529BF, 0x3AC5D21C, 0xCF1DB731,
+0x2738DBEB, 0x1F382B33, 0x1ED52213, 0xFCE22CD2, 0x1330331E, 0x4A30BA0F, 0x1F38B42A, 0x2E34CB1F,
+0xE3E125D5, 0x3AC72D17, 0xBD3C342C, 0x37272810, 0x1D34E4C7, 0xE5CC2EF8, 0x1E2FF1DF, 0xB9294236,
+0x26F10017, 0xBDE3FBD1, 0xB7DB52D0, 0x2E3CB8E9, 0xB3343D3C, 0x3E3BDFDD, 0x1F46393A, 0x25FA20C1,
+0x2D194CD1, 0xE9471D26, 0x34C3242E, 0xAE012034, 0xC8F3FED7, 0xB825362B, 0x322DC136, 0x42F41511,
+0x181855C2, 0x4937D5EB, 0xE13CDC23, 0x08242A28, 0x2DCCDFC0, 0x13CEC64F, 0xB3E6F7ED, 0xD93401EE,
+0x3D02DEE0, 0xCFC52300, 0xD2F1BE38, 0x2D092924, 0x253E2AF0, 0x37DACAD0, 0xDB1ECFE7, 0x40CED84D,
+0x3706C42A, 0x4231D91A, 0xDD30471D, 0xBD272DC8, 0xCB1941D9, 0xC22FC7C5, 0x333F3C0C, 0x3F3D2518,
+0xDDCCD143, 0xB3D834D5, 0xD231BEE4, 0x2BDB3B3D, 0x2F2754E7, 0xEAF3CE64, 0x3632E4C0, 0xD83324C2,
+0x11A4D5CC, 0x00D627D3, 0xD51F2731, 0x17C92BE2, 0x1AD62E1E, 0x16DB2418, 0x16B83823, 0x2711D54B,
+0xDFB02BDF, 0x28CDA600, 0x2AE9ED3E, 0xD314CD20, 0xD04F272D, 0xD0F9CD37, 0xCC1735E5, 0xD328EC37,
+0xA7D31A26, 0x214BD9A5, 0xCFCB4226, 0x233C4AD5, 0x26EF37D8, 0xD83E3230, 0x3EC8C93C, 0x07B9282B,
+0xD1E6DAF2, 0x31C52EDD, 0x3A0038A5, 0x56C1E0DF, 0x22E437C0, 0xDBC8143B, 0xCF1DB03F, 0x1D4BE636,
+0xB8D3C23A, 0xBCC3372E, 0xAF284228, 0xDCE02F1E, 0xB9D4E3D4, 0x56D3D0D8, 0x494816C1, 0xFB1240C3,
+0x23B1BDD2, 0x1236322E, 0xC2CBCB47, 0x102FE7C8, 0xBB0AE1D9, 0x3831BC29, 0x39AECBD9, 0xC7CF1ED2,
+0x0AE43913, 0xDDD62F2C, 0x4FD522E6, 0x3CB90A55, 0x2101C8EC, 0x432604BD, 0x29E3E31E, 0xC25B3C29,
+0x20E927D4, 0xD4300C41, 0xD9AECBD5, 0x48D8E143, 0x2CEE272F, 0xD2C11FBA, 0x2F2DB8D7, 0x1CF4DFE6,
+0xCCDCCEBF, 0xE052D0EA, 0xDADDEB1E, 0xC72ACB3A, 0x332E2B1B, 0x2D26E827, 0x2A29E6A6, 0xE614D6D5,
+0x221D1CC5, 0x51102031, 0x1735C248, 0x31D4DCD5, 0x3C20DC00, 0x2D231732, 0xE54AD9CD, 0x1D24D826,
+0xE936373A, 0x20C0D3C9, 0x2B231520, 0xD6CED133, 0xDFC8C7B5, 0xDC2FE8B8, 0x3332249B, 0xC6E6E11F,
+0xB7DA17AF, 0x1FD91321, 0xEE29CD41, 0xE1262FEF, 0xB6181DC6, 0x24F618C6, 0x3BE5DA2D, 0xFC2C35C8,
+0x51C232CC, 0x36183EDF, 0x2B2CD6EF, 0x2F2DBDB9, 0x00D03413, 0xCDC9CBC4, 0xDB3309CC, 0x264EB22C,
+0xCED1EAC9, 0x38D53F27, 0x2EE7D6F3, 0xC7232C23, 0xCCD42515, 0xC9C8C8E3, 0x231E3930, 0x5BBEDFCA,
+0x34D7E5D7, 0x25CCE9A7, 0xCD4BF1E8, 0x5E2542E6, 0x38DCE43E, 0xDA34F0CA, 0x2EBFF841, 0xDA422D3E,
+0x13CA2231, 0xD5C6DA27, 0xBAC0C6B6, 0xC82C49FF, 0x31312123, 0xBF00DFBF, 0xE8F23819, 0x2C34E81E,
+0xDC4C2B0C, 0x3A5650F2, 0x2CCB0FD0, 0xC42D4C28, 0x4F19DA4B, 0xF63DE630, 0x29F51C1F, 0xD6BE14C4,
+0xD2DDCDD6, 0xE0D02825, 0x2FE0E3D1, 0x41342FE8, 0x25D547ED, 0xC5A732B5, 0x19BD503F, 0x4CD9DA3D,
+0x24D013BF, 0x4FE93FCA, 0x12DBE8B9, 0x33DF151F, 0x1E24AECD, 0x2E2E3656, 0x133500AD, 0x3641403C,
+0xBDDF2BD4, 0xE33130E0, 0x3DC02726, 0x18390C3C, 0x26C04DC9, 0xDBF22D35, 0xC3E1EC45, 0xCED12623,
+0x1CE92E39, 0xCF2FD222, 0xD8DE31E6, 0x1EE916D1, 0x35DCB621, 0x19C2EB54, 0x41B34ED4, 0xD9373BDF,
+0x203ED6D8, 0x2CD4A8C8, 0x14E0C6C6, 0xDF242131, 0xCDD921CF, 0x33AACBCC, 0x2AD1A5C6, 0x3ED42B00,
+0xBF181FD0, 0xC0CC2329, 0x1BD1EDC9, 0x3A2D47CB, 0xDD27D8CB, 0xD8E8BAE6, 0xD5DE3FF5, 0x2C30D641,
+0xDCDCDF26, 0xC2C34433, 0x2837F53D, 0x29D8E12D, 0xBF3FEBD0, 0x34CACC45, 0x30E1DA21, 0x39DDDCB3,
+0x30193518, 0xC0132E19, 0x313D3736, 0xB2D4FF34, 0xF4D92945, 0xC70D3AEA, 0x3E3034F0, 0x00DA2F07,
+0x1DD415EB, 0xCC1AC4B2, 0x232EB21C, 0xD7431E16, 0x2FCE0835, 0xCF39242C, 0x1BCA2CD4, 0xD8B6D0FA,
+0x18C3262F, 0x2CE3BDCB, 0xD839DC38, 0x26161D24, 0x1223B3DC, 0xD6D63515, 0xCFBABFC6, 0xC1BF18C7,
+0x2637C715, 0x264020EA, 0xD024D3C4, 0x4126A11D, 0x2E34442D, 0x32BB1CC9, 0x36E7DD40, 0x3113C3C5,
+0xD100C8CE, 0xD21651E8, 0xC3CFCDD9, 0x403139F1, 0xD3D02119, 0x32171AC8, 0xD2F9B62E, 0xB5B335D4,
+0xC1462835, 0x1F1C2C35, 0xD8DDBF35, 0x422D2DDA, 0x38ED19D7, 0x3326BD2F, 0x4534DFCE, 0x46403132,
+0x19CDD51E, 0xCBC3CBC0, 0xE3CF2139, 0xC646ECD8, 0x29E7C7DD, 0xE94CCAF8, 0xB8C6EA37, 0xEC2B09DA,
+0xC8C82738, 0xC6CCDDFB, 0x3FCA3B4D, 0xC6482BD1, 0x2DE1D333, 0x3530BB3A, 0xBF4838EA, 0xE4411ACB,
+0x3514D939, 0xCD372B27, 0x4BEC1C39, 0xAB21C221, 0xD8D83F37, 0xCCE0512D, 0xDA4640C2, 0x36AE1CD6,
+0xBC2F303B, 0x20C3B8CD, 0xBFE6D4E0, 0xBECCC4EB, 0xC7CC1E4E, 0xCC2BD03C, 0x3738C518, 0x23B824CC,
+0x2BECD0BC, 0x2107B945, 0x2AC21B00, 0xBE49F2EB, 0x31D2E3DC, 0xDAD23F11, 0xCDED3137, 0x3ABADA3A,
+0xD9C0C12C, 0x36CEE8CF, 0xD0D5BDD3, 0x2AC9CFCC, 0xE61FD747, 0xC7B7B12A, 0x2BD520DF, 0xD5BC1D31,
+0xE6D8423B, 0xCC21EB43, 0x1F46292D, 0x171EE038, 0xDFA5E244, 0x1BD5C4AD, 0xC622C2B5, 0x4E33CFD3,
+0x3F263F30, 0x34E4CF15, 0x0041CC36, 0x4021DB29, 0xD62E2231, 0x2C22AE21, 0x1A201F44, 0xC6D7C100,
+0x3A335125, 0x42473A2A, 0xDF32DA1F, 0xE5D8B51F, 0x3049E832, 0xE6DED531, 0x315DD01E, 0xDDD92034,
+0x2EBF0AEB, 0x4B4639DD, 0xBED6C8DA, 0xDABA3714, 0xDD133BD7, 0xC934EACF, 0x0D35C3E2, 0xB4CCC213,
+0x37EE202B, 0x0AD21AD9, 0x28D2C9CD, 0xD800DB2D, 0xD34B274A, 0xBDD33644, 0x38EFF1CC, 0xBDABD734,
+0xB11E3E32, 0x2F1C23DC, 0xE80BD7DE, 0xDBE7D6F7, 0x240248BF, 0x23CEF1F6, 0x1F56E634, 0x33CD2230,
+0xB4DB182F, 0xD338BA36, 0x33392B24, 0xBB3B3649, 0x282F30E7, 0x45CC35B1, 0x46261B30, 0x1FD9A722,
+0x3BE3E1C3, 0x25334FF0, 0xB8BB28C0, 0xD751E2CC, 0x403600E1, 0x461FC3ED, 0xCB30C202, 0xD8D2B92A,
+0x2923D71B, 0xB9DDE6CC, 0xB935CB0A, 0xEF37D723, 0xD1DA06CD, 0x303CE928, 0xF8B9BA27, 0x37370A1F,
+0xD6C1DDD9, 0x18B6463F, 0x28C71FC3, 0x38D8B53A, 0xD22DE9A1, 0x18DDB236, 0x0A28D515, 0x363B263D,
+0x1F3A122D, 0x202AE323, 0xC72337E8, 0x32ED08CC, 0x2658C347, 0xC6F4E200, 0x45D1C2C3, 0xF92D343A,
+0x3EBE1E65, 0x10EB2FD3, 0xC64FD5E5, 0xC5D3F521, 0xE9CA1A37, 0xD736CDD6, 0xDCC7C233, 0xC9C8E2D4,
+0x2B99D60A, 0x1EE3DA0D, 0x30BDD8E1, 0x16D3BE1F, 0x1C4524D4, 0xC8D5D432, 0x19AEDA3D, 0xCDD4CAD5,
+0xD835332E, 0x2412DA1B, 0xD0CBEBD7, 0xC3CEF425, 0xD1D743E3, 0x000A163B, 0x23DC3129, 0x202332D1,
+0x322F2216, 0x28F5131A, 0xD316CF0D, 0xD0344C30, 0x423325D7, 0x37204237, 0xEEDDC721, 0x2038E805,
+0xD525C522, 0xBEDDE327, 0x3AC8BCC5, 0x45402E27, 0x34DFC1D9, 0x2DB0D049, 0x322F2ACF, 0xDB3AC3C5,
+0xD8D0EB4F, 0x2A1DCCCC, 0xD0D33DC2, 0x1349DC45, 0x39CBBC32, 0x30301EBF, 0x2C00DFC0, 0x5DD0CA11,
+0xD0220C3A, 0xC527CD1A, 0x31CD372C, 0x2E0ED7DC, 0xC6F92338, 0xF537E8D0, 0x3626DBBF, 0xC9C3C6C3,
+0x30DDBE17, 0x50394C39, 0x3A11343B, 0x27E8DC2E, 0x0DDB303F, 0x1818BCF0, 0xC5DC17DB, 0x24C53A26,
+0xECB0E7E2, 0xC21B1928, 0x15D7C920, 0x4126AACE, 0xE214D8C7, 0xD40BCD42, 0xB2CBD018, 0x554436DB,
+0x3C2D25D9, 0x21CEC0DC, 0xE9251919, 0xE41ACDC3, 0xDECF67C3, 0xEDDE3225, 0xCA30EEDD, 0xCFE01E37,
+0xD231BF41, 0x34DF1EBD, 0x1DD2CC2C, 0x21142E29, 0xEA322B37, 0xCEC311DE, 0xF0F738DD, 0xEBED1A40,
+0xDCE640E8, 0xD0D1BA2B, 0xE906D6DB, 0xC71938B1, 0x13C59F39, 0x1ED6DBB6, 0x231BD3A9, 0x2C2B30DC,
+0x0ED50000, 0x2DD4EED6, 0xD9D21BEE, 0xE1442E36, 0x38CEC4AE, 0xC626CCF4, 0xC2CD3F36, 0xD71F2BD9,
+0x2F421837, 0x31B11A23, 0xD4D5282D, 0xD0E6BED7, 0x30D737CB, 0xC8142A09, 0xD8D2CFDC, 0xC22D3C44,
+0xF62DF1C9, 0x3D38DBC9, 0xBFC2E5D3, 0xDCE42128, 0x3A304038, 0xDBE6D626, 0x28250FE0, 0x27B52BCF,
+0xE0D8DC3C, 0xC8DA09DA, 0x2DF02FD4, 0xE539D7D1, 0xCDE729C2, 0x4816E313, 0x4E392AC5, 0x112CF50F,
+0x3AD94924, 0x4B22273A, 0x43D2DE9E, 0xDA22DE30, 0x3FE324DB, 0xD9CC2811, 0x29D253D4, 0xE2BC353C,
+0x0CC92147, 0xB8F0C6F5, 0x3D35DEBF, 0xED4ACBEB, 0xAC34E532, 0xEA2AC526, 0xEAC0BFC8, 0x4431D9DD,
+0xC0CE4E21, 0x0000F2DD, 0xE0D8C7BA, 0xDDDC2E36, 0xDA42C22B, 0x2B312614, 0xDC391EF4, 0xCC2E31D8,
+0x3DF4D630, 0xC72C21D9, 0xDB2BD531, 0xD916DB3C, 0xBEC11DD2, 0xD1D5CEA4, 0xBA072ED7, 0x402F2829,
+0xE3C0F627, 0xC7CC3CBD, 0xF41D3345, 0xD706DB14, 0xB2DF36AC, 0xEBC4551F, 0x32B01929, 0xC5B6DDEC,
+0xD91DE130, 0xE1213222, 0x4126D927, 0xAF52300D, 0x291B301C, 0x241A1843, 0xE43C1FDC, 0xBBCC191C,
+0x2C25E011, 0xBD3EE9DB, 0xC9BF1345, 0x2F333AD2, 0x1CD822DB, 0x23BE43EA, 0x2527EADC, 0xB52E1C1E,
+0x391CCF17, 0xD2C82C0C, 0x242E3830, 0xD328D808, 0x35CEF4CD, 0xD81BE035, 0xD0DF38DA, 0xD1D3C42E,
+0x3A2C1EEA, 0xC6D03AD2, 0x1E362E4E, 0xE6080000, 0xD018C312, 0xEFAA323B, 0xD1294BD2, 0xBAD52C3B,
+0xE0373E10, 0x260CDDE2, 0xC902E040, 0x30472BD5, 0x534BE7D2, 0x20CCB523, 0x21CCD843, 0x2259E24E,
+0xDE35FDD1, 0xD4D91D3E, 0xCFCA11D5, 0x35D724BD, 0x3C3F0CB8, 0x3EC447CB, 0xE835DDC4, 0xC3C73E31,
+0xDD432B2F, 0x2FDCBDC2, 0x2D3CCE17, 0x25B8AB31, 0x2ACCFFE5, 0x40E03C2B, 0xE7DA1841, 0x17E53020,
+0xD44E0B2F, 0x46DA22EC, 0x33422425, 0x211840C5, 0x23C1CFD5, 0xC8350BE5, 0xD833CDD0, 0xE63DC528,
+0x292ADC17, 0xD8BCD3C1, 0xCD39F02E, 0xA71EC343, 0xD6CC3A3E, 0x2E12D2CF, 0xC40B1FB1, 0x37DCDC33,
+0x20E52EEA, 0x271629E5, 0xC4BEE0C2, 0x1B3CDBD6, 0x00004934, 0x18E145C7, 0x4BE93522, 0x3029C309,
+0x31D1D50F, 0x3DB42C1A, 0x21A643B2, 0x3E26D8C2, 0xCDDE28D1, 0x44E835E1, 0xEDC4DED1, 0xC4F9C9ED,
+0xC5E1BBCC, 0x4426C1D4, 0xD9BB372B, 0x37232E0D, 0xE5D0D0AE, 0xC9D23CC5, 0xF638E2C7, 0x2DB6E6D9,
+0xC0C9B72D, 0xDF28E6D0, 0x11E2DCC8, 0xD8E2F31C, 0xEA3937DE, 0x2741B953, 0x19D5CEE6, 0x33DDC22D,
+0x2BF72326, 0x2143363C, 0x13CA1A1F, 0xB9D7DAC9, 0x22C6B72E, 0xC5DA2631, 0xCB32ECCF, 0x032D15D4,
+0xBB1EE613, 0x38C42452, 0xDBCD2726, 0x1AF44039, 0x22CF2EC6, 0xCAEDE6B4, 0x2823D423, 0xDCC61C39,
+0xC12D19BF, 0xC612C31B, 0x31F1D32D, 0x3E1C09E4, 0xD824C5E7, 0xDFFC2839, 0x2AD40000, 0xDFCCBBBC,
+0x3FC9CC12, 0xEF2626E1, 0x0FCDEA2A, 0xEBD735CF, 0x4E1A2834, 0xCDEDE1D5, 0x31CCCD29, 0x2F4618DF,
+0x48C11936, 0x29DADE41, 0xD71C1AE0, 0xDDD2285A, 0xB13DCDC8, 0xF020B8DB, 0xD0B837C2, 0xDC3B48E8,
+0x18C3C530, 0x192C2940, 0x2ADA3AE4, 0xEA34C55A, 0xDAB2BED4, 0x1A51E838, 0xC832AEBE, 0x10DE2DE2,
+0x3B2408CC, 0x22CEBD1E, 0xC919D6BE, 0x21D2D128, 0xCFE03A2A, 0xB7DEDC3B, 0x33C630ED, 0x5A0EEAD1,
+0x3CB03FCE, 0x24EC15E4, 0xD0385BBF, 0x20CB4E4B, 0x30E0C535, 0x301BCD3C, 0x3642DDD3, 0xD90FDC50,
+0xCA35BBCC, 0x393B3B2F, 0xE2BE352D, 0x362BE3BF, 0x1922B73D, 0xDE3448BD, 0xF7C0C02D, 0x00002F43,
+0x2FCAD0E4, 0xDE412A34, 0xFBF339DA, 0x2BB94330, 0x39B521D5, 0x2DE31F43, 0x382C4F23, 0x35314C2D,
+0x2DE3DBDC, 0x3A18EAB9, 0xD0DF131C, 0x45EA41E0, 0x48BBC1BF, 0x2220D7E4, 0x29C8D0C5, 0x3C0527CA,
+0xC1ED061C, 0xCB48CA3E, 0xE846E633, 0x0EB2D7CF, 0x44C42335, 0x27F0D440, 0x332FD847, 0xD72F2CE3,
+0xD7ECD6C9, 0x4026D51F, 0xD334BEE6, 0xE01B40C5, 0xD62BDA2F, 0xDEEA36AF, 0xABD039C7, 0x2E123FCE,
+0xFD3924A8, 0xD0C6D529, 0xD52AEED4, 0x211D2A35, 0x1EE9C5F1, 0xCECAF921, 0x38C92740, 0x3E4E2A1A,
+0xB8FAC7C3, 0xF11F1C36, 0xD4DA163A, 0x2701DC38, 0x0E3019D5, 0x57DB23E1, 0x43CD26D0, 0xADCC4934,
+0xE0D3D706, 0x403A0000, 0xDECED5E1, 0xDAE6CF1D, 0xD5E33C40, 0x35B3D038, 0x24D73231, 0x2EC01D40,
+0xC2D23CDC, 0x44C20BC6, 0x44C1D7A8, 0xE9D1C745, 0x36E5C2C6, 0xB81B2D42, 0x413917CC, 0xD8E031BA,
+0xCE3CC1C4, 0x3EC91AC5, 0x0DE406CE, 0x35D1DA27, 0xC8E5CAE3, 0x313EC127, 0xB61631CA, 0xD73B3444,
+0xD834C850, 0x37D31DE2, 0xCCC9153D, 0xBF41E9CA, 0xD649F9DC, 0x3A31D501, 0x50CD1DE3, 0xC8E54012,
+0x4432D4D5, 0xCBB93023, 0xE8FCD6C2, 0xCEE0CAD1, 0xE41B2E39, 0x28CC0E40, 0xDFEAEFFD, 0xB3EA2723,
+0x3534B935, 0x42D12A09, 0xED3DCA0A, 0x263C352B, 0xAD224EDF, 0x2CDF2A10, 0xF0BE4CAD, 0xBD45D8D5,
+0x263F27D4, 0xE2372FB4, 0xC35240DF, 0x1EF3DCDA, 0x3AD0D224, 0x27DAD527, 0x303A2CBE, 0xCDDCC829,
+0xE22B35C9, 0xD5DC222F, 0xEEBDCB63, 0x2042DAD8, 0x06CC3524, 0xD11BBB3E, 0xAE2229E6, 0x1FC81E1F,
+0xEF4B12DA, 0xE1D846DD, 0xBA3B1CDA, 0xE154C801, 0xD6092CD2, 0xD0F132CB, 0x3A40D027, 0x123530BB,
+0x1EC5B4DC, 0xD11825CB, 0xC603DECC, 0x28BCC5ED, 0x2C03E1CD, 0xE9AA12A5, 0xDB2DD53A, 0xCA32D01E,
+0x2F4A09C5, 0xFE411E26, 0x1354CEC8, 0x3736C5F4, 0xC62F3C3B, 0x252DDFB9, 0xD0353723, 0xD8DDC21E,
+0xE3DF21ED, 0xDAE33AC0, 0x2ADA323E, 0xDC43E1D9, 0x3A23463E, 0xD71934F8, 0xDB1037C8, 0x38B7BCCC,
+0xDA2C1CC1, 0x3EEEE349, 0x2ACB2A26, 0xD4BCBCD8, 0x4AB50000, 0x9EC941D8, 0x3824C9D0, 0x203CCD36,
+0x0DCDEDD8, 0x5B333036, 0x3125C7DD, 0xD7383F30, 0xD6C72617, 0xE1C245DD, 0xBDD3E818, 0x3210422F,
+0xD00ECF2E, 0x44411A3A, 0x02E72E22, 0xF106D24C, 0xCFC847CF, 0x0421AFCF, 0xD2C525A9, 0x3CBCE63A,
+0xE02A1E36, 0xE036E3E4, 0xDDC22B25, 0x2EC7452E, 0xE1E3EFE3, 0xD82ED6CE, 0x36C1E115, 0xD129E026,
+0x251E1C44, 0xE8E5D7CA, 0xDDE7D40F, 0xC5D8D9D8, 0xA1C52550, 0x3ACDDA25, 0x3548C4E1, 0x2913D9C8,
+0x1E28243A, 0xCA3324E2, 0xD0D7D1C0, 0xBDE9D0C4, 0x35BF4FE0, 0xCA42E33C, 0xBBFA33DA, 0xD753C9CD,
+0xDA2CE11D, 0xD9BEE407, 0xE31DD4C1, 0xCBCCD51B, 0x3BB8D6C9, 0x0000DDDD, 0x28D3CDDC, 0xD62445B5,
+0xB3211F13, 0xD7B9BF29, 0xD429D5E5, 0xB9C23CCE, 0xC219EDC1, 0x211E0B34, 0xB8F0E1C1, 0x33C0EF4C,
+0xD8D6C7D0, 0x30E8D3D8, 0xB06514D1, 0x21B9D915, 0xE2323DCD, 0xDA41311F, 0xE24AB11F, 0xE9B92BE7,
+0x33EA23C3, 0x04C430C0, 0xE849EF0D, 0xD1232C2C, 0x260FD13E, 0x002DCBDD, 0xEB3129E2, 0x20B4C7C6,
+0x25D32335, 0x2CCB39D0, 0xEA13DAC6, 0xCDEE2E14, 0xCDAA2CD0, 0xE1D339E6, 0x36DCD03B, 0xF5453114,
+0x34D428ED, 0xEAEDF458, 0xD226CC2D, 0xEDD03AD8, 0xEE1CC83D, 0x10DBB5E5, 0xF018CBDB, 0x5E33E31E,
+0xC6D9232B, 0x1A373130, 0xDFE7DDCB, 0xB21FC5C6, 0xC1CDB1B7, 0x3F2DF128, 0x482BB426, 0x323E0000,
+0xF5D43741, 0xCC1C1FB9, 0x00004E2E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+input1 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x13000000, 0xC9112F26, 0xE3DF1FED, 0x284020CF, 0xC6ED13CA, 0x38B1E217, 0xD90FE8DB,
+0xD7C0C3B7, 0x341336CE, 0x45E2D239, 0x3E22F0D8, 0x461D2C29, 0x3825D628, 0xD733E5F1, 0xD7B6C532,
+0xC62B28C7, 0xD0BF3024, 0xF0BA3A26, 0x2D1D2836, 0x1BCF2DDE, 0xD02B251A, 0xB938CD2C, 0x34E220D9,
+0xC2BEC23B, 0xCC2908CD, 0x1D080039, 0x42BB25C5, 0x32EB3206, 0x36D3D1E0, 0xC32E10C3, 0x243B13E6,
+0xC02A1FF0, 0xC325D6DD, 0x23E33D2C, 0xDCD7DED5, 0x9C23C21D, 0x32E62056, 0x06314421, 0xE9E4ED24,
+0xC0C9C233, 0x44BE3FDD, 0xD25134E5, 0x292EE2E7, 0x4EE0D1DF, 0x29C82E3A, 0xF5392A22, 0x4BE2D133,
+0x58C2C4C8, 0xD2212920, 0x2935D4DB, 0xDECF4400, 0x31D7CCC9, 0x12DCFB2D, 0x2B2F0723, 0x2DE7B54E,
+0x2AD24ADA, 0x261E2931, 0xD538CEDF, 0xE12A1C2C, 0x33DDEDE9, 0x2FFC36C4, 0xE61823CE, 0xC225E1DF,
+0xC2102FEF, 0xCFD22617, 0x3EFBDA37, 0xDAD6BCD8, 0x110623E7, 0x3320E2D1, 0x1932B8D5, 0xCCEBBFC9,
+0x47234011, 0x0A2B45D8, 0x25C11244, 0x00EF3221, 0xC634CC38, 0x0F34D0E6, 0x1A3F40EA, 0x2DEDC82D,
+0xFFD2C8BD, 0x40E321CD, 0x24441BD3, 0xD932EDDD, 0x48362127, 0x1230EADE, 0x39E632F9, 0xD0D451DC,
+0x18DD2DC0, 0xC22AC72E, 0xD71E172E, 0xAFDED12B, 0x1DBAA948, 0xF927B647, 0xD7C31C23, 0x3328E73B,
+0xDBD72DD9, 0x3E23D424, 0xCB09E025, 0x16BA21CF, 0xDD00B9CB, 0x29E3CAD7, 0x3A19D011, 0xEA0EC4E0,
+0xD51CDDBF, 0x2AD1C640, 0x2CD6CBD3, 0x36D6D43C, 0xA72851C2, 0xE7EE3C3F, 0x432A4721, 0x46C726E5,
+0x253FD426, 0xD03B2C27, 0x1AEC343B, 0x5A2BC735, 0xCE31D2D2, 0xCFEDF30D, 0x492B4141, 0x20DC1BAD,
+0xDAF81CD9, 0xD6EAD21D, 0x2339CD25, 0xA31546BB, 0xD0C0F63F, 0x382BE719, 0xDA34BFDB, 0x1EDBBADF,
+0x5151E646, 0xC164D5E2, 0xD8292FCA, 0x33CF1F3B, 0x3FF531F4, 0xD3EB3453, 0xD433E236, 0x1B102B1C,
+0xC6C320E8, 0xD8393C2E, 0x17EAB7EB, 0xE0C42CE5, 0x313720CC, 0x3F39C42D, 0x33374AD5, 0xCE1ED41E,
+0xF7D2BE0D, 0xF114311E, 0xE22CD6EB, 0x4E23CA2A, 0xCDCF36D3, 0x463B1EC4, 0x312DE400, 0x1A1219CE,
+0x0CD1E2C3, 0x3850CBEA, 0x31D7CCCD, 0x3F2D3936, 0xC518E33E, 0xC31F31B7, 0xC0AED6C9, 0x2AC6E5D9,
+0xC334B8BF, 0x35EFD72E, 0xD72B3AD8, 0x31073AD7, 0x25E22D38, 0xF0CD4A64, 0x28DFDB2D, 0x22D9E714,
+0xB8E43935, 0x35FCBFEC, 0x1DC1391E, 0xD6E731A5, 0xBBC8B837, 0xBD3FBE3A, 0x00BADC53, 0x28C43F33,
+0x1CE0BAC2, 0xE0E125D9, 0x3BD6CB3D, 0x313230BE, 0xC4243D34, 0x1F24D2B1, 0x2058384C, 0x2AE9192D,
+0x302CCCEE, 0xD435C4C7, 0xB0D53217, 0xE52D32D9, 0xE0AF2127, 0x3E47D0CA, 0x4112BFCA, 0x27D0D0BD,
+0xE81E5CF9, 0xD50CBCE5, 0x2DC9B4F7, 0x3FBA33BC, 0xCBCC2821, 0xDFD51326, 0xD20ADA3A, 0x2000C3BB,
+0xC4DC4BE5, 0xCD39D7A7, 0xC40FF54F, 0xCC3BD1CC, 0x2C19EACC, 0xCD2E2129, 0x44D9F0DB, 0x2B40E11C,
+0x31343F4C, 0x0E142817, 0xD0104135, 0xE304CAC7, 0x259A1FD4, 0xC3EAED3C, 0x1A311AD7, 0xD8242BEE,
+0x20BF4EFD, 0x3FCA16C5, 0xDDEED03A, 0x0A22C52E, 0xD53B2D3A, 0xE22A2CB5, 0x291D3228, 0x2CCC2E45,
+0x48BA00D5, 0x4FE12D1D, 0xD8D91DD1, 0xCEDBEC31, 0xFBD526B9, 0x3C1DE845, 0xAFDCE91C, 0xD622D31E,
+0xCF2620D9, 0x28D63427, 0x362C3DDF, 0xD72C2530, 0xD6A7C203, 0x442C3233, 0x29B24E3F, 0xDD21412C,
+0x400BD6D0, 0xC8D4B831, 0x171EF12A, 0x34FFC9D0, 0x3B3ED02D, 0x0BC7E2CB, 0xC43D28C6, 0x42F6C948,
+0xD24AD429, 0xCB2C2A00, 0x43E2A236, 0xBC353312, 0xD91324B5, 0x30B4D013, 0xC92FDE2F, 0xBFD6D432,
+0xC82DCABC, 0xC032DC1D, 0x30C9D2CB, 0xE0341DC5, 0xDDCEBE39, 0x2CC41D58, 0xE213BF14, 0xDFCDCBD9,
+0x2E3C36DD, 0xE5262833, 0xF841291D, 0x15E324F5, 0x0315D732, 0xD1C5C5CA, 0xD73144D3, 0x2ABEBA1A,
+0xBCF42E2C, 0x00E1E53B, 0x4423AD2C, 0xB021CF20, 0xD8D5EEB6, 0xBD35BCCD, 0xE6D85334, 0xD549DF2D,
+0x35C74D19, 0x3F4BBE3D, 0x1F3FA3EB, 0xCEB2B335, 0x35D0BCBA, 0xD5D8CF27, 0xB11DCFC4, 0x24D3D408,
+0x183B35D0, 0x1C14D619, 0x35D445BB, 0xDE452444, 0xC83315C5, 0x3F2122D0, 0xB623C737, 0x33321DD0,
+0xD6DF33DE, 0xDE39AA20, 0xCF00F239, 0x412410D5, 0xC5DC2339, 0x1D3BD1B6, 0xC0E3481E, 0x1030451A,
+0x30EA30D1, 0xC6DCB9C7, 0x2C36DC17, 0xCBB0ED30, 0x26C20FBE, 0x35D6D528, 0xD6CC2242, 0xEDE4241E,
+0xC036DED9, 0x26303627, 0xB6B6371B, 0x26E3D6DF, 0x0D36C729, 0xBEEE4FD7, 0xE3C839D1, 0xC0313031,
+0xAEAD2828, 0x36323D23, 0x13342728, 0x2904EE20, 0x261DDCD6, 0x0CBCE1E1, 0xD2CBD5C3, 0xFD1C4B2C,
+0x1CD8CDDB, 0xD4BE53B1, 0x2BD6CDDE, 0xC61A01E1, 0x3D41BED3, 0xE0333BD0, 0x4040E821, 0xC4A32449,
+0xD3D3A8BF, 0x36E11C2C, 0x3CC1321B, 0xC5D03E1C, 0xB813D9DD, 0xD6C51838, 0xCEBED141, 0x1FEA3813,
+0x3611CAC0, 0xD12EE2C6, 0xE1BFD22D, 0xD0DAE9CC, 0x0E03DB00, 0xBC37393F, 0x422BC916, 0x49C4D72A,
+0xBFC0243B, 0xC1C2F1C3, 0xDF36CC32, 0x49E53EE4, 0xBFC02CDF, 0x2BEE2BE1, 0xC23224C5, 0xD63F16DA,
+0x15DBC21F, 0x49E4CC57, 0xBE272CC7, 0x274E0643, 0x5C1DDBE7, 0x34B73DF0, 0xCD2D2EB9, 0x1AD43BCD,
+0xFD3047D3, 0xDAC53936, 0x1328DCC8, 0xBC32331D, 0x001F2634, 0xC845410F, 0xDBDB1C2B, 0xD1D819D0,
+0xEBDDE12D, 0x37E335D7, 0xCDA84635, 0x0F362FBE, 0x30C229C4, 0xBC1DC43E, 0x3CD02F3D, 0x2EF5F5F4,
+0x462D15E6, 0x362F1FC5, 0xC0C9CD49, 0x14C92639, 0x2BD135D0, 0x49C6B8DA, 0xDBC7E1D9, 0xC6382328,
+0xEDC217BC, 0xE4D1331C, 0xDCC741CF, 0x283A341C, 0x38B93420, 0x46001BE7, 0x3E1030C4, 0x42A8C1CD,
+0xBB3339C5, 0xE538DD20, 0xDF3F2602, 0xE52BE5C1, 0xBE2B41BA, 0x3BD4D337, 0x2D39C3DB, 0xC3BB36F0,
+0xD12CCF17, 0x4130B93A, 0xE31DEAEC, 0xF9DEF52D, 0xADD35231, 0xD62ED0EF, 0xBE303521, 0x1E2ADB41,
+0x310AC62F, 0x22DA2DC5, 0x26E1D9D0, 0x1F4D2AC1, 0xC8E6DCE1, 0xC6B3D62E, 0xD6D20019, 0x4EDC2D39,
+0x342AE224, 0x07CBD4CB, 0xE43FB3BE, 0x1BE53748, 0xDD44C8A2, 0xBC34B7BA, 0xA1DD1D43, 0x23D31827,
+0x3519E93F, 0xC83B3720, 0x1BF0B72A, 0xEAC7DCC0, 0xCA4B28EC, 0xD54D242F, 0xF35435D1, 0x3DDEC824,
+0xC31128CE, 0x0B0FD136, 0x442D1E2B, 0xCBD1C3EC, 0xD635341B, 0xDD1F2931, 0x3442CDD0, 0xDADD3600,
+0xC31E40E3, 0xB0BD1B22, 0x38CA1F0D, 0xD42D3043, 0xE65127E4, 0x2F15C9D6, 0x3E360B30, 0xB2CB1524,
+0xC7BBC4DF, 0x38D244C7, 0x483B31C0, 0xDB43C8D1, 0x43DCDBBC, 0xDCC7571D, 0x24BAC2C6, 0x3B4ED6DC,
+0x3AE03245, 0x0C40E1E2, 0x493724C0, 0xD4ECC537, 0x36CC30BA, 0x1C303FC6, 0xD12F27D5, 0x00C4272F,
+0xFFFD061D, 0xC2D9251D, 0xC1D7D625, 0xBFCD3AD3, 0xB42E11D4, 0xC7230E1E, 0x24CD2C21, 0x0BD436F9,
+0xCECCD331, 0xE6BDE0D5, 0xD2C6C941, 0xE1D1D3EF, 0xEB4123CD, 0xDA1755E5, 0xCEE4C529, 0xDC43C5D1,
+0xD8FDDFEA, 0x1AC9C317, 0x22E13DCE, 0x01D7BA29, 0x1551E449, 0x43CD363E, 0xC6281B24, 0xCBD23725,
+0x3200D61C, 0x35D6CCBC, 0x262CB22C, 0xE2E43DB1, 0x26493335, 0x3AD72ACA, 0xC4244430, 0x3AD7C9C3,
+0xC91ED8D1, 0x40EAD2AC, 0x38C9CDAC, 0x413BC137, 0xCD304B1F, 0xEFCA2323, 0xAC3FE4CD, 0x3616F6E0,
+0x41C2272A, 0xDCD7B2E2, 0x27D9E018, 0xDEE2D943, 0xD5C01F22, 0xB0D93540, 0xB411C13D, 0xDE39CBE0,
+0xE2C6F126, 0x31450828, 0xD2BC2927, 0xBACA1DD1, 0x34DDCDC3, 0xD8302AD5, 0xE2D02824, 0x0B2BE03E,
+0x3BCAFD2C, 0x2E461D45, 0xBBF6F32E, 0x31E5DED2, 0x2ED4E847, 0x3BDDCD29, 0x231331D8, 0xF521CF2E,
+0xD024C718, 0x20D91011, 0xDB1E0F34, 0xD931C0BB, 0xBB310837, 0x29B7C5CB, 0x3B31DEE0, 0x0836B926,
+0x28CB1FD4, 0x31072A30, 0xEE41F300, 0x35CB501E, 0x603A2B47, 0x2C2739CE, 0xC0CFC4D9, 0xE0CED43C,
+0x22BDC9CA, 0xBAEC122D, 0x4D16F2C5, 0xB6E5C3DA, 0x19D5C9D0, 0x1D1DDFC2, 0x223A23FB, 0xCD382B09,
+0x3025C2E6, 0x3918BDD5, 0x33DFEF0E, 0x291A302B, 0x14184930, 0xD414D233, 0x473CCED7, 0xD2D318B7,
+0x3E2738D2, 0x2928D537, 0x002E14BB, 0xE2E03734, 0x1B1EDFD1, 0xCF483FD8, 0x3D043844, 0xD52E1C4C,
+0x2823EAD6, 0x1F2D241A, 0xBC4B22E6, 0x2EE7DFB8, 0x3424E2F0, 0xD41BD7CB, 0x2BBCDF1E, 0x155B5033,
+0xB527D543, 0xE3C5E9F4, 0xD9B5C92B, 0xD3CAE0DF, 0x31C4CED7, 0x0BD33B25, 0xCF3B111D, 0xE62F241F,
+0x22D93D22, 0xCF27EF43, 0xDAD2C5DD, 0xC60019BE, 0x2935D5C3, 0x2D0BCD22, 0x224714EA, 0xE7CAB817,
+0xD1282222, 0x3C25EBD0, 0x45F0A8DC, 0x3ACFB92D, 0x34B4E7E6, 0xE93523E0, 0x2C292FCA, 0x44D4C7AC,
+0xEA22C3FE, 0xEF37E524, 0x313ADCDA, 0x2212D846, 0x1BE0FF4B, 0x1CBC2E34, 0x174AF041, 0xD245223E,
+0xE1DB2BDC, 0xF2E9A515, 0xE3C33BCC, 0x43DBD5CE, 0xF11700DB, 0xDE44DD36, 0x26E1D604, 0xC2ACE419,
+0xB9D8C7D4, 0x37EFE21E, 0xE2BAC2D1, 0x3926E91A, 0xD013E8BC, 0x2C43ECD9, 0x232B30F8, 0xD6C9E0BD,
+0x26A718BC, 0xEFF6C840, 0xC13332C2, 0xC4B9BD36, 0x1B4921BD, 0xD0EBECE0, 0xBCE4D647, 0x35D4DCD5,
+0x1BBE4C27, 0xECC1B7CB, 0xD820284D, 0x0BC33DBF, 0x34D03140, 0x38EC3900, 0x29EBDBC9, 0xD43A3041,
+0x3AE0DD0C, 0x09CFCFDB, 0x44E0C7CE, 0x20DBC4E3, 0x26DC41DE, 0xBA3AD2E5, 0x2ABA34E1, 0xD70FBEB7,
+0x40E03FE2, 0xF8D62041, 0xBD47B7EA, 0xD2E03E34, 0x1FC6D2DE, 0xCF1CD155, 0x32D52630, 0x3C463D2C,
+0x253130E3, 0x1ED8BB4A, 0x411BDFDD, 0x3FD8EE35, 0x33D02BBB, 0x002ECAAE, 0xDF1FDFEB, 0x2CD8DA3C,
+0xB6352D59, 0xD5BDD3B9, 0x1946630D, 0xD9181731, 0xD419D31F, 0xCE2FB7D0, 0x32EFE3C3, 0xCDDB2FD3,
+0xD247BB3E, 0xBA41DECA, 0x23244AD2, 0xDEAAF2B2, 0xB8D525F2, 0xD327A4D0, 0x3718C0E2, 0x2D3E20D9,
+0x24CFDF12, 0x26D0BE1C, 0xC8D9282E, 0xEB54CADF, 0x44DB1AED, 0xC927BF29, 0x2E002B39, 0xBB2625E4,
+0xBB4421D2, 0x18CBAA3A, 0x213ECD37, 0x0F33163C, 0x3622E432, 0xE5C7C62B, 0xDE39E7C7, 0xF3151CCA,
+0x2ACED6D2, 0x2ADADFC4, 0xD6241ACC, 0xB92F0622, 0x1BC639E4, 0x33D92BC4, 0xAF14E0DD, 0xE6EEC2C9,
+0x16BDCAE3, 0x272E1AC3, 0x292E1EBE, 0xDCE439B1, 0x4225E1C6, 0xCD372420, 0x27D716B1, 0xD83EE339,
+0xDBCAD4B3, 0x26385033, 0xC5373528, 0x2DD2C936, 0xF9D5BAE6, 0x2E2DC7C2, 0xCD4BD045, 0x1DDF2DE8,
+0x0E3740CE, 0xE5D82C36, 0x29D1360A, 0xCD03C8C6, 0x37CCCCD8, 0xD83AD330, 0xBFD619CD, 0xDEDDC432,
+0xD0DADAEC, 0xD3E14F26, 0xA8CD35D9, 0xA3F325BD, 0xBC1626D7, 0x3AB81BD5, 0xBBFF1832, 0xC9DB2126,
+0x16250000, 0xE003BB39, 0x35D533CE, 0x1801C610, 0xD9D44644, 0x474BD3C3, 0x1C30C51E, 0x2E3342C6,
+0xB7D6B3E9, 0x5AE44BD2, 0x46D62830, 0xDBDD4B0C, 0x38CF2F1D, 0x2D331ACB, 0x36CCDED6, 0x10D7DA10,
+0xD42246E0, 0x0FC73FC0, 0x2C3E1E37, 0x2CF0D1B8, 0x17412EDD, 0x2630D0DD, 0xDBD535E4, 0xD927DA43,
+0xB636C11E, 0x25CBE2D8, 0x4711F64B, 0xBC2C2029, 0xD0E3F538, 0xB92C27DF, 0x272DE2D2, 0x0CC5BCEB,
+0xC0BC2EDF, 0x26D131C9, 0x1F092FEE, 0x2D342B34, 0x31B825D5, 0xC6BBC9C1, 0x38F1D0E4, 0xCBF7FDC7,
+0xC3CAC9B6, 0xDBC436C6, 0x19DC1FD8, 0x28CCAED1, 0x1921BDB4, 0x24BCBF33, 0x301EE244, 0x36BDBDE1,
+0x31C5B724, 0x00003ECD, 0x220B1EE7, 0xDEBAD3DC, 0x21CAB942, 0xC9193B33, 0xE3CD3A0A, 0x0DC22CC3,
+0x3EC0C7CB, 0x43F2BFE4, 0x0ECFE9C6, 0x3ECA2FD5, 0xCB492DD9, 0x23E7BDC9, 0xD33DC151, 0xFCBE2933,
+0x5ACEC51E, 0xF2172E1C, 0x3C24DE23, 0x3320D4D5, 0x2AB53C20, 0xC328323A, 0x45EA4133, 0x24391A32,
+0xC7D8DA2B, 0xF4EAAF39, 0xDFCA36E3, 0xDEBED5C8, 0x36252C36, 0x04D7DBC7, 0x30CAC23D, 0xB60BF73D,
+0xEACA2A30, 0x34C12ABE, 0xE2D747D8, 0x19D21FE3, 0x1DFD24EC, 0xB6B5D9C4, 0xBF2C1DD2, 0xD2B442E0,
+0x37CCE1BD, 0x2AD1E1CC, 0x18DAC6BD, 0x213AD93E, 0x2031D8CB, 0xD82F2D12, 0xD112D2F2, 0x19CD43F1,
+0x36BCB9CA, 0xD7C5DDFC, 0x34011D28, 0x3BDB0000, 0xCD00E1AA, 0x5228252C, 0x3512CA34, 0x0EE53A41,
+0x242CD2C2, 0xF425DD2A, 0xF02FDDF8, 0xD82026D3, 0x4ABEE7B8, 0x2DC9DDDC, 0x3BEECD3C, 0x2ED1442A,
+0xC713E92A, 0x310CC12B, 0xE128D520, 0x48E5C1CF, 0xC91CE3ED, 0xCCCBC72F, 0x0B23E3E9, 0xC1D2C8B6,
+0x511ED534, 0x2AC7D4C3, 0xCFDCE335, 0xD4C9F643, 0xD433EBF1, 0x1BF8DA31, 0x223FC515, 0xCC2F13C2,
+0xF825FFC8, 0x35E51633, 0x36293C4A, 0xC72ACA36, 0x4544E736, 0x1BD9315C, 0xCF16DFD4, 0xD0AFEFC3,
+0xCECBBDE2, 0x05D6AA32, 0xD851F045, 0x240FD948, 0x3D35B2E6, 0x17D7C7EE, 0x0B22DACE, 0xF53AD637,
+0xB2372DDB, 0xF6DF14CB, 0xBED95B24, 0xD4D5190B, 0x0000CB29, 0x3DC1ECF5, 0x30C6B34F, 0x1D2629B6,
+0xD429D1CC, 0xD50716E3, 0xD0C3C2CC, 0xC82CC7D4, 0x5F27C718, 0xE6201BE4, 0xDACFD42F, 0x2E2EE9D4,
+0x3AD036C0, 0x3828DB20, 0x27D63439, 0xD21026DE, 0xD60710BC, 0x13AEB9E9, 0x28C41944, 0x49D5E3D7,
+0x27163429, 0x1BBAD528, 0xB12A14BC, 0xC72FD9E2, 0x1F43213A, 0x133B3EE5, 0x3622FE21, 0xD438DCBE,
+0x41CB25E8, 0xD0D83E2C, 0x32BFC2CE, 0x362BE1DA, 0xC3CBCE24, 0x22DECDC2, 0x30CBD5CD, 0xD42DBC26,
+0xDDF6AAD0, 0xCADC0EC8, 0xDC333434, 0x333114F5, 0xCE24361A, 0xB1C5D123, 0x4B25380B, 0x2FEC3634,
+0x3EE2A610, 0xB4CEE72F, 0x29BCC721, 0xB23850CD, 0xA51AE4DD, 0xC81BBC2F, 0xD4DF0000, 0x2DE5D1E8,
+0x2E0A28D0, 0x29E3C1E1, 0x56F62DD6, 0x3828DD4B, 0xC41ACFDF, 0xD2390A3A, 0xDF3028CC, 0xE8C5E22B,
+0xD11CDCC1, 0x44D1CBEC, 0x33C73DDC, 0x1D25B7DC, 0xE7DD0525, 0x2743C41A, 0x2AE2D3DC, 0x21D6E82A,
+0x133CBAC7, 0x593F34B0, 0xDA5FE339, 0x5206252C, 0x394FD5BD, 0x21D2C92C, 0x292426E0, 0x48E0362B,
+0xCC272DE4, 0xC815C4DE, 0x49BD5D37, 0x1912342F, 0x2CE9E01B, 0x30D8D2D9, 0xDEBF46E8, 0x392F473A,
+0x3A18D324, 0x2FE31FD0, 0x2B2B2710, 0xB53B2AC7, 0xB3481CFF, 0x2DD7CFBC, 0x2232351A, 0xD7C91C16,
+0x1CB4DA16, 0x1BCBDF3C, 0xD2213822, 0x2121DB1F, 0xDBD1C02A, 0x27DA33C7, 0x351FC4CD, 0x0000B9D8,
+0xC2142C29, 0x38B9DD31, 0x54E60CDF, 0x2A4A42DB, 0x35CF2BB5, 0x0CEA3323, 0xC2D8BEE2, 0xC61F3B33,
+0x10CE11D0, 0x3336CE2E, 0x303ADD25, 0x3347B7D9, 0x33222C1A, 0x1A43E4C1, 0x4326E019, 0x2AE2E92E,
+0xD2C5DC40, 0xBA45D7D6, 0xDF341BDC, 0x3A361925, 0xD4FEF4D2, 0x3018DA31, 0xDDC12817, 0x3038DE24,
+0xEDC0292B, 0x3E3E3336, 0xCB1BEF17, 0xE10B2EBF, 0x2B20BABF, 0xC80C421B, 0xC2411D21, 0xECD8C7D6,
+0xC824E4AD, 0x65B53DD7, 0x304325D4, 0xDD1DEAE6, 0xD33131CF, 0x2F36452B, 0x23B219E9, 0xC1C23529,
+0x21DC3836, 0xD618E933, 0x393E2C14, 0x362ACA3A, 0xD6E2C237, 0xD6085111, 0xD721FCB1, 0xCCE6DEBC,
+0xD1DCD920, 0xC3320000, 0xEA26CB19, 0x18BB26B7, 0x233BDF4F, 0xDE23FD3F, 0x2ADA1ECB, 0x3122E839,
+0xEF42D7D7, 0xCAC7202D, 0xCD4CDED1, 0x2633C824, 0xD0123E4E, 0x104429B6, 0xC8CD4B00, 0x5136B738,
+0xCFC8202B, 0x163135DD, 0x2C3821E8, 0x29314CE0, 0x0F3CE4EC, 0xE5432DAF, 0xC63AE340, 0x4639DB18,
+0xDF282511, 0x25B5CBD3, 0xCAF50F37, 0x1E443B33, 0xE32CD32D, 0x10DA47B9, 0xDA410526, 0x34F0E4EA,
+0xCEED3134, 0xC0B31AA7, 0xD12B1AD3, 0xC722C743, 0xBFBEDD1F, 0xD328D52B, 0xCC384024, 0x18B43FB8,
+0x281742BB, 0xD8322FD2, 0xB5D628C6, 0xE420C0CB, 0xC9EB391D, 0x41E6B419, 0xBCC543E1, 0x2C37DDEF,
+0x1F2D41E9, 0xD0F0D205, 0x1FEAE5C5, 0x15DF14B8, 0x47E327D9, 0xD328CE25, 0x36DB2E24, 0xD92E1EBF,
+0x2B3230F4, 0xD1EAD5D9, 0xC7212ADA, 0xCD1235DC, 0xC519D5DB, 0xBFC631DF, 0xD5222B35, 0x35B6DEC6,
+0x153C4428, 0xC5C3E42F, 0x1B2E2D2A, 0x3CD422A6, 0xC22842CC, 0xCADAC43D, 0x2C10DAD2, 0x18C708B5,
+0x36D636BD, 0xCD29C5D3, 0xBFED433A, 0xE0384939, 0x005629F2, 0x36E2C425, 0x2830DF1C, 0xC9CB351C,
+0xB0D7D3E6, 0xF3CEC214, 0xDC25D1C7, 0x1BD5CBCC, 0x19DD21C9, 0xC854EE30, 0x4FE14EE3, 0x38D5D3E8,
+0xC9D126E4, 0x2FDD2130, 0xCE2130D1, 0xCFCAB0C9, 0xC71F0E1A, 0x2627D4DE, 0xCBE9DACD, 0xE7121F22,
+0x2CC8E435, 0x3838391D, 0xDD37242E, 0xEBBE2F10, 0x233C0000, 0xAFC91CE7, 0xCE3536F6, 0x0F25D248,
+0x2D04EBE4, 0x3FF634E5, 0xE929CE26, 0x24E0BABE, 0x302CD52B, 0xD1E2073F, 0x4333D11C, 0xDA48C2D1,
+0x2D33F315, 0x29B2C8C3, 0x3B26E3EB, 0x3821C6DA, 0x32163DD6, 0x1DC737BC, 0x463CCD24, 0x19D63DDD,
+0x200BDDB7, 0xBDD41E22, 0xC40A444F, 0x34BF49ED, 0xD4C0C0F4, 0xA41FB721, 0xBEDF51E8, 0x15D82A17,
+0x383FDF21, 0x2B2918D0, 0xE6EB4718, 0x244530DB, 0x25DD3919, 0x3BA819BE, 0xDAEFBE38, 0xEB3FCCD9,
+0xD1DF2E1C, 0x2520C3E3, 0x32D0BFD5, 0x37312BD5, 0xDC29D0C9, 0xBED02432, 0x310C3A18, 0x411ED8D7,
+0xA4E5CE22, 0x163CBD30, 0xC3E2BE45, 0xCFBBAAC3, 0xC8C0E4CF, 0x0000CEFC, 0xE8CC2433, 0x39ED223F,
+0x243AD83B, 0xD44D39C6, 0xCABF24DE, 0x252050EB, 0x29C73B40, 0xD4F434CF, 0xCAE4D5DF, 0xC5F2EEF1,
+0x2919C8D2, 0x2FC4D20B, 0x1CBF5528, 0x3DBBD52D, 0xE03AD031, 0x3D2CCA17, 0xBE23BDB8, 0xE7DA3B30,
+0xD1D2D331, 0xCC1825EA, 0x2F2D39D2, 0xF9313526, 0xCFBCC2E1, 0xE5BE3AD4, 0xBF59BE1C, 0x22FFC8B5,
+0x32B14015, 0x31D6BEE6, 0x46DF3843, 0xDCD1D8B2, 0xE728C8BE, 0xEA1E2A28, 0xD1D8C7D2, 0x30CAF134,
+0xEDD0EADA, 0x13C1E3D0, 0xB9D7DC29, 0xEAB93624, 0x24E49F38, 0x2E3FDEDC, 0xE6D0D23D, 0x1FBB3ED2,
+0x23D540DD, 0xD727D92B, 0x251E33E6, 0x4BA7EECE, 0xC1CD203C, 0xC5CFED32, 0xB9CF35C3, 0x29710000,
+0x29D7C636, 0x3A3ED1D0, 0xCC1B271F, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+hard_output0 =
+0x42441F44, 0x006DFAE9, 0xDBB63AC2, 0xA3365CB3, 0xFA44372B, 0xC2603862, 0xA6C86E09, 0x416F0BF7,
+0x8E58011D, 0x47C54B99, 0x269AD14C, 0x0B286902, 0x093E4C64, 0x8D84D8E1, 0xB8AE0993, 0x49567118,
+0x8CEAABD2, 0x12D33409, 0xE3358237, 0x130176F6, 0x0986718F, 0xA18C83B5, 0x04EEF058, 0x59704040,
+0x7478FE81, 0x01D27193, 0xEA1AD7F3, 0x21E6C2B9, 0x6478A1FF, 0xED9959AD, 0xE39E57BE, 0x4D859105,
+0x056EF72D, 0xBD170BB7, 0xF01F9ADD, 0x99BF0C05, 0x44BAD09F, 0xF6ABDD61, 0xC0F8F116, 0x2972B53C,
+0x0FEC944B, 0xD1675432, 0x0025F563, 0xF42B2EA8, 0x808E5C37, 0xB6E79AD5, 0x3706284D, 0xB9C0AFA5,
+0xFF0E7E28, 0x5FA45C6F, 0x9CD5244E, 0xA013DDEA, 0x0D27D1A2, 0x2AE414AD, 0x41614379, 0xE6B68872,
+0x5585D926, 0x5098D45B, 0xF8980ABD, 0x65821418, 0xEF8968A3, 0x301DEC3A, 0x57EF2A7F, 0xC17BE446,
+0x94B65D62, 0xC9E6F350, 0x2E6130BC, 0x235F2E5E, 0xF1C13241, 0x94B291D6, 0x8C342458, 0x175B1FCA,
+0xE07310FD, 0xD24934DD, 0x3CE8D053, 0x5C8F243D, 0x945B0AB3, 0x50EB8CC1, 0x8EF499D4, 0xA67801BF,
+0x1680F061, 0x283FE705, 0xB8D7E773, 0x13AD3D2F, 0x4A6C305B, 0x1C1E5B12, 0x6F57D880, 0x8A666E5E,
+0x26511296, 0xFFC09750, 0xFF91760A, 0xAC26795C, 0x75F321FD, 0x4221B9CB, 0x2E119188, 0x0772A832,
+0x74D6036B, 0xA001B764, 0xF0D72816, 0xCBE119F5, 0xC5D6B248, 0x1BBAB091, 0x1BBE518E, 0xC647DCB1,
+0x240CE252, 0x3F8AAE65, 0xE0CDEAAB, 0xBE724062, 0x5720636C, 0xC816E67F, 0x8E5A6C7F, 0x9E2738B3,
+0x2419CBDF, 0xA6BF9B75, 0x48B21FC3, 0x8C4AED8D, 0xC1D8BCA8, 0x01353DE3, 0xA99D7D85, 0x9C6DDD20,
+0xA650398D, 0x4E7E5777, 0x623FA183, 0xF02B261F, 0xF0BBA66C, 0x35AC701F, 0xD818E590, 0x7CA713BE,
+0x01153743, 0xD1302B91, 0x55459E3C, 0x63FDA677, 0xECF93759, 0xBBE0E349, 0x73FD4FDE, 0x5C48C9E8,
+0x70F46F73, 0x0B15437C, 0x9F4159A0, 0x7C343E78, 0xB3D085E1, 0x04266351, 0x1933DAD9, 0x83AF8C77,
+0x2AC11BE1, 0x76C25CF6, 0x083E6CF7, 0x00DDBA22, 0x6AD2F284, 0xF87DBC6D, 0x7D40B45D, 0x6EBF21BD,
+0x972E8535, 0x632B51D8, 0x5BFBA23A, 0xCDF1D44D, 0x11749158, 0x06DC45D1, 0x93D63A59, 0x9D0552F7,
+0x61C8048F, 0xBFDE9FD2, 0x77827B70, 0xFFB130DC, 0xF18BBCE9, 0xD50C324F, 0x15521E17, 0x7D2470C3,
+0x5EE34C4C, 0x2AC0C8AB, 0xB2283269, 0x4107FE15, 0xE6DA1ED3, 0x66A2A3A7, 0xB204B429, 0x0E02F9D0,
+0xE5A45550, 0xEAF94102, 0x18F57A81, 0x8EEC9C68, 0xD575F397, 0xFC1BE8BF, 0x104E073F, 0xDF219F97,
+0x2EC93D4A, 0x6033EE18, 0xC1351A38, 0x420C6A87, 0x0B5DC831, 0xD90D23E2, 0x13B9E883, 0xCD65BE3C,
+0xDB17A9CC, 0xC73C2A7E, 0x3281
+
+soft_output0 =
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x817F817F,
+0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F8181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F818181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F,
+0x81817F7F, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F818181, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x7F81817F, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x81818181,
+0x81817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F,
+0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F817F81,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F817F81,
+0x817F7F7F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F,
+0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81,
+0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x7F817F7F,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F,
+0x81817F81, 0x8181817F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x8181817F,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F,
+0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81817F81, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F7F, 0x81818181, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81,
+0x7F7F817F, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F817F81,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x817F7F81,
+0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x817F817F,
+0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x81817F81, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x81817F81,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F,
+0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x817F817F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x8181817F,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x8181817F,
+0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F,
+0x817F7F7F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x7F817F81,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x81818181, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x817F8181, 0x817F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F818181,
+0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F817F, 0x81818181, 0x817F817F, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F8181, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F7F81, 0x81817F7F, 0x7F818181,
+0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x817F817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F818181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F817F,
+0x81817F7F, 0x81818181, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F817F, 0x81817F7F,
+0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x7F817F81, 0x7F817F81, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F,
+0x81818181, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x7F818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x81817F81,
+0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F7F8181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x7F818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181,
+0x7F818181, 0x81818181, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F81,
+0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x81817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x8181817F, 0x81817F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F818181,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F818181, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x81818181, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x81817F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x81817F7F, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x81818181, 0x817F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x81818181, 0x81817F81, 0x817F7F81, 0x8181817F, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x8181817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F8181, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F817F81, 0x817F817F,
+0x7F817F81, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x81818181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F
+
+
+c =
+2
+
+cab =
+1
+
+ea =
+4918
+
+eb =
+4920
+
+c_neg =
+0
+
+k_neg =
+3072
+
+k_pos =
+3136
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
new file mode 100644
index 0000000..781f8d5
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
@@ -0,0 +1,2449 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1,
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
new file mode 100644
index 0000000..937c23a
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
@@ -0,0 +1,2451 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_DEC
+
+input0 =
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD3000000, 0xF309F9E2, 0x2343B60A, 0xCE090F1C,
+0x081EF444, 0x0AD1CF0A, 0x0A0DF607, 0xF6F9E32D, 0x07FBE1F3, 0xE2F10C21, 0xF724094A, 0xFDD0D710,
+0xCFF5EFF7, 0x0A19F70F, 0xF7BA1EFA, 0xE90CF620, 0xFCF70FD0, 0xE2F7450B, 0x1BF40AE1, 0xF906F42D,
+0x1A030E0E, 0x2912F924, 0x11F8021E, 0x1DF70AF6, 0xF30B0A1E, 0x080CE51A, 0xF04936F9, 0x200E0421,
+0xF4F4F9CC, 0x1EE7BA08, 0xB9FAF60D, 0xF3E5210B, 0xFE352408, 0xF5FA110E, 0x09E0E4F9, 0x1FF3080D,
+0x49F90D19, 0x0EF1DE17, 0x1F1FBBFC, 0x1DF50B08, 0xF8F90B2F, 0x071B20F4, 0x1B080CF5, 0xF921F4FA,
+0xF5E2E4F2, 0xB5F60809, 0x000C241C, 0x05E2F9F0, 0x0EF5DF08, 0xE11E4609, 0x200FF50B, 0xF4FAF919,
+0x08F12E17, 0x2046F404, 0x0C0C06E0, 0xE20DF81A, 0xE4D20CFA, 0xF7F3F606, 0xFE1FD6F8, 0xB8D4120C,
+0x0D0F2105, 0x1DF4BBCD, 0xD0E20907, 0x0A09F60A, 0xF20D36CB, 0x47BFFB07, 0xF4061F1A, 0x21F10618,
+0xDDCBF2FD, 0x1006030D, 0xF20B1932, 0x04F705F7, 0xEFF6DDE3, 0xE11A0840, 0xE446F306, 0x070B0C1F,
+0x26DB4D4B, 0xC9CFEEEF, 0xFD09EF0A, 0xE6F30DCB, 0xF52F07F9, 0xF70CE407, 0x0C1E1A0A, 0xD0CCF9F5,
+0xF60709F3, 0x210A48CF, 0x45C90DF6, 0xF703E311, 0x1DFC45D6, 0x45F60A10, 0x0B0BE1E2, 0xE321F6F9,
+0xED0C0A0E, 0xF914E600, 0xFCE4D501, 0x3A08F0F5, 0xFFE9ED11, 0xE4EAF504, 0xBE010912, 0xF91B1B0C,
+0xF119CAF7, 0xF205FBF2, 0xF909191E, 0x1248C709, 0xF8F3FEDF, 0xF4F9E11F, 0xE624BFF4, 0xCDF0FA02,
+0x080C0C34, 0xE10746F9, 0x0EF2F5E0, 0xF9E719C0, 0x24E4B605, 0x08F8100B, 0xF4E7E1F3, 0x0C0DE4FA,
+0x33FAF9E7, 0x08F30C35, 0xF80A2F06, 0x1EF6F4E3, 0x09FCF6DD, 0x20F8B9F1, 0x3A0C0DE2, 0x00E91310,
+0x0B0A3105, 0x2DF5F7E2, 0xF223FB4A, 0x1CCE420F, 0x1BF6F8F6, 0xF8050B2B, 0xDF17B90F, 0x2F02F3EF,
+0x0B1E09F6, 0x112EEA0B, 0xE0F4FFF8, 0xF5E5F9F3, 0xE8BD4008, 0x08F8FCE4, 0x0D1F20B9, 0x31BB000B,
+0x0909F51D, 0x072221B8, 0xCDBE0CF2, 0xF8F8F4E4, 0xFE06DBDE, 0x2B4AF0F3, 0xF010FCDC, 0x1FF5F91C,
+0x47440C07, 0xF4F6E11E, 0x051EDEF8, 0x22E1F2F4, 0xF2F50407, 0x07E3DF09, 0x0CE0F40A, 0xF8F4E506,
+0x0DF1E5CA, 0xCE400605, 0x08050CE7, 0x2010BAEA, 0xC2330CFE, 0x04F7180B, 0xF4FBCD22, 0xB9B707F2,
+0x0CF1E0DE, 0xF3FC1A24, 0xCF1EFA0F, 0xF7F7F50A, 0x07E2E1BA, 0xCF33F50B, 0x0BF809F4, 0x2209B7E2,
+0x34200FF6, 0xF9F50DF9, 0xEFE63842, 0x34E40307, 0xF9F80DF5, 0xE41FF608, 0x1FCD0A0C, 0xF508070C,
+0x0C1FE5F8, 0xF6CD070D, 0x0B07E20D, 0x22E5050C, 0xCDD81009, 0x12000BFE, 0x2335FC09, 0xDAFA10F2,
+0x110B021D, 0x1AC0F3F8, 0xD0FBF919, 0xF609F6CF, 0xDDFFB60A, 0x03ECF1DA, 0xEFDF23B8, 0x0BDDCDF2,
+0x2D0EF8FB, 0xF2F9062E, 0x0445DD0D, 0x1CF50E1F, 0xF9E40B43, 0xF920E0F8, 0xF3F3F4FA, 0x081BE6BE,
+0xDEB649F9, 0x14F1F1DD, 0x00F5ED1C, 0x12EAC608, 0xBBFFFF11, 0x0A1D1DF6, 0xF6E61C0A, 0xBFFB090E,
+0xFA1CE643, 0x10F33709, 0xB6F9FCE6, 0xF1E02307, 0xF336190E, 0xF4FB05F1, 0x08FBE5D4, 0xF7461EF1,
+0xE10C0920, 0xF510F837, 0xE8F7F0FC, 0xC50CFB1F, 0x00F7ECD1, 0x223649F5, 0xCA040E0F, 0x04F710E2,
+0x1E30BAF7, 0xBDF60BF6, 0x090A1D1E, 0x06F9DF09, 0xB8F40D1F, 0xF3DBDF01, 0x20B90712, 0x43F40E20,
+0x080EE4E7, 0x1CBD42FC, 0xD30808E4, 0xF2E0FAB8, 0xD8074E0C, 0xEAF314E0, 0x0219F0F1, 0x0A03E206,
+0xE11109DC, 0x0A25094C, 0x1C32BD12, 0xBE0AF7F6, 0xF81E1C45, 0x20CC48F6, 0xCE070C0D, 0x09F90BE0,
+0xE2B7F7F4, 0xE00E0B22, 0x0D0F06CB, 0x201BF9FB, 0x31FA0DF3, 0x0B1D090A, 0x060F21F6, 0x41FB0CE9,
+0x0721E5B8, 0x1A31410D, 0x360B0609, 0x06F6F2E3, 0x0BE5E4F7, 0x3206070C, 0x09F6F631, 0xE0E3470A,
+0xFC09F40A, 0x0F11DE15, 0x20C947FF, 0xBD040CF0, 0xF70E1DCB, 0x14343C06, 0x450600F2, 0xF620E3F9,
+0x20CB460D, 0x48050CF2, 0xED22C600, 0x34B501F2, 0xFA11F224, 0xF20C1A32, 0xFC0D05F8, 0xF0FADD19,
+0x10E3E90A, 0x0C31FDF5, 0xF709E4F5, 0x06E22109, 0xDBC5F3F5, 0xF0FF0313, 0x20F9F820, 0x30E9F30C,
+0xF6FC0A0F, 0x0DEAE6F0, 0x4C1EFBFC, 0x1209DAF6, 0xE20CBAE4, 0xF9F2F607, 0xF30620E7, 0x0506222C,
+0x1D21F20E, 0xF7F309FA, 0x190A0ECE, 0xBAFB060A, 0x0C0F1FDE, 0xE00EB934, 0xFADEF306, 0x0E0D2006,
+0xF9E2D246, 0x0CE70CF5, 0xF8FBE5F3, 0x1EE8F80E, 0x0C220BFB, 0xF7F1E4FC, 0xF921E007, 0x001EF5F2,
+0x140A2709, 0xF506E52C, 0xF70AF8F2, 0xF5F5E21E, 0xE9F7111F, 0xB909040A, 0xF3F421E1, 0x0F1E37BB,
+0x1C05000B, 0x08040A23, 0xE405BD0F, 0xE60F0821, 0x06FAF3D4, 0x0FB3E80E, 0x45EE03DA, 0x09001D28,
+0x0FD0CA13, 0xD2F5FBF7, 0xF41C0742, 0xF8F1E108, 0x17FAF6E8, 0xFDF30F1B, 0x0AE33106, 0x09F70A0A,
+0x0C20E148, 0x0CE2CDF3, 0xBFF6F8F7, 0xF907E520, 0x1E20BB0B, 0x0C0BF608, 0xF7FA1C2D, 0xF11EE7F3,
+0x08F5FC08, 0x0C1E1F46, 0xE028F80B, 0xFBEDF300, 0x0E15DF3B, 0x1AB90EFF, 0x48F4F920, 0xF305DFDE,
+0x05D422F3, 0x1C0EF2FA, 0x07230BFC, 0xEFCB38EF, 0xBCFBFEF1, 0x0A12E239, 0x21CE47FE, 0x1DF70D0B,
+0x09DFF648, 0x1EDB0AF3, 0x4811F502, 0x0DF721E2, 0x0A301D0A, 0x2F0A0909, 0x200009B9, 0xB30F0DF5,
+0x13FA27E7, 0x1A254202, 0x0B460712, 0x0AF51C1F, 0x07E32E44, 0x1E1DF3F7, 0x090A0909, 0x0BE61C41,
+0xF9B7F9FA, 0xF2F1E0DD, 0xE1F908D2, 0xF7D0F30D, 0x0CF61EF6, 0x2024BAFC, 0x46230C11, 0x0C0E2004,
+0x1B050CD3, 0x1FD008F1, 0x0A0CF708, 0xDDDBB74B, 0xB41D0F11, 0x11092409, 0x211F4709, 0xCE30F30C,
+0xF7F50A09, 0x0E27CAB3, 0xE7E105ED, 0xFB0C0E07, 0xE407BDDF, 0xF4D2F8F4, 0x07F3E6FA, 0xE00807D1,
+0xD5F9F3F4, 0x11F30320, 0x1BEBBEEF, 0x2216F903, 0xF3FF0611, 0xE0DF4747, 0x46190CF3, 0x0A041E0F,
+0x2118FA3F, 0xE622F204, 0xFAF30D05, 0xF7E3D00A, 0x00080BF6, 0xF3E1E0F8, 0x1C2CF6F4, 0xE60E0A06,
+0x06E60DF3, 0x1EE309F9, 0x46080B0B, 0x0B1E1F45, 0xE410F40A, 0x2CFC09E9, 0x0F060521, 0x244A4AF3,
+0x2DF11023, 0x0E2505B4, 0x1ACEF3EF, 0xD00A070A, 0xF4F70831, 0x1E4809F5, 0xF4F30CE0, 0xF71C1C43,
+0x1CCEF509, 0x1E08F70C, 0x0A0BF732, 0xEFCE1608, 0x2FF7020A, 0xF421F848, 0xD8F950F2, 0x1EF314E0,
+0x091E09BB, 0x06CC2C0B, 0xE006F2F2, 0xF4F6071C, 0xE2F80908, 0xF8F4F41F, 0x0CDFE105, 0x2324FBF1,
+0x1FF1F003, 0xF6230904, 0xF5F1E310, 0xF204F8E9, 0x07F0E6C9, 0x0DF8CB03, 0xB60B061E, 0xF1DE23FB,
+0xF24234F0, 0xDB07FAE5, 0x1105022D, 0x3511F200, 0x05040EEA, 0xF7DCD0B6, 0x29F40BF0, 0xEFF7FE1C,
+0xDFE107BA, 0xFADF0EF5, 0xF1F32206, 0xE107F72E, 0xB5F60C0C, 0x10F5DC1D, 0xDFE1FABB, 0xB8200FF5,
+0x0C0BE0F8, 0xDF25FB4C, 0x3E330F12, 0x0207EA0D, 0xF4091ACF, 0xCADE060B, 0x05F2F1FB, 0xE60DBFCD,
+0xC40C0607, 0x01F9151A, 0x1DE2BBBB, 0xE0BBF60A, 0xF4F7F91D, 0xF5EF31EA, 0x44C1F701, 0xF703E317,
+0xFCE6D5F2, 0xB3BBF0F9, 0x11F7DB1D, 0x1C20F4F9, 0x4BE5F70D, 0xF107DD0C, 0xE2DD46FC, 0x1E4CF510,
+0xF6EE0825, 0xDD094A1F, 0x3225F1F6, 0x08EF0C01, 0x0AF932D1, 0xBDBBF7F4, 0x080AE5E3, 0x1A1D0EBC,
+0x0CB907F7, 0xF41A0020, 0x25F5FEF9, 0xE10AED1D, 0xF5F4F9E4, 0x1C090BF9, 0xD0F5091E, 0xF424F8B5,
+0xE62A0D10, 0xE110F9FC, 0xF61C080A, 0xF4F31A09, 0x47F8F9E5, 0xF3F92120, 0xEC20EE0B, 0x320C02F9,
+0xF8FAF42C, 0xE32FBB0E, 0xD5F4F6F8, 0xEF05FDDE, 0x1DCD440E, 0xEE0809F4, 0xFFF31433, 0xF9B91F07,
+0x0EF30B20, 0x07DDE6B5, 0xFA35D3F0, 0xCDFA0E0E, 0xF718F510, 0xF8CCE105, 0x2FF80BF4, 0xF305F9D3,
+0xF409CCF2, 0xD00A081D, 0x0B1C09BD, 0xEAF010F8, 0x0EFC0317, 0xFA0818D1, 0x1D47BC0C, 0xCEF30ADF,
+0x09FD0BDD, 0x07F7E1F0, 0x340CF41E, 0xF9080D1F, 0xE344440A, 0xE309F61D, 0xF61F09BB, 0x4900320B,
+0xF20ADE0A, 0xF4E21CF7, 0xC7E0F9F5, 0x020CEF07, 0xF90BE031, 0x20460C09, 0x0C0AF91E, 0xE60041DA,
+0xE1B4F913, 0x0AEF0925, 0x10F0C937, 0x1CF8FC04, 0x09F3F6E1, 0x1FF3B933, 0xB8200BF9, 0xF2F42206,
+0x1107C82D, 0xC0C0030D, 0x050519E7, 0xF320E6FA, 0x44F6FA0E, 0xF7F61CE4, 0x2508FDD1, 0xC6E4EEF4,
+0x00F9140C, 0xE20DBBCC, 0x462E0A06, 0xF40CE007, 0x0DF13319, 0xBA31F9FC, 0xF5F7E10B, 0x1BE20C09,
+0x04D1090B, 0x110C2408, 0x0CF2E636, 0x2FCE0706, 0xF3F7F90B, 0x0E19343F, 0xF14AFA05, 0x05F1E823,
+0xE405F62B, 0x30340A0F, 0x0C06F80E, 0x13E0EDFA, 0x4A42000E, 0x0F0823E4, 0x18F9F1DF, 0x32C2FB0C,
+0xF6FC0AE8, 0x08DE2EFA, 0xF7BCF4F1, 0xF4F61F1E, 0xE50D43E6, 0xF8C5F906, 0x0B001EEC, 0x081A2F0C,
+0xBC2D0BF8, 0x09F3E407, 0x1FFBF8D4, 0xB41CF40E, 0x11F925F4, 0xF5F4E31B, 0x4B0BF8F9, 0x10F8241B,
+0x1BF74130, 0xD5E2F9F6, 0x0F0A04F7, 0x1723F04A, 0xDF3EFBF1, 0x0C04F9E8, 0x0B07CE2F, 0x46E609F3,
+0x0BFB1FF2, 0x0F2036B9, 0xE5E0FBF3, 0xF9F4F407, 0xEEE138F8, 0xD021020C, 0x0B0DF706, 0xE6DABE4D,
+0xF94F07EE, 0x0E15E0D8, 0x1DE6F5F3, 0xBF0E0A07, 0xFA071A1A, 0x05DF23B9, 0xBC2FF20D, 0xF70B1D09,
+0x0DE5CDF3, 0xBB21F908, 0xF60D1E06, 0xF51C1CF6, 0xD0F8F600, 0x0B09F71F, 0xDF33B8F6, 0xE9F7F30B,
+0xFCF8F1D1, 0x0ABACE0C, 0x480BF61F, 0xF222DE05, 0xE431F50F, 0x39F6F7F6, 0xFFE3EDF6, 0x0C0932F6,
+0x11F5F8E3, 0x04FC17DD, 0xF7231EF1, 0x0D0F0AFC, 0xF91BE60C, 0x1EFDBCF8, 0xE510F6DD, 0x07E50C41,
+0xDCD50307, 0xEFF1EFFB, 0x040B16E4, 0x1ADE4008, 0xBCF306FA, 0xF6FB1ED4, 0x1E31F70F, 0xCFF6F5F6,
+0x0BE209F6, 0x2219B70B, 0x0C04F20F, 0x08E81AF1, 0xE1E6F905, 0x17FAF3F3, 0xFDDBF003, 0xF1F6CAEE,
+0xCE0AFBE3, 0x0AF20A35, 0xE038F9FB, 0xE5FE0E12, 0xFAF8F41E, 0xE232F70A, 0xD209F50B, 0x0D1F07F7,
+0xE60EF4F4, 0x41FA07E7, 0xFDE600DB, 0x1BDBF007, 0x07110BFF, 0x0EFDE724, 0xC5440410, 0x0109151C,
+0xDFF7B7E2, 0xE51B0DF6, 0x08080BF5, 0xF0F137E8, 0xBD190404, 0x0904E3F1, 0xF31C35BD, 0x1DB60609,
+0x080F0ADD, 0xE60FBF35, 0x220DF905, 0xF307FA1A, 0x0BF6E5CF, 0x2CC9F80A, 0xF005FCF1, 0x1C17443E,
+0xB710F804, 0x0E0522E9, 0xF5F13136, 0xF6B90904, 0x0A0C1D20, 0x0C1FCC08, 0x054307F4, 0x0FF8DFE4,
+0x0F0C36CD, 0xBCB90508, 0xF60BE31F, 0x1A23F4B7, 0xBE2CF8F1, 0xF90F1B04, 0x091EE245, 0xF740F7F5,
+0xF5041E18, 0xE7F9F2D2, 0x1EBAFAF3, 0xF7F40A20, 0xF6DFCE07, 0xE24A0A0E, 0xF7F10923, 0xDA0BFFCE,
+0xD10014F8, 0xF420F8B9, 0x1C43F6F4, 0x1A09F6E3, 0xFBE00EB9, 0xE3D0BBF4, 0x080BF7F7, 0x0DF1E136,
+0x07472E04, 0x2CF40DE0, 0x0EF306CC, 0x202247FA, 0x2B0DF4FB, 0xF0E204BC, 0xDEFB04F6, 0xE1101023,
+0xF50AF9D0, 0x06BDDFF6, 0x3308F3E5, 0x0707F32D, 0x1AF4410D, 0xC408FAE5, 0x02F1EACA, 0x1BE54205,
+0x350708F4, 0xFB210E48, 0x021B29F3, 0xEDF9120B, 0xFF0D141B, 0xFCBADD06, 0xF3F50E1F, 0xF8F81BE2,
+0xDC474C0A, 0xDC0CF0E0, 0x101BFD0B, 0x1A190EF8, 0xF706070D, 0xF519E20F, 0xF2E53606, 0x3908FB0B,
+0x02E4EFF4, 0x123EC709, 0x4404FEE9, 0x09061D2D, 0xDDBCB60E, 0x370A0FE2, 0x00E3EF44, 0xB81FF703,
+0xF30BDF08, 0x2520B5F9, 0x45CE110D, 0x09091DF5, 0xE104BAD5, 0xF3480BF0, 0xF90DE720, 0xEEF1C837,
+0x31DEFE05, 0xF60EF6FB, 0xE2E9BBF0, 0x050CF6FC, 0x0FF7DFE4, 0x0AF430CC, 0xB7340AF8, 0xF2F9220D,
+0xE5F3BE19, 0x4248F9FB, 0xF90EE5DE, 0x19DE0E48, 0xB836F9F2, 0x0DFCDF10, 0x0EE03507, 0xFA4A06F2,
+0xF20F2023, 0x07E22109, 0x31D3F40B, 0xF7F30B06, 0xDF1CF90C, 0x0BC10E09, 0x0AFC1DE8, 0xDEEF0637,
+0x35C00FFD, 0x06FBF2E7, 0xF52032F9, 0x1B19F7F3, 0x06FB0C0E, 0x0B0F1CE8, 0x48BF07FC, 0x0DF9DF1B,
+0x22E6B6F3, 0xF4CDF2F9, 0x09F9E5F4, 0xDF1D050B, 0xBFCE0F0A, 0x08E6F400, 0x20D2FA07, 0xB9F3F207,
+0xF4E2E008, 0xEECFEBF5, 0xBB0A00F6, 0xF7201DF9, 0x12B739F3, 0xBA0E0222, 0x0B21E2FA, 0x1E05BA0E,
+0x0D0F0BDE, 0x07251AB4, 0xF619E3EF, 0x46FB090E, 0xF40BE0CE, 0xE32FF6F7, 0x240B0A09, 0x10F003CA,
+0x1F43BA04, 0xECF8F51C, 0x00F7ED30, 0x09F02F0B, 0x31040BE9, 0x0B16F711, 0x20C5B903, 0xFF00F4EC,
+0xEEE4DBBC, 0x0AE23208, 0xF80A0909, 0x0CEE1E15, 0x0FD0CAFF, 0x19F6FB0A, 0xFB0F0ECA, 0x23D3FB04,
+0xF80DF0FA, 0xF41F1FF7, 0x21CDB9F4, 0xF3F90DF4, 0xF91E1AF7, 0x1DB6F70B, 0x0A0FF6DD, 0xF50EE234,
+0xF2CCE606, 0x1806FB0E, 0x04E80E0E, 0x37E300FB, 0xFD09F00A, 0xF41CCEF5, 0xE40E08F6, 0xF8FBF518,
+0xE52142B8, 0xBC22070D, 0xF7F3E3FA, 0x0918E23F, 0x07BA0AFC, 0x0DF5E0E1, 0x21F707D1, 0xBDF5F20B,
+0xF7F61C1D, 0xF225E8B4, 0xD0B1FC12, 0xF614F628, 0x06F9D3E0, 0xD2CFF2F4, 0xF4F6F8F6, 0x0E0D35CC,
+0xBCE106FA, 0x08F5E407, 0x05E22109, 0x1EB9F30B, 0x0AF40820, 0xD9E9B1C1, 0xF912EDFD, 0x0C03E115,
+0xF2F41832, 0xE1B1FBF8, 0x0B150829, 0xE51EF409, 0xF2FAF80B, 0xFAF219E0, 0xF2F435E5, 0x081C06FA,
+0xF4F91EF4, 0xEA1DC444, 0x0FF9FE09, 0xFA0E19E0, 0x07E620BF, 0xF3E3F5FA, 0xF9F71AF7, 0xE2FB44DD,
+0x05FBF6F2, 0x0E00DE21, 0x214706F1, 0x080C0E20, 0x0C27E1B3, 0xF6BAD0ED, 0xF40B0AE2, 0x080BE532,
+0xF1E4CA08, 0xF30805F5, 0xF8011BDB, 0xDA1C4D11, 0x0CF9EEF4, 0x09091B1D, 0xF10C19F6, 0xC8F7041C,
+0xFD1E10BB, 0xF4CA33F6, 0x11FCF8F0, 0x03E4EABE, 0xE6F10EF8, 0xE105F9E8, 0xF50F0836, 0xE21BBBFC,
+0xBDF9F60C, 0xF8DAE4FF, 0xF8C81FED, 0x1CFD0B11, 0xF70DF61A, 0x22BFB8FA, 0xDC07F2E5, 0xF00503DE,
+0x09F5D00E, 0xC2090BE5, 0xFCF318CB, 0xF9D3E007, 0x18F3F4FA, 0x04F2F1E7, 0x0BE23205, 0x23F60909,
+0xF1EA04EF, 0xF808D103, 0xB7F4F41F, 0xF21FDEBA, 0xE433440B, 0xE9F7F70B, 0xFEE111F9, 0x08F5D1F3,
+0x460AF41D, 0x0BE2E109, 0x0A1B32F5, 0xBC06F7F3, 0xF8FA1C20, 0xF7E81E0D, 0x09040AF1, 0xF412E115,
+0xD7E8B001, 0xD003EBF0, 0x0B0B09E3, 0xE61EF208, 0xD0F60708, 0xF50FF7E9, 0x241A4BFC, 0xCC0511F2,
+0xF9210DB7, 0x161F3DF3, 0xDEF503F9, 0xF1E2FCBB, 0xEC36140B, 0x2D05FF0F, 0x0D0A0731, 0xF6D0CFF6,
+0x48F50AF7, 0xF2EBDE3B, 0xE6E9F301, 0x0602F811, 0xF2E0DF48, 0xF7B41E0C, 0xC6EF0A24, 0xFFDBEDB4,
+0xE04648EF, 0x330CF4E0, 0x08F70C1E, 0x09BD1D0A, 0xDF09F61D, 0x0D08FA30, 0xF8F9D00B, 0x1FF3F420,
+0x0AE7080E, 0x061EDEFA, 0xD1F50D08, 0x0C21F8B8, 0x071A210D, 0xB9FB0CF2, 0x1CDFBC00, 0xF830090D,
+0xF30B1FF7, 0x1DF8F630, 0x32BA0BF4, 0x0AF60AE2, 0x0E0936D0, 0x0ADEFB0B, 0xF5F21E05, 0x190EF3CB,
+0x0A3306FA, 0x0BF9E3F4, 0xE6E442BD, 0x0A3106F8, 0x0A091DF5, 0x041E24F7, 0x0CCC0F0B, 0xF707E40C,
+0x1A1B4243, 0x1EFB07F8, 0xF6F1F722, 0xE0DBBAFE, 0x2108F4EE, 0xF20C051E, 0xF90BD1CF, 0xE1F90DF7,
+0x0B0C07E1, 0xE80F0FE7, 0x43BC0504, 0x08F61B1E, 0xE1E30945, 0x463AF40A, 0xF40020EC, 0xF90ED135,
+0x330EF406, 0x08FA0B19, 0xF80C1FE5, 0x31470B06, 0xF70CF5E0, 0x10E1E8F7, 0xE5E0030C, 0x070CF4F9,
+0xF6F1E2CA, 0x2DE4F7FC, 0xF308070B, 0x0BE4330C, 0xC10900F7, 0x04F418CD, 0x052F21F8, 0xFAF50E09,
+0xF3E3E0F6, 0xDB44020A, 0x4509ED1D, 0x0A0BE231, 0x02502509, 0xFDEBEF29, 0xF007DDE1, 0x0BF61D0B,
+0xD40AF81C, 0x10FAFC20, 0xF241190C, 0x30F9FBE6, 0x0BDC08FD, 0x0C26CCEF, 0xB8EE0801, 0xF3E4DF0B,
+0x1DF5BCF7, 0xBDF7091C, 0x09081CD1, 0x032F24F5, 0x440CF108, 0xF71BE40D, 0xF6E3E408, 0xC4F8F8F5,
+0xFEF116CB, 0x090DCF05, 0xD3F90BE6, 0xF1DD05FC, 0xDCC8B510, 0x48FCF0F0, 0xF3E22144, 0x1CF4BEF6,
+0x34F7F8E4, 0xF9F9F3D1, 0xF541E30C, 0xD207F8E6, 0xF3F4071A, 0xF71AD006, 0x2FFA0B0C, 0xF412F939,
+0x05C8D402, 0x4702F212, 0x0600212D, 0xE2CD0EF3, 0xF50708F3, 0x0CE4320A, 0xF511F8F6, 0xF604E317,
+0xE020FAFA, 0xCB30F2F3, 0xFA0B0EF8, 0xDBF84DE2, 0xD2B7EE0B, 0x0D0E0721, 0x1EDFBC06, 0x1EE7F6F2,
+0x0AFB080E, 0x07F9E0E1, 0x08F7F50C, 0xF30BE0E2, 0xF20ACB1D, 0xDFC00608, 0xF4FCF9E8, 0xFBE02CFA,
+0xC0CBF10D, 0xFBFA180E, 0x0CFACED2, 0x0AFA080D, 0x0BF21E21, 0x1FE4080B, 0x1DE20C0A, 0xF7090A09,
+0xF20734E0, 0x412FFAF5, 0xFAF51AF7, 0x0FF218CB, 0xBB470406, 0x0A0D1EDF, 0xF924D202, 0x2F33F312,
+0xF507080D, 0x082120FA, 0xBBC90BF2, 0x0B051FF1, 0xFAE7D20E, 0xE40CF307, 0xF8F7F51B, 0xF81DE2BB,
+0x00180A0A, 0xFC1FF107, 0x1A06F3F3, 0xF3F2F9DF, 0x06DD19B7, 0xF7BCD00F, 0x3EF60BE2, 0x04FEE8DA,
+0xDEECFA11, 0x1701F1EE, 0xFDE91010, 0x1B2A0D04, 0x2DEF08FE, 0xF307FA2D, 0xE41B43F3, 0x1BF9080C,
+0xF9000BD9, 0xFABC2113, 0x4809F31D, 0xF2FA2221, 0xE24145F3, 0x33F90AE5, 0xF80B0C32, 0x1D2ABCF7,
+0xF4EF09FD, 0x081EE6BA, 0x0BFA1D0A, 0x1FF20820, 0xF51C07F6, 0x1032C809, 0x0AF7030B, 0xF5E2E3F7,
+0x07BC200B, 0xF7F6F4E2, 0x0B1E1EF7, 0x24CBFD0B, 0xF3FAEF0E, 0x08E51B0C, 0xF52F32F8, 0xE4F5F709,
+0xF9FC0C2C, 0x1E05BBF1, 0xBF0F0ADE, 0x07E31AF5, 0xE339F7F6, 0xEFFEF512, 0xFD0AEAE3, 0x0C380900,
+0xF8FD1BEF, 0x22E8FB3F, 0xECDEF1FB, 0x00F2ED05, 0xE21808F1, 0x1FF6F5FA, 0x0BF5081E, 0x1DE045B9,
+0x0631F6F4, 0x0DF52009, 0x03F4D7CD, 0x0A0DEF08, 0xF5F81EE5, 0xFB03DDD5, 0x4ACC0E10, 0x10F8DDF4,
+0xF5E0CE07, 0xB7C0F7F2, 0x0EFBDF19, 0x0AF232E7, 0x431CF7FB, 0xF9091BF6, 0xF61EE3BA, 0xD93709F5,
+0xED0500F1, 0x0A1E3209, 0x2BCC0AF5, 0xF0F8FC0C, 0x1CF244E7, 0x1F19F805, 0xF4FA070D, 0x2111B9EA,
+0xD40D0DFE, 0x100804E5, 0xE6F20DCB, 0x07470706, 0xF30CE020, 0x1C0BBD1B, 0xD1E7F807, 0xF50609F3,
+0xFF0928CF, 0x1CC9ED0B, 0x08FD0B10, 0x12043822, 0xD2CD02F2, 0x080700F4, 0x0822E1F3, 0x21F3F505,
+0xF3F80630, 0x230DB70B, 0xDFFAF119, 0xF4F9F9D1, 0xE608C00C, 0x0AF306E1, 0xF7FCE4D6, 0x19070D10,
+0x1AF3FAE0, 0xFADA0CFE, 0xE8220FED, 0x1EF20605, 0xF7E8F70F, 0xE8BF40FB, 0x4CF9041B, 0x100924D1,
+0x1ACF42F5, 0x040AF9F7, 0x11F723D1, 0x20F6FA0B, 0x0A0A0E1D, 0xF6FC1D2B, 0xF5DFE3F1, 0xBC0DF806,
+0xF7D81DB1, 0x08121FEB, 0x30FEF615, 0xF6E2F70A, 0x05BB22F5, 0x31F60E1E, 0x091D0A0A, 0x0A47CF0A,
+0x43F40AE0, 0xF8201CFA, 0x0BC831F2, 0x40FCF710, 0x06F41A34, 0x1731EF08, 0x370AFCF6, 0xFDDCEFB4,
+0x16E7C411, 0x370402F1, 0x0418F110, 0x48003E05, 0xF3FDE016, 0xE4F5BCCE, 0xD1E5F709, 0x0C07F9F4,
+0x0012263A, 0x2EF9EE02, 0x0C0DF8E0, 0xF91E2009, 0x19BCF40C, 0xFAF7F31C, 0xF20DCB1A, 0xF3B806FA,
+0x08F4E620, 0xFCDADD4D, 0x0DDC0FEE, 0x070FE6FC, 0x0C20CCB9, 0xF9B3F8F4, 0xF3132026, 0x10DCCAFD,
+0x1FCC04EF, 0xF607F70D, 0xF821D2B7, 0xCFBA0CF3, 0xF60C0A1F, 0xF5203247, 0x3922F70C, 0xFFF3EE06,
+0x0FE1CB46, 0x37E005F5, 0xFCF51007, 0x1109EAE2, 0x0E0802F6, 0xF90B1AE2, 0xF91C2EF6, 0xF3D90DF7,
+0xF813E600, 0x16E0C2B9, 0xE0CBFD0C, 0x0C0507F2, 0xF7FA1D22, 0x1934090D, 0xFAF90D0C, 0x2127F900,
+0xBAE6F2EC, 0xF5FAE10D, 0x1116C9F0, 0xB7F5FD03, 0xF10A231D, 0xE619F440, 0x0ABCF9FB, 0x0A091D1D,
+0xF4F43433, 0x4401F908, 0xF7EEE3DB, 0x0C05CED5, 0xCBFF080F, 0xFB14F1D9, 0xF523E3B6, 0xEF29F8F1,
+0xFD1116FD, 0x0EF7E7D1, 0xCFB405F5, 0xF610F624, 0xF61BE3BE, 0xD21DF8F9, 0xF408F80A, 0xE3E20B45,
+0xBAE7F6F6, 0xF5FB1FF2, 0x0A103118, 0xF8E4F6FD, 0xF4071EF4, 0x0BDF32FB, 0xD52DF7F1, 0xF00D0407,
+0xF3EB34C3, 0xBA4507FE, 0xF5F61E1E, 0xF70ED118, 0x430C0BFC, 0xF708E31B, 0x1EF6BBE2, 0x2F3BF609,
+0xF50109EC, 0xE2F5F731, 0x0BB9F4F7, 0xF70D1BDF, 0xF91E1FBB, 0x0A090B0A, 0x09F5E4E2, 0x1B0DBDCC,
+0x08FA0000, 0x17F53ECF, 0xCF420309, 0xF6F9F7E5, 0x1CDE4204, 0xB8F208F1, 0x0DFA2119, 0xDFDFB806,
+0x1B30F30E, 0x07F60CF6, 0x0CF7E5E1, 0x22E1F90A, 0x0E0B04F8, 0xE21045C9, 0xE4F60AFC, 0xF80AF51D,
+0xE107B9D2, 0xBEDEF5F4, 0x080D1C05, 0x08112038, 0x43DE0B03, 0xF7F2E404, 0x0C1D330A, 0xF4E1F8F5,
+0xF8F41BF9, 0xF8FAE02E, 0x1D040BF2, 0xF7F0F6DD, 0xDEF7051F, 0xD023F0F6, 0xF40EF804, 0xEA00EED9,
+0xDFBAFDED, 0xF3F5FBE1, 0xE1E209BC, 0x08460CF6, 0x0DF4E0E1, 0x09FC3022, 0x0A22F60E, 0xF60EE3FB,
+0xF6181D0F, 0x19D00905, 0xFBF6F30A, 0xFD072421, 0x4B2E0FF4, 0x110EDBFA, 0x080B2ECE, 0x48E10C09,
+0x0E0BDF08, 0xE51B41BF, 0xBE3E07F9, 0x08FC1CE8, 0xF8FDD1DD, 0x09F5F410, 0xF5F61E1D, 0xDE0AB81D,
+0xE3430EF7, 0x08080A1C, 0x20DCFA4B, 0xCE1AF210, 0x0AFA0A0D, 0x2CE8533F, 0x3548E804, 0xFA0DF3DF,
+0x1218C70F, 0x1ADCFFFA, 0x07F0F403, 0xF0F71730, 0xCD1FFD0A, 0xF80A0C09, 0xE4204206, 0x1C41F80D,
+0xF8F90A1B, 0xE302BCDB, 0x091A09F0, 0xF507E2F4, 0x1CE643BF, 0xB51AF8FA, 0x1005240D, 0x08EDD139,
+0xF4FA0C01, 0x09F2E421, 0x18E40F0C, 0x37E2FBF7, 0xFCF6F009, 0xFDF82330, 0xCD430FF4, 0x07090CE4,
+0x1C21F4B7, 0xE0BD09F2, 0xF5F7F8E3, 0xDEE4B743, 0x00000E08, 0x20E7F940, 0x0F09F205, 0xFCF517E2,
+0x1EED09EB, 0xEFBC0B00, 0xFD0A161E, 0x201BB9F3, 0x24F2F408, 0xF007FD1A, 0x19090E30, 0x44E2FA0B,
+0x09F51DF8, 0x1309C530, 0x0BF9000A, 0xF60DE3E1, 0x0C10CE37, 0xF6090804, 0xF50BE31E, 0xFAE12245,
+0x32F9F30B, 0x0A0DF6E1, 0x1F0FB9E9, 0x20DFF4FD, 0x0CF307FA, 0x1C040C23, 0xF823F7F1, 0xF3F0E003,
+0xF809D12F, 0x09E20C0B, 0x0BF6E208, 0x0BF932E0, 0x22ECF8F4, 0x0F0104ED, 0x1C1A430C, 0x24F80807,
+0x0FF403E1, 0xE3DCF7B6, 0xD2320A10, 0x0D0907F5, 0xE81CF0BD, 0x36F10509, 0x05FA0FE7, 0x20EF4738,
+0x0539F303, 0x0FFE22EE, 0xE9E5C1F5, 0xBFF2FCF8, 0xFA06E6E7, 0x0DFA1ADE, 0x32F3060D, 0x0A07F619,
+0x0BE9E3F1, 0xCACAF8FC, 0x0406100E, 0x1EEBF812, 0xF7B7F502, 0x0BF1E2DD, 0x220C4833, 0x1C09F208,
+0xF8F4F5E1, 0xF8F9E12D, 0xE24E0B0D, 0xF6ED0927, 0xFDEB23C4, 0xBDFA1001, 0x09F31CE0, 0x200948E2,
+0x34CA0DF6, 0xF905F30F, 0xE2FA4420, 0xE4E80A0C, 0xF8040B0E, 0xF81B2E41, 0xF3C90CF9, 0xF8031BEF,
+0x22214AB8, 0xE1400F0D, 0x0B060819, 0xE91AF1BF, 0xCF1DFC06, 0x09F7F609, 0xFF26D8B3, 0xF6BE1212,
+0x0A081CE4, 0x0DF7CDD0, 0x0AB407F6, 0xF6EFE325, 0xE41DBD0B, 0x4D0CF8F6, 0xEEF826E5, 0xF21D35F7,
+0x36F9060B, 0x0FE10000, 0x3103FCF3, 0xF7110B24, 0xE5224149, 0xBE26F90F, 0xF813E500, 0xE8D9C1B3,
+0x06C1FB13, 0x0F05DE19, 0x18F8C1D1, 0x24CEFB0B, 0x1009FD0B, 0xE2E444F5, 0x1A1FF6F7, 0xFBF40EF9,
+0x081B2FF4, 0xE8070CF8, 0xFBF30E20, 0xF8032FDC, 0x06FB0CF1, 0x0FF021DD, 0x0C0B3332, 0xF2D4F809,
+0xF9F21AFA, 0xE509BDE2, 0x3B1CF80A, 0x01F7EC0A, 0xF7F4E31B, 0xF00DF7FA, 0xFB07E9E6, 0xE30B431C,
+0xF7CE09F8, 0x0B081DF4, 0x1C19BEF2, 0x2F10F8FA, 0xF50409EA, 0xF21DE7F6, 0x1EBEFB0A, 0xF6F8091C,
+0x2DFBAB22, 0xE3061A0D, 0xF80DF6E0, 0x09E4E10B, 0xF3FC0A09, 0x08F0E622, 0x0BF23218, 0x47CFF804,
+0xF3F7200B, 0xE20BBBE4, 0xBDC4F6F9, 0x08011CEB, 0x0D211BF9, 0xBAF906F2, 0xF40D20E0, 0x09DCE203,
+0x0D2F0AEF, 0xF80C1B08, 0x0D22334A, 0xDE17F9F1, 0x0E030510, 0xE21D45F6, 0xFABBF6F6, 0x0E0BDF1F,
+0xDFF54933, 0x0BCDF209, 0x08F91BF4, 0xDE21FA48, 0xCE190FF3, 0xF706F5F3, 0x191A0D42, 0xBB17FA06,
+0x0B03E110, 0x0DE03546, 0xF41F070C, 0x09F6E4F7, 0xF5FD1BDB, 0xFEB90810, 0xED0CDAE0, 0x26204D07,
+0xE1BBEEF2, 0xF60B08E1, 0x1FE508BE, 0x313F0C07, 0xF7050BE7, 0x1C1EF6F6, 0xE333F70B, 0x0AF8F7F4,
+0xDD0B0332, 0x23D51009, 0xF00FFD04, 0x1DF2BBE7, 0xB41CF605, 0x0000DB0A, 0xBF4A1108, 0x070FE523,
+0xF622E405, 0xC708F7F0, 0xFEF31220, 0x181AF242, 0x07BE0606, 0xF307201B, 0x1B0D0CE7, 0x30E1F805,
+0x0BF4F707, 0x10F2C9E6, 0xC30EFCFB, 0xFDF91719, 0x20E206F6, 0x20D00EF5, 0xF4F6F90A, 0xF6E4E4F6,
+0x1EF6F8F6, 0x0A0B09E3, 0x1CF0F636, 0x45450A04, 0xF6F71E1D, 0xDFF5B81B, 0x2B08F307, 0x10F5041E,
+0xE3F345CB, 0xBCD7F707, 0xF7ED1DFF, 0x10F4EACE, 0x1D45FD08, 0x09F5F71F, 0xE21CBBF4, 0xC71C0AF7,
+0xFE07120C, 0xE21CF744, 0xBC1A0C09, 0x0AFAE2F3, 0xF6F0CEC8, 0xB9F30904, 0xF3FA2019, 0x08E62FBF,
+0x0E2E0C06, 0x06F3E7F9, 0xE6E00EB9, 0xCDF9F9F3, 0x07F30C20, 0xE41DF5BC, 0x1ABEF70A, 0xF9FAF4E6,
+0xFAF5E0E4, 0x0B0DF3F8, 0x0A07E419, 0x1508ED20, 0x4CCEFEF5, 0xEE08260C, 0xE9E2F009, 0xE2CDFCF5,
+0x09F9F70D, 0x2009BA1E, 0x09E30CF6, 0x0BF6E209, 0xF11C1942, 0x0EDEFC08, 0x07F3E606, 0xF9E2D3F6,
+0xE5C00DF5, 0x07FA0CE7, 0xDD244AB5, 0x1D30F010, 0x0A0B09F7, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xD2000000, 0x0CF308E6, 0x0A0AE306, 0x1C0B081E,
+0x0702F4D6, 0x2345B6EE, 0x1FF6F11D, 0x0B20F8F9, 0xF4C3330D, 0xE5FE08EB, 0xFA08F41F, 0x0723DF0B,
+0xF50E0CFB, 0xF71EE408, 0x1EF3F80B, 0x22FAF5E7, 0xF21FFBBB, 0x1139EBF5, 0xB7FE02EF, 0xF2F62232,
+0x22D04A0A, 0x1FF50EF8, 0xF4210707, 0x08EB30F2, 0xDB00F4ED, 0x1118FEF0, 0xF104E805, 0xD30F0422,
+0x0D0606E0, 0x083F2F0C, 0x3004F417, 0xF6E8F73E, 0xE4F30CFC, 0x31F9F71A, 0xF507092E, 0x1AF9F3F3,
+0x0EF2F921, 0x0604E8DC, 0x0FD4E7F1, 0x040F04FB, 0xF0F2DEE6, 0xE045B9FB, 0xD30A0D1E, 0xF3EF07E9,
+0x1D454502, 0x110A09E2, 0x000817E1, 0x13F40BFC, 0x02F7EB1C, 0xE70C0DCC, 0x0BBAF908, 0x090CE420,
+0xE5070C21, 0x4A0809F4, 0x10F5DD1E, 0xE6ECBFC6, 0x0ACFF900, 0x0BF61DF6, 0x1ADDF34A, 0x2F0EF8F1,
+0x0B060919, 0x0C0ACDCF, 0xB9FBF80A, 0xF410E0DD, 0x09E7303F, 0x08D1F505, 0xF40C1F08, 0xE60A0D31,
+0xCFBAF90A, 0x0AF4F6E0, 0xDC06FDDF, 0x0AF811F4, 0xF70B1C1E, 0xE1E0F9B8, 0x3EF4F30D, 0x03F8171B,
+0xF7EC1EC5, 0x0544F6FF, 0xF2F621E2, 0xF11A350C, 0x2DCF0507, 0xF20A0609, 0xDFF44833, 0xCCE70E08,
+0xF9040DF1, 0x1C070B21, 0x460C090C, 0x0B091FE5, 0xF7E21D08, 0xC33309F5, 0xFFF7EBF5, 0xE7180DC0,
+0xF6E607FB, 0x061D0D00, 0xE1CD46F5, 0x2D07F50C, 0xF2DAFA01, 0x092DE3ED, 0x000F0AFB, 0x130D2619,
+0x1FE4BAFB, 0xD2F80BF5, 0x0EF906E1, 0x1CB9420C, 0x290CF8E0, 0xEE07FED3, 0xF2C4340D, 0x4002FAEA,
+0x0523E749, 0xF71AD00F, 0xCFFA0A0D, 0xF507F7E0, 0xF20FCC0C, 0xB9FB0618, 0x0B10E1E9, 0xF51DE303,
+0x41F808F6, 0xF91FE6F8, 0xE6D0F30D, 0x47F6F8F6, 0xF31DDFF5, 0x08031FF6, 0xB812F525, 0x0D0BDF33,
+0xE50C0DF8, 0xE0F7F8E5, 0xF408F91F, 0x0D0B34F5, 0xF009F9E4, 0xFCECE912, 0xE3F90902, 0xD0F4F61F,
+0xF5F209E7, 0x1FF0BAFC, 0xFA050CE8, 0x0F22DF05, 0xE01DF9F1, 0x4AF60E09, 0xF10DDD33, 0xDCE30007,
+0x0F0804F5, 0xDAF701D0, 0xEA1A13F5, 0x0106120D, 0xFBE92DF1, 0xE6B9F2FC, 0x070CF4E1, 0x1706F0D4,
+0xE4F4FBF2, 0x08F9F5E6, 0x0A281DB2, 0x47F40914, 0xF4F820E6, 0xF619E3F2, 0x48BEF706, 0x0DFAE0E6,
+0x1C1EF4F7, 0x3E1EF70B, 0xFD0BE9F8, 0x1AFCF4DE, 0xF849F9F2, 0xF30EE121, 0xE821F107, 0xFC0506F2,
+0xF00E23DF, 0x1FF346CB, 0xFC2B0BF9, 0xF010DDFD, 0x0CFB3322, 0xBFE0F9F3, 0x06F41907, 0x0AEF32E9,
+0xE20DF6FE, 0xF6F8F7E6, 0xF304CCDD, 0xFA18FAF2, 0x0EFC210F, 0xF4F5E6E5, 0xF8E0F9F8, 0x0DF41FF9,
+0x1A08F2E0, 0xBE2D070B, 0xF9F2E6FA, 0xF8E0D146, 0xE6F2F40C, 0xF9000DE6, 0x1FF307FA, 0x35F8F4E5,
+0xFAF70D2F, 0xE24408F5, 0xC9090C1C, 0x051CF10A, 0xF7F9E30A, 0x0D0EF620, 0x0722E749, 0x20FF47F2,
+0x40EDF4DB, 0x05DE1906, 0x1B0AF4F1, 0x3109F81C, 0x0AF7F7E2, 0xE1DC0709, 0x070FF303, 0x0DE1E1BA,
+0xEA20EEF5, 0x460CFDF9, 0x0C10E037, 0x1AC94104, 0x440306F0, 0xF80CE41B, 0xF22B3607, 0x44F1FAFB,
+0x091AE30C, 0x072F2007, 0xCD0BF408, 0x08E20CBA, 0xEE1F16F5, 0xCBF5FF07, 0xFA1B0E43, 0xE6E2BF08,
+0x0D0BFA08, 0xF8F7E5E3, 0x06BBDF09, 0xCB0AF31D, 0xFBFC0FDC, 0xF61C310F, 0x2E07F70B, 0x0CE408F6,
+0x1DBC0BF7, 0x33F6F6E2, 0x08F9F4E0, 0x1B490CF4, 0xFAF108DD, 0xF1E2DFF7, 0x0C31E50B, 0x3009F90B,
+0xF41FF8BB, 0xF62D310B, 0xB70EF6FA, 0x0E0C221B, 0x11093707, 0x1BF403E1, 0xFA1FF3F8, 0xE0FD48F4,
+0x3510F423, 0xFB150EC4, 0x21B948FF, 0xB2F30D21, 0xED0CDA34, 0x0B1C1B08, 0xF4F9F90B, 0x09F31CCD,
+0x2334B7F9, 0x42F9F10D, 0x08E7E4BF, 0x0A231DFB, 0xB60FF704, 0xF00DDC34, 0xF520CFFA, 0xF2F40906,
+0xF91F1ABB, 0x0C09CD0B, 0x1BF5F81E, 0x07F30BCC, 0x1D330AF9, 0x34090A0B, 0xFA1B0E0C, 0xF9412008,
+0xB7F90C1B, 0xF20621D3, 0xF836D10E, 0xFDFB0CF2, 0xEFF823E2, 0x1730F0F6, 0x48F5FB09, 0xF3272000,
+0xE43F4214, 0x21FCF8E8, 0xF7053000, 0x0A08F5F2, 0x0AF41DE2, 0xE5E50BF3, 0xF7CFF708, 0xF5F6E2F6,
+0xF6F7CFE1, 0x45DD0AF6, 0x0B0F1E04, 0x240BB432, 0xE944F009, 0xFD0AF1E3, 0xE920C2F9, 0x1941FCF3,
+0x05F9F21B, 0xFF07DBD1, 0x1E02120C, 0xF712F6DB, 0xE2E14545, 0x10F2F6F5, 0xFCFA17E7, 0xE4FB44D3,
+0x22BC08F2, 0x0EF7FBE3, 0xDE29B7B1, 0x14C60E15, 0x01FFECEE, 0xDFF6B81D, 0x351DF3F7, 0xFA09F209,
+0x08E220BA, 0x07180B0A, 0xF2FCDFF1, 0xF5161BEF, 0xDFCFF9FC, 0x0C0BFAF7, 0xDF274801, 0x09BAF3EC,
+0xF4F41FE1, 0x10F0C938, 0x07300404, 0xF3F5E008, 0x12E53AF5, 0x162DFEF7, 0x03F21006, 0x1FDBBBB4,
+0xD5F500EF, 0x101F0447, 0x22E605F4, 0xD105100D, 0x0B22F7B6, 0xE1F3080E, 0x2807F41A, 0xEDE601BF,
+0x0EF71906, 0xFD0BFB1E, 0xEFF9DC2E, 0x18F9F2F3, 0x440D05E0, 0xF6F81DD2, 0x06CED3F4, 0xE3F70E0B,
+0x09210AFA, 0xF3BC1A0E, 0x450A061D, 0x09E41DBC, 0xE31D0AF8, 0x0EF70AF6, 0x06D9E700, 0x0B04E314,
+0x10F1F8DE, 0x0506E922, 0xF3E3CC0D, 0xF40806F6, 0x091D1C44, 0x1E45460A, 0x0CF5F61F, 0x08F21ACC,
+0xE9D03FFA, 0x19F6FCF6, 0xFC0BF11D, 0x0C0CCDF8, 0x3208F9E5, 0xF6030AD5, 0x1C4143F0, 0xCEFAF71A,
+0x091E0BF7, 0xEAD1110B, 0xE70BFDF7, 0x0525F24C, 0xE2F80911, 0x30F4F5E1, 0xE7000AF2, 0x1BE8FA0A,
+0xF9030CF0, 0x1FE307F6, 0xE5BF0D0A, 0x06FA0CE6, 0xF523E5B6, 0xB0DD07F1, 0xECF12803, 0xFB1F23BA,
+0x1D010E0B, 0xF71309DA, 0xDC05B6DD, 0xD124F0F2, 0xF40F0803, 0x0523D5FC, 0x46CC0FEF, 0xF5F9E1F4,
+0x1EDFF7B7, 0xBCBCF5F3, 0xF708E31C, 0xFD112316, 0xE2FAF102, 0xF60E08DF, 0xE11A46BF, 0xCECBF406,
+0x09FAF60E, 0xE30F44E8, 0xCC190AFC, 0xFAFBF2F2, 0x1C0C0BE4, 0x4138F707, 0xF9FC1B10, 0xF61FE3B9,
+0x0ACD090C, 0x0BF8E30C, 0x09F7E1D0, 0xBDD0F60A, 0x090C1CF8, 0x2023474B, 0x2312F4F1, 0xF2FE04EC,
+0xF5E4E4F6, 0x050B08F6, 0xF0F7DDE4, 0xFA202E08, 0x00B80E0D, 0xF3E421F6, 0xF5081CF7, 0xEE0BF81E,
+0x0207EB2E, 0xF4E51A0D, 0x3307070C, 0x07E10C08, 0x1E1FF7F3, 0xF6F50BF8, 0xF5E71EF2, 0xDB450207,
+0xE4F5ED1F, 0xF9F70CE2, 0x0C2D320A, 0x31F3F8FA, 0x0A07F6E1, 0xDE04FBF5, 0xED111024, 0xFF08EDD1,
+0x15D6EFF4, 0x1E10FE04, 0x0A0CF832, 0x0D21E6F8, 0xE10C06FA, 0x0AF909DF, 0x09F71FF4, 0xE9F50AE3,
+0x03DA1002, 0x0CD41CED, 0xB70FF9FB, 0x0F1E22F7, 0xE146B90B, 0xDFF40CE0, 0xF3F2FB35, 0x0905D006,
+0xBA100B22, 0x0AE5E2BE, 0x0408D507, 0xB6F410E1, 0xF01DDD45, 0xE637F4F6, 0xB3FDF811, 0x1208261F,
+0xF91BD10B, 0xF808F30B, 0xF4F91FD2, 0x00D2F300, 0xEC0CD908, 0x182040FA, 0xCA11FC0E, 0xFC040F16,
+0xDF0FFBE9, 0x3DC2F1FC, 0x030416E8, 0xE0FAB922, 0xB3FD0C0D, 0x12EF2624, 0x1FE2BB45, 0x41C90BF5,
+0x0704E6F0, 0xF31D1BBD, 0x33D506F7, 0xF80F0C04, 0xE50B0BE3, 0xFAB8F708, 0xF20EE0DE, 0x1EE90910,
+0xCD2C0BFB, 0x07F20D06, 0x1E220905, 0xEFE4F50F, 0x04F8E9F5, 0xF01D3845, 0x1DE8030A, 0xF7FCF7F1,
+0x1EE14547, 0xE32D0AF5, 0xF7F2F7FB, 0xE1E7F90F, 0xF40E0DFA, 0xF8F9E5E6, 0x21F54832, 0x47F60DF7,
+0xF3F7201C, 0xE61BBEBE, 0x0A49F9F9, 0xF5F21EDE, 0xE221F705, 0x2EF60BF2, 0xF3F5FA1E, 0x26E14DF8,
+0xB82DEEF3, 0xF1DE00FB, 0xED49EC0E, 0xB90E0022, 0xF31E21BB, 0xFFE4DB0A, 0x4607EFF4, 0xF4F72030,
+0xE12007F5, 0xD40DF306, 0xF1FCFB2B, 0x1FF7F710, 0x490CF41E, 0xF21B22BE, 0xDEDF0407, 0xFA0D10FB,
+0x0E0A21E3, 0xF30D1A09, 0x0408061B, 0xEFE3DC44, 0x151C11F7, 0x18F9FD0C, 0xFDE31009, 0xEA1B12F5,
+0xF407030B, 0x090E1B34, 0x1F16F8FA, 0xCD01F311, 0x08F2F434, 0x0FFCCBFA, 0x48F0FB23, 0xF31FDF07,
+0x1BD0F30C, 0x2C0AF809, 0xF2FAFB21, 0xE52B0CF3, 0xD3F00904, 0xF31CF9F5, 0xE01A07F6, 0x16FBF30D,
+0xFFE711F3, 0xEDFC3A06, 0xF61001DD, 0x0920E407, 0xE620F3F3, 0x25F50807, 0xEF070221, 0xBD00FBF4,
+0xF7101CDE, 0xDA1DB30B, 0x4425EEF6, 0xF6111EFE, 0xDD1EB745, 0xBB1B0FF6, 0x0B06E10D, 0xFF09D9E2,
+0xE834EEF7, 0xFDF910F3, 0xE4FCBCD4, 0xB42C09F1, 0xEF0F25FB, 0xE90FC1CA, 0xB9FD04FB, 0xF5EE1FDB,
+0xE6F60D31, 0xC24D0709, 0x03EF1725, 0xE20A441C, 0xCC42F6F7, 0xF9F8F3E4, 0xF80B2E1C, 0xCDF4F408,
+0x07070DE6, 0x09F4E133, 0x47090AF9, 0xF4F5E11E, 0x22F9B8DF, 0xE5D20E0C, 0xF9F4F508, 0x1E1E46BA,
+0xF2CF0A0B, 0x060A18F6, 0x211A07F2, 0xC131F207, 0xFBF6190A, 0xE01FBA09, 0xFB1BF4F4, 0xF0FA220D,
+0x0EE63440, 0x37450606, 0x05F60F1E, 0x221DFC09, 0xFC330F0A, 0xF0F9220D, 0xE11A0940, 0xF9E20CFA,
+0xF30A1FF7, 0xF9E02108, 0x13B8F4F3, 0x01F2ECDF, 0x0B1DE409, 0xBA4808F5, 0x0C0E1FDE, 0x12F71530,
+0x1EB9FF0A, 0x0A0CF7E1, 0xE1E608BE, 0xCA1C0C06, 0xFC08100A, 0xE417BC10, 0xCC29F8FC, 0xF913F3FF,
+0xE108BBE2, 0x41CE0BF5, 0x0708E50C, 0x22F84AD1, 0x0723F10B, 0x0C0FE104, 0x091230C6, 0xD32FF6FE,
+0xF30C07F9, 0x0EDE35FC, 0xB8D10610, 0xF3F4DF07, 0xF7E11D07, 0xF3EDF60C, 0xF9FFE613, 0x221AFC0C,
+0x251D0F07, 0xF009030A, 0xFCF9DD2D, 0x4D310F0D, 0xEEF52509, 0x1A1B0DF4, 0xF4B8F8F8, 0xF70E1B21,
+0xF60A301D, 0xB93EF6F7, 0x0CFDE016, 0x0815D2C5, 0xCEF40100, 0x080CF4CD, 0xE4D34308, 0xBCF2F8FA,
+0xF6F51DE5, 0x07D1E107, 0xE30CF407, 0xF70B0A1B, 0x09CA1F08, 0x2FFBF60F, 0x0D1CF942, 0x07D42DF8,
+0x1BF10DFC, 0xFA22F3FA, 0xE734C0F1, 0xCEFA060E, 0xF7E50B0B, 0x0CF83309, 0x1F0CF8E1, 0x0AFDF725,
+0xFF0B2710, 0xF3F712E5, 0xF9FBE6D4, 0xE80C100E, 0xDE0905E4, 0xF30C06CD, 0x041D2308, 0x31F80F0A,
+0xF7E1F5BA, 0xEFCA37F5, 0x3005FD0F, 0xF607F71F, 0xF411CDF5, 0xF5FDF8EA, 0x0AFAE4D3, 0xE6CC42F3,
+0x04F8070C, 0x1014DEEC, 0xF6CE1EFF, 0xD1F7090B, 0x0D0CF9CE, 0x09DF1E08, 0x31F30AFA, 0x0BF4091C,
+0x1C344307, 0x100708F4, 0xE3170045, 0xBCD709FB, 0x0AEE1DFE, 0x0C06E62D, 0xB70A060D, 0xF10BDDE2,
+0x16DD12B5, 0x2F44FDF1, 0xF40A081D, 0xE8E20F08, 0x1FFC05F5, 0xF410F9DE, 0xE21B0ABD, 0x39210BF8,
+0xFEF41207, 0xD9DEFF49, 0xF832140E, 0xF3F7E0F6, 0xE5F6F4CE, 0x452C08F6, 0xF5F21E06, 0xD91DB2BC,
+0xF30D13F7, 0xF8F8E5E5, 0x1B224206, 0xB6F608F1, 0xF1F6DD1D, 0x0E15E7C4, 0x21DBFCFF, 0x0D1006FD,
+0x1D09F61F, 0xF4FAF60A, 0x09F11BDE, 0xDF094830, 0xCAB40DF5, 0xFC100FDC, 0xE8DE0EFB, 0xF3ED060F,
+0x0701E6EC, 0xE3F70ACF, 0xE135F6F6, 0xF5FAF8F3, 0xE1F20834, 0x30FA0CFA, 0x0A0EF7E0, 0x180AF1CF,
+0x220005F6, 0xF21BFB0D, 0x0BBE31F8, 0x06F809E4, 0xF2E321F5, 0x1D340B0A, 0xE6060A0D, 0x06DF0CFA,
+0xF5FBE40E, 0xF30FF9DE, 0xF9091AE2, 0x1AFA41F6, 0xFA0F07DE, 0x0E192141, 0x23BEB5FA, 0xF507F0E5,
+0xF80CE533, 0xEEF716F8, 0xD4F5011E, 0xF2F2FA18, 0xDDD2FB05, 0xDF0E10FA, 0xF41F0708, 0xE2CEBAF3,
+0x2C09F60B, 0x0EE0FAB8, 0xF347CCF3, 0x470BF91F, 0xF40A2031, 0xE648C0F6, 0xBF0D06E0, 0xFBF7E7E1,
+0xF1C0370A, 0xCDFBFCE7, 0xF8E9F5C2, 0x0CD3E4FC, 0xF60D0707, 0x0AEB1D3D, 0x0A34CF01, 0xF4070AF3,
+0x091FE409, 0xDDFA040C, 0x33F3EFE0, 0x0709F3E2, 0xE6B640F6, 0x490F06DE, 0x000C22CE, 0x21BB080E,
+0x0D0BFAE1, 0xE922EF48, 0x483FFC0E, 0x0D04DF18, 0x120E16CC, 0xCC18FF06, 0x06FCF2F1, 0x06DADFB4,
+0x1845F4EE, 0x04F70FE3, 0x0F20E908, 0xF3CEFDF3, 0x0709E6F5, 0x161F10F8, 0x06C003F4, 0xF106DEE6,
+0x07F62ECF, 0x0CF4F4F6, 0x08091BE5, 0xE41D0CF6, 0xD1B409F6, 0xF410F8DC, 0xE2054422, 0xB9220AF2,
+0xF3F321FA, 0xF60D1C19, 0x36BB08FA, 0xFB0AF11D, 0xF5F4CFCC, 0x2DE10907, 0x0EF5FA08, 0x0DFB1A2D,
+0x4833FBF2, 0x0DF921F3, 0xE8E4400C, 0xBAF5FCF7, 0x0CF6201D, 0x2206B7D3, 0xBB36F1F2, 0x0A05E2F1
+
+input1 =
+0x0EDBCCFE, 0x33B70612, 0xF90E0DDE, 0xE70C4033, 0xBC0E0508, 0xF9E41A00, 0x090BD1F8, 0xB90AF5E3,
+0x0CF420E5, 0xE5470DF9, 0xE0F40820, 0xF41607C3, 0xFC4722FE, 0x47F40EE0, 0x0BFCE12B, 0x1332EB0F,
+0x45F600F6, 0x0AF3E319, 0xDD084B06, 0xB8F4F0E1, 0xF209211E, 0xF9D01FF7, 0xCEF40CF8, 0x08050B2B,
+0x0ADC1EF1, 0xF61009FE, 0xF5071DD2, 0xE5BA42F4, 0xCFF5F91E, 0x09E30B43, 0xE1C108F7, 0xFA050C19,
+0xF20CDFE5, 0x090830FA, 0x2E0D0AE0, 0xF3F70731, 0x0434DEF6, 0xD2F9F1F3, 0x0DFCF9DD, 0xF4D31A0F,
+0x36F3F9F9, 0x050B0EE5, 0x092E3108, 0xBFF30B07, 0x071EE5BA, 0x09451DF5, 0x190AF7E2, 0xFB0A0E1D,
+0xDD4049F7, 0xBAFB0FE7, 0xF421E049, 0x0B4500F2, 0x0AF61DE2, 0xE324BCFC, 0xE50309EF, 0x08EFF524,
+0x09F7E31F, 0x1C33F70A, 0x08080B0C, 0x100E37CB, 0xF6E404FA, 0xF5F71EF6, 0xE1F709E2, 0xCF3F0C0A,
+0xF6050A19, 0xF5E2E3BA, 0xD1BC080A, 0x0DF7F9E3, 0x1A1A42F2, 0x25E30607, 0xEF0A01F7, 0x19F2BFE8,
+0x43B605FC, 0xF8101C23, 0xF7DFE148, 0xD446F6F2, 0x0F0B041F, 0x09261E00, 0xBF22F613, 0xFAF3E606,
+0xFB1E2209, 0x08BC0E0B, 0x0BF71E1D, 0x08F72EE2, 0xE1CCF40A, 0xF506F80D, 0x0A1FE309, 0x1CE5F70C,
+0x08080A0B, 0x2CE153BA, 0x0D09E8F5, 0x08F5E5E3, 0xF41FCC07, 0xCC41080C, 0x0706F3E6, 0xE6FDF2DD,
+0xB8BC07F0, 0x0900DF1D, 0x211F48F3, 0x32F60D08, 0xF7F80B1F, 0x03E3240B, 0x0CF61009, 0xF7FB1C22,
+0xE24309F3, 0x41F70B1C, 0x06E0E6BA, 0xFA44D30C, 0x20F60E1E, 0x0BE3F8BD, 0x0EB71A09, 0xE0F10523,
+0x0D1BFA0D, 0x22F34908, 0x0DF9F119, 0xF8161BEF, 0xE7F40D03, 0x0408F9E6, 0xEFF7231E, 0x0943300A,
+0xF707F5E5, 0xF51E1EBB, 0xF0C8170A, 0x310203EE, 0x090F0B36, 0x23064B04, 0x20F2F1DF, 0xF5DD08FD,
+0xF3D41B11, 0x0CF10604, 0x09EDE515, 0x21F24900, 0x0D060E19, 0xF90E19CA, 0x01F6DA05, 0x460A121D,
+0xF50EE1CB, 0xE20945FA, 0x0CF5F6E2, 0x090AE431, 0x0D42E50A, 0x2FF8061B, 0xF411F8C7, 0x0DEECCFD,
+0xD00306EB, 0xF61C0AF6, 0xE8D33F09, 0x090D0406, 0x0CE21FBB, 0xE1F7BA0B, 0x1C0BF51D, 0xF922F548,
+0xE249F8F2, 0x2F0E0C21, 0xF31DF90A, 0xF8C3E0F6, 0x07FEF5EB, 0xF40F1F35, 0x06B52DFB, 0x060F0EDD,
+0x0FDEDE04, 0x1DF6F7F1, 0x330AF61C, 0x07E10DBA, 0xF4BFCDF5, 0xE307F81B, 0x08E2F5F7, 0xF42ACDF5,
+0xF5F008FC, 0x090FE4CB, 0xE41C0A05, 0x0E0809F5, 0xFAE7E7F3, 0x1C45BDFA, 0xB70BF81E, 0x0EF3DEE6,
+0x1FE0F8FA, 0x230D0C06, 0xF1E104F8, 0xFBBD2D0C, 0xC9F80F1C, 0xFCF6F11D, 0xE60C41F7, 0x4008071A,
+0xFA04E7DD, 0x0C45340F, 0xBCF6F8E2, 0x09E1E346, 0xE0EEB90B, 0x0D020DEC, 0x0E1ACA00, 0xB9F5FAF8,
+0x0DF7DFE4, 0x1C1944F1, 0x440B0806, 0x0909E41C, 0xE1F9F8D2, 0xB7030C0D, 0xF111DE24, 0x1D1EBCBA,
+0xCD08090B, 0xF80CF41F, 0x09E1E2BA, 0xBBE60A0C, 0xF606E20D, 0xE200F7D9, 0xF53FF413, 0xF8FC1BE9,
+0xDE2005B9, 0xBCD010F4, 0x09F6E309, 0x0315D6ED, 0xE5BCF0FE, 0x07F6F5E2, 0x1A19F2C0, 0xB811F906,
+0xF20422E9, 0xE2F3BB34, 0x1CCA0AF9, 0x07050C0E, 0xE11AF9F2, 0x080CF407, 0xF3081FE5, 0x081830C0,
+0xCA45F505, 0x040AF1E2, 0xE30BF61B, 0x3CD10A07, 0xFE0D1507, 0xF52032B9, 0x2DF5090C, 0xF10A051D,
+0xDF23B9FC, 0xBCBF0D10, 0xF7FAE319, 0x1D0BF61B, 0x43F600F8, 0x081DE50B, 0x0AF7320A, 0x37F4F6E2,
+0xFC1710C2, 0x1CE24203, 0x35F508F8, 0xFAE00EF9, 0xF1CBCA0D, 0x3EFA050E, 0xFD1EE90A, 0xF4E8E4F5,
+0x1905F90E, 0xFB210EB7, 0xDE4105F3, 0x05FAF1E7, 0xF1E4DFF6, 0x081F1EF6, 0x090B0AF8, 0xF51BE343,
+0xF8E6E2F9, 0xE2FA0A0D, 0xF71B0ABF, 0xF3F2E607, 0x07FAFB19, 0x0EF8DFD0, 0x100C180C, 0xE4F7FD1C,
+0xF9E70BC0, 0xE6D2F4FB, 0x380C0808, 0x0319EFBF, 0xF6D1CE05, 0xE90CF707, 0xFDE30F09, 0x2047F90B,
+0xE2F3F321, 0x0A1AF80D, 0x1BBDBEF8, 0xF608071C, 0x0AF11DCB, 0xE8FB0FFB, 0xD40F0522, 0xF207062D,
+0x1CE1BD0D, 0x2E0BF808, 0x1900F90D, 0xD1E1FA0D, 0xF50BF8F9, 0x1DEE4415, 0x44D60900, 0x0A11E2FD,
+0xDEF948DF, 0x42310EF4, 0xF809E4F6, 0x090D2FE6, 0xBCF2F506, 0x09F91D1A, 0xF20DCCE6, 0xCD39FA06,
+0xF8FFF513, 0x2011F8C9, 0xFA480D03, 0x0E0DDF21, 0x1AE1F309, 0xE61F07F4, 0xF90B0C07, 0xEBDCC5B6,
+0xD2CEFFF0, 0x0D0AF90A, 0xE2F5BCCE, 0xBF08F609, 0x07F51A1E, 0xE3E0BBB9, 0x08C2F60D, 0xF403E2E9,
+0xE11D0709, 0x35E20D0A, 0xF9090D09, 0x09DED148, 0xC2CC0B0E, 0x03FA17F3, 0x1A124116, 0x43CEFAFF,
+0xF9F61BF6, 0xF81C1FBE, 0xC1290BF8, 0xFCED18FF, 0xE9E5C241, 0x430CFD07, 0x09F8E31B, 0x12F83A2F,
+0x00B9010C, 0x0C1F2009, 0x06E2200C, 0xCEF60D09, 0xF7050B2B, 0x012025F1, 0xE1F51208, 0xF604F724,
+0xE9BA3EF1, 0x30F40320, 0x0AE0F607, 0xE303450D, 0xFCEF0ADC, 0x10F6DDD0, 0xDCE3FCF6, 0xB609EFF7,
+0xF1E7DD3F, 0xF9BDD3FB, 0xF509F31D, 0x090B1CCD, 0xDEF0FB08, 0xCEFC0FE9, 0xF8FAF4E0, 0x193AF2F4,
+0x09000613, 0x0B051E22, 0x282F4F0E, 0xF7F41408, 0x0B061D20, 0x1AE442F4, 0x1FF8F90B, 0x0BE208BC,
+0xE8B70F0A, 0x1AF20622, 0x05DF0DB8, 0x0BD2CEF3, 0xD60DF707, 0xEF0E0318, 0xE3340AFB, 0x3007F6F4,
+0xF61F0A09, 0xE110460C, 0x16FBF418, 0xFEFBEFDE, 0x0DD31A0E, 0xBF0D0607, 0x07F91B1F, 0x221DF400,
+0xF2F705F6, 0xE6F4F2E5, 0xB8E007F9, 0xF4F520F8, 0x0709D3D0, 0xF3F70DF5, 0x070C1AE1, 0xE3E4440B,
+0x20F5F7F7, 0x0C09F9E4, 0xF508CFD1, 0x31F5090B, 0xF6090A1C, 0x0400D4D9, 0xCC4B0FEE, 0xF8100CDC,
+0xDE214949, 0xBDD10EF2, 0x08F5E509, 0x22E506BE, 0xE1CEF107, 0x0AF7090B, 0xE620F346, 0x1CE2F90C,
+0xF8F60B08, 0xE7E2400A, 0xBCBD05F5, 0x0908E31C, 0xF119E70E, 0xE3B90406, 0xF8F30A20, 0x0A0CD0CE,
+0x2333F608, 0x0F08FCF4, 0xDE1DFBF6, 0xDA49F0F6, 0x120EFFDE, 0x1CFC4222, 0xCB19F80E, 0x06FAF30D,
+0x191DF30A, 0x46D1FAF6, 0x0C0B20F8, 0x071B200D, 0x3ABCF408, 0xF613001D, 0x0848D0FF, 0x48F30BE0,
+0x0D1B20F5, 0x05F2DD08, 0x35070E19, 0xFA22F249, 0x113616F1, 0x44FCFFF0, 0x09F3E31A, 0x191E40FB,
+0x11F5FB08, 0xFDF716D0, 0x0908E20A, 0x21F309E0, 0x0C0CF9E6, 0x0AD1E4FA, 0x02F4F808, 0x11212448,
+0xF328E60E, 0x33EDFA00, 0x080EF4CB, 0x09C3CF06, 0xB502F5EA, 0xEF1D24F7, 0xE41F440A, 0xF1F509F8,
+0xFAF3E71A, 0xF9F81F06, 0x30F3F5E1, 0xF50DF8CC, 0x1CE1BDF9, 0xB40AF709, 0xEEF326CC, 0x2345FC07,
+0xB809101D, 0xF220DE47, 0x18CDF10C, 0x2608FB0C, 0x12FBFFD4, 0x25034DF1, 0xFAEF12DD, 0x0D22E0B6,
+0x0E1C35F2, 0x09F9FAF4, 0x0B03E3DC, 0xE4001B10, 0xF8070BF4, 0x1C1CF6F6, 0x09BC0A09, 0x0C091F1C,
+0xDCF9FDE0, 0xBA0312F4, 0x0C1220DB, 0x0EF536CE, 0x1D3FFA09, 0x09FD0A17, 0xF5F432E5, 0x2EBB09FA,
+0xF40A08E2, 0x2311B617, 0x1042F102, 0xFB0718E6, 0x1B0642D2, 0x31D0F90E, 0xF5F6090A, 0xE61C41BD,
+0x0AF0FA08, 0x0B051EE9, 0x03E0DC47, 0x210610F4, 0xF3F2FA20, 0xE522F3FA, 0xD2F708F1, 0xF4F5F81D,
+0x0C1FE409, 0xE1DE070C, 0xF50D08FB, 0xF01CC9F4, 0x0DF6FC09, 0xF8F7E61C, 0xF70630DE, 0xD045F50D,
+0x0CF5F81F, 0x1C250CB4, 0x36CA0911, 0x0405100F, 0x171F1047, 0xBBE3FC0B, 0xF609E20A, 0x1CF943E0,
+0x1D01F80B, 0xF7EE0A25, 0x0AF2D0E6, 0x1BF2F605, 0x07FA0CE8, 0x061C21BE, 0xDCBEF3F8, 0xF10703E5,
+0xF6051C21, 0x3F1D090E, 0x04F718F7, 0x0DE83340, 0xC141F905, 0xFCFA17E6, 0x1CF1F435, 0xBFBFF7FB,
+0xF9F9E5E6, 0x19F3C11B, 0x20E40506, 0x0BF9070C, 0xEA09C4E1, 0x491F020A, 0x0E0A21F8, 0x1B1A0DF4,
+0xF4F4F8F8, 0x09F7E51C, 0x172311FB, 0xCEFB04F0, 0xF80F0CDF, 0xE3E1F6F7, 0x18F40B0C, 0x030810E5,
+0xE7E04148, 0xE4F505F3, 0xF90A0CE4, 0x1E28F74F, 0x2F460BEC, 0x0CF40820, 0xF309CBE1, 0x3220060A,
+0xF70CF506, 0xDF1AFBF3, 0xE82CF107, 0xFC0FF1FB, 0xE5F9F41F, 0xD4E2F80B, 0xF0F7FC0A, 0xE92110FB,
+0x04F20000, 0x0A1DCEBC, 0xB91E0A09, 0x0CF5E008, 0x22F40632, 0x11090F08, 0x03F6EA1D, 0x17F6F130,
+0xB8F905F6, 0xF2F2DEDF, 0xE3DE0AFB, 0x4A2C0B0F, 0x0E0F2204, 0xE20DF834, 0x303DF407, 0xF501F7EB,
+0x08E31FBD, 0xCC4AF509, 0x07F10D23, 0xFD202406, 0x4B110F0E, 0x0F03DD15, 0x250CB5E5, 0x0030EF07,
+0xEC0AD9F6, 0x1E07BBD1, 0x4435F60C, 0xF605E30F, 0x08F42FCD, 0xBA34F408, 0x0B071EF3, 0x09E81EC0,
+0xC71C0A05, 0x010713F4, 0x05052322, 0xBA31F2F2, 0x0AF71E0B, 0xDF1E48F7, 0xF5D10DF5, 0x0A0D1D07,
+0xE0E4070B, 0xEEF90E09, 0x020DEB1F, 0xE3F60A31, 0x1C1CF609, 0xF8F80AF6, 0xDFE6070C, 0xF40F0E08,
+0x07061A19, 0xE2FAF6DF, 0x0E09F50D, 0xFAF4E71E, 0x0BE2CDBB, 0xC9CE090B, 0xFC080FF5, 0xDFE8063F,
+0xE7CBF1FC, 0x06FA0DF3, 0x100EC9CA, 0xB7F203FB, 0xF2F9DE19, 0xF91C2D43, 0x1D440D08, 0xF7F60A1E,
+0x1CF60C31, 0xB5F4F70A, 0x11F7251C, 0xFBFA2220, 0xEF43F3F3, 0x04F717E3, 0xEEF2C736, 0xDBBAFE05,
+0xF00AFD1E, 0xEF08371F, 0xF7E203F6, 0xF4091FF6, 0x1EDDBBFC, 0xB732F6F0, 0xF309210A, 0x1CF50A1C,
+0x06BB0908, 0x0E0B201E, 0x050C2C1A, 0x37350EFA, 0x03FB11F1, 0xDD234A04, 0xCFDE0F10, 0x09F20B05,
+0x1C220B48, 0xBACB090E, 0xF506E1F2, 0x16223D48, 0x000002F2, 0x1B240CFE, 0x46CFF712, 0x0CF61FF6,
+0xE60AF31D, 0xFE3407F8, 0x1206DBF2, 0xE41EF545, 0x07F6F7F6, 0x0C0B1FE3, 0x09FDE1DC, 0xBF390AF1,
+0xF9021B12, 0xE8053FD4, 0xCA35040F, 0x05FAF1F2, 0x070F2035, 0x31050CFB, 0x09F10BDF, 0x1F21F7B7,
+0x352E0C0D, 0x06F40DF8, 0xF424E54A, 0xF60CF9F0, 0x0BF7E21C, 0x0C1E1B09, 0xBDD4F9F5, 0x090E1CFB,
+0xF5EF1C17, 0x32E6F802, 0xF7FAF5F3, 0x25F202E7, 0xBE44EEFB, 0x08091CE3, 0x0504D522, 0x442E0F0F,
+0xF70C1D07, 0xF917D23E, 0xF208F3FC, 0x050DE8E0, 0xE5E142F7, 0xD247F9F4, 0x0CF407E0, 0xF921E0B8,
+0x09E1F4F3, 0x0AF4E3F9, 0xF4F1E436, 0x13F40705, 0xFFF8EDE5, 0xE41B44F3, 0x0AFA0808, 0xF6F31C20,
+0x2222054A, 0x1B1C0F0E, 0xFAF8F3F5, 0x0C1DE6BC, 0xBF4CF909, 0xF911E524, 0x1FE1BA47, 0x0C07F5F5,
+0x090D1C20, 0x0B0BCEE5, 0xFB1E0907, 0xF00923F6, 0x0EEB3511, 0x061506FE, 0x0E0021ED, 0x081F2047,
+0xE3BD0BF4, 0xF708F6E4, 0xF5091B2F, 0x304407F5, 0x0AF709E3, 0xE3F4BD1C, 0x1CCCF707, 0x0806F6F2,
+0x1C1143C9, 0xCE48F803, 0x090E0BDF, 0x14EFC5C8, 0x422401FD, 0x08F01CFD, 0x20E6B940, 0x2AE7F406,
+0x10FBFC0E, 0xF5F5CFE5, 0x0B09F708, 0x08F4E5E1, 0x0AF8E330, 0xE22EF70C, 0x090EF7FA, 0xF6E01D48,
+0xCEBA09F3, 0x0B1F0000, 0xFB2BF70C, 0xF2F02104, 0x2123494A, 0xF9F4F20F, 0xF20920E4, 0x0C1932BF,
+0xD3340805, 0xF2F9060D, 0x22F7FCD1, 0xCCCBF10B, 0x07050D0F, 0xDBDEFE06, 0xE6E413F1, 0x06F70C0A,
+0x220BFC1C, 0xC704F0F8, 0xFE0FEEDE, 0xE7F50DE5, 0xD0CDF907, 0xF5F8F70C, 0xF60830E0, 0xF5340AF5,
+0x09071CF3, 0x07F8E0D1, 0xD41E0CF4, 0x0EF6FA09, 0x181A10BE, 0xBABBFBF9, 0x0C09E1E3, 0x061821F1,
+0x04E80D06, 0xF0FB230E, 0xE5F6F430, 0xE00D090A, 0x0BF90719, 0x061DDEF6, 0x32BBF3F6, 0x09F60BE2,
+0xEAE2EF45, 0x0B1D04F5, 0x0A09E30A, 0x0EF5E81B, 0x22C1FBF8, 0xF105FCE7, 0x0023D849, 0xB83F130F,
+0xF3FB21E8, 0xF2F8E7D2, 0xE330FB0C, 0x08F60BF7, 0x06E721F2, 0x2E1F0D06, 0xF4F50708, 0x051AD440,
+0x493F0FFA, 0xF205DEE7, 0x0B1932F3, 0x370D08FA, 0x03F8EF1B, 0x0EDF19FA, 0x33D1050E, 0x080B0C09,
+0xDFF506CE, 0xE3F60EF7, 0xF8F6F5E3, 0xE1060721, 0xD317F4F3, 0xF2FEFA10, 0x2304B622, 0xCC4BF10E,
+0xFAF0F2DC, 0xE1EABAEF, 0xB646F503, 0x0F0BDEE1, 0x1E1CF7F6, 0xF3BA0BF6, 0x07F4E61F, 0xF1203507,
+0xCF36FBF3, 0xF7FBF50E, 0x1EF7F71F, 0xE50F0B0A, 0x0805F518, 0x1FDF4507, 0xF8400BF2, 0xF505E219,
+0xF3F733E2, 0x4523F90A, 0x0AF11EFD, 0x191CF243, 0xF9CDFAF8, 0x000021F5, 0x0B2F0E09, 0xF60DE3F9,
+0x070DD1CB, 0x11F90C07, 0x03F2EBDF, 0xE6DF4149, 0xD334FAF3, 0x0E06FB0D, 0xFFF5D932, 0xD0FE13F7,
+0xF512F8DB, 0xE020BA48, 0xE0D10C0C, 0xF50BF8F8, 0x1F0D0733, 0x0AE20D07, 0x09091C0A, 0x271D4DBD,
+0xCB321309, 0xFBF8F1F4, 0x1DFB452B, 0xE4C9F60F, 0xF9FD0B10, 0x1F1CBAF5, 0x2EE60B0A, 0xF2F9060C,
+0xE8060FD2, 0xCD1CFB0D, 0xF7F8F50B, 0x0F04362C, 0xCD49FCF1, 0xF80D0C21, 0xDFE6B90D, 0xFFE0F3F9,
+0x140CD9FA, 0xF2F4E71A, 0xC4F905FA, 0x02F31620, 0xFA1ADFF4, 0x2C460C07, 0x0EF6FA1E, 0x1F0FBA36,
+0xBA320B05, 0xF409E1F5, 0x03DF2449, 0x061F100E, 0xF2F4DFF9, 0xF7F62F1C, 0xC3450BF7, 0x03F616E2,
+0xF3F6CDE3, 0x2E35F909, 0x0D0606F2, 0x15F912DF, 0xF4D102F4, 0x080C1B08, 0x050FDECB, 0xB11DF205,
+0xEC09270A, 0x1BE0F407, 0x32E308F2, 0xF809F4F6, 0xF0223749, 0xF03004F1, 0x040BE9F7, 0xF9E5D2BE,
+0xF4460DF8, 0xF80C1BE0, 0x240603D3, 0x422F120E, 0xF8F4E4F8, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xE2000000, 0x0B100818, 0xF4CAE5FD, 0xFD05FAF1,
+0x11FCDDDD, 0xF6CDCF0F, 0x22F80AF5, 0xF209FBD0, 0x06CDD4F5, 0xF609F20B, 0x0AF9E3E0, 0x12F7C80C,
+0xE20C021F, 0x0A0BF7CE, 0x08DCD109, 0xB9F10CFC, 0x0D0DDFE5, 0x0CE1CD06, 0xCC0B08F8, 0xF9E90CF0,
+0xDEBB4904, 0xCE0AF11E, 0x08E20BBB, 0xE7E40E0A, 0x19F8060B, 0xFA10F336, 0x0947E3FC, 0xB5F3F720,
+0x10E124F9, 0xE2F1090C, 0xE0050BE8, 0x0CEF07EA, 0x04FC23FE, 0xCF10F2DD, 0x091F0B46, 0x001DD9F5,
+0xF409EE0A, 0xF81CE5F5, 0x0EFCE609, 0xFDF00523, 0xF00A2330, 0x1DF544F6, 0x1AF7F6E5, 0xF9F8F41E,
+0x1BD0F3F5, 0xF30B0809, 0x001A1BF4, 0xE74308F8, 0xFAF80D1C, 0xF2F8CBD1, 0xFA08FA0B, 0x0EF421E1,
+0x13F4C533, 0x18CE00F8, 0xFC080E0B, 0x200DB919, 0xD00A0C06, 0x0BF6081D, 0xF408E6D1, 0xBBDD070C,
+0x0B10E203, 0x1EFB0921, 0xF7CA0BF3, 0x0BFC1EF0, 0x1D1BF7F5, 0x1EE5F508, 0xF6FA080D, 0x090DD11A,
+0xF72BF505, 0x0AF11D05, 0xE307F6D2, 0xFBD30B0D, 0xF2F22106, 0xDBE1B307, 0x1C32EE0C, 0xF909F4F6,
+0xD9F84E2E, 0x2ECD140C, 0xF309F90B, 0xFADDD349, 0xE7340E0F, 0x04FAF1F2, 0x2309B531, 0xE0300F0B,
+0xF40A06F6, 0x0CE21A0A, 0xDDC9F90B, 0xF2FBFC0F, 0x090931CF, 0xFFCA0AF6, 0xEE0425F0, 0xF7053121,
+0xF8190BF3, 0x05E0F300, 0xF72D2FF3, 0x410DF5F9, 0x07191B0E, 0xF1D0E907, 0x0DF5FCF8, 0xF920E607,
+0xE8DD0FF3, 0x060F0504, 0xF3E220F8, 0x07FF200B, 0x3413F4DA, 0x07DD0D04, 0x1FBB0810, 0xB8F6F41E,
+0xF3F9212D, 0xFB3223F3, 0xF708F20B, 0xF41F1FBA, 0xF444E6F4, 0xF7F6FAE2, 0x0B03E2DC, 0x23114AF0,
+0x1B031016, 0xF9190BF2, 0xE4E2F507, 0x0AF60909, 0xF5181E0E, 0xE5B641FA, 0x1F0FF9DE, 0xF51BF9BE,
+0x0D3535F9, 0x0D05070F, 0xF8F6E5CE, 0xE21EBBF6, 0xCC090BF6, 0xFAF7F230, 0xDB484DF5, 0xFCF3EE21,
+0x110524D5, 0xF8F72FF1, 0xFA0BF41D, 0x0DE12008, 0xFABD21F3, 0x3FF7F4E4, 0xFB0E1919, 0xFAF40005,
+0x0EF821E6, 0x170BF032, 0x2DC20408, 0xF204FAE8, 0x17180F0E, 0x0AF1FCFA, 0x0BFAE3E8, 0xF9F9D2E0,
+0x4CBAF30B, 0xEE0CDAE0, 0x0C1032E9, 0x062AF803, 0xF210E0FD, 0x1B0C0DCC, 0x45C408F8, 0x0B021E16,
+0x1C0B0B1C, 0xCC1AF708, 0x07FAF3F3, 0xF5F2CECC, 0xD131F7FA, 0xF309070B, 0x1E0ABBD0, 0x36F40B0A,
+0x05F7F11B, 0x1E08F82F, 0x4618F40B, 0xF6051EF2, 0x1BD9BFB1, 0x0A0807ED, 0x0A0D1C1F, 0x1DF70BD1,
+0x1BC8F6F5, 0x06FCF310, 0x08DE2E06, 0xD1DFF40F, 0x0CF40807, 0x1F0C0933, 0x0949F4F8, 0xF4F2E1DE,
+0x1C1EF4BC, 0x06F909F6, 0x0D0D2020, 0x1FDF4505, 0x31E10B0E, 0xF600F609, 0x063DE0F7, 0x21FEF3EA,
+0xF4F3071B, 0x08F9E1FA, 0xDEF2F621, 0xF3FBFAD4, 0xF621E40F, 0x090D0806, 0xF4251FFD, 0x0908E212,
+0x46F40AE1, 0xF5011ED9, 0x0AF71CED, 0x20F4081F, 0xF328FA4F, 0x02E528EC, 0xB6FAEEF3, 0xF1E5DDF4,
+0x1BCCF5F7, 0x4CF808F4, 0x11E225F7, 0xE32D0BF5, 0x23F3F6FA, 0xF11704C3, 0x1C4CF403, 0x2FF0F724,
+0xF51AF7F3, 0x0D1FE6F8, 0xBB0BFA08, 0x090B1D1C, 0x1CCCF508, 0xBB0609F2, 0x0BE11FF9, 0xDD31490C,
+0x28F70F0B, 0x12F3FEE5, 0x1FCDBAFA, 0x18F90BF4, 0xFCE20E08, 0xDA4A00F5, 0xD20F14DD, 0x0C1C08F5,
+0xEEF1ECF7, 0x2BFA0018, 0x10E8FC10, 0x1ED2F7FB, 0xE80C0C07, 0x04F70F1E, 0xDE38B70A, 0x00FDF2F0,
+0xECF7272F, 0x1D07BCF5, 0xBA0C091F, 0xF41E20BB, 0xE6CF0DF6, 0x0FF6F809, 0xFAEDE7EB, 0xE7EC0E00,
+0xDB00F9ED, 0x12F7FF1D, 0x08E430F7, 0x2FF9F5F4, 0xF4F4F8CD, 0xDDCF0307, 0x14F6F00A, 0x00F3ED34,
+0x2233B706, 0xF4F9F2F3, 0xF70DE4CD, 0xF630E207, 0x0BF5F7F8, 0x09F71CE2, 0x1D36BC09, 0xF90509F2,
+0xF31E1F08, 0x083FE20B, 0x32FCF617, 0xF7220B05, 0xF320E60F, 0xF30B0608, 0x08EF1B38, 0xF4BCCC03,
+0xCA0AF8E2, 0xFC1B100B, 0xF5CDCEF7, 0xE1F8F7F4, 0x0B220805, 0xF1BDC90F, 0x250805E4, 0x101EFDBB,
+0x09E6E20B, 0xCAFA0A0D, 0x1EF10900, 0xE1CE0CFB, 0x0BF7F8F5, 0x0E2035FA, 0xE0C905F2, 0xF4FDF911,
+0xF71FD0F7, 0x08F5F5F4, 0xF3F7E0E5, 0x0C23CDB6, 0x0DE7F80F, 0xF9041A0F, 0xEAF811E1, 0x48D4FDF6,
+0xF2102204, 0xE51F0CF7, 0x4634F70C, 0xF5081E0C, 0xE20446DE, 0xB6CFF50F, 0xF1F6DD0A, 0xE725C04D,
+0xCC3005EE, 0x07F60C0A, 0x18F6C11E, 0xE61B05F7, 0xFAF9F3F4, 0x1407ED2E, 0x34D0FF0C, 0x07F5F3F7,
+0xF51C330C, 0xDD1DF809, 0xF108030B, 0x03F4D61A, 0x46CD1106, 0x0B09E1F5, 0xF41BE50D, 0xB90BF908,
+0x0C0A20E3, 0x0DF21AE8, 0x1C2DFAFB, 0x080EF5FB, 0xF6F8CE1F, 0xEF41090B, 0x040717E5, 0x20DDF94A,
+0x2F0D000F, 0xF4FAF922, 0xDDE04AF3, 0xB70CF0F9, 0xF10E23E8, 0x10F836FB, 0x0B0D04E0, 0xF7E0E407,
+0x1D46F6F3, 0x16F5F6E1, 0xFF1D12BD, 0x1FF2BA09, 0x42F90C1A, 0x08E2E4BA, 0x20BDFAF5, 0x33F70EE4,
+0x07E1F3BB, 0x1CE2BDF5, 0xE00A0809, 0x0CF5F931, 0x1D1D0AF7, 0xE3F7F6F7, 0xF8DC0AB6, 0x08CE1FF0,
+0xE3F80BF4, 0xF70EF6CB, 0xED461405, 0xFC0C00E0, 0x0FF8DE2F, 0x1EBC45F5, 0x47F70B1C, 0x0C0620DF,
+0xFAF42CF3, 0x4708F2E5, 0xF41FE145, 0x092F310B, 0xF20C0BF8, 0xFAE31944, 0x0CE4E509, 0xE008060B,
+0x0BF50831, 0x0521DDF7, 0xF3F30E06, 0xF8E4E5F5, 0x2110F9F7, 0xB704F2E9, 0x2300DD04, 0xB747F00F,
+0x0DF5DFE1, 0x1AE7F3C1, 0xD216F905, 0x0C01F8EF, 0x25E3020A, 0x1FBDEE0A, 0xF6F8F81C, 0x1F1F4507,
+0x11D8F50C, 0x0312EAFE, 0x1A044122, 0x2FCDF90F, 0xF4F8F80C, 0x13F51332, 0x46B40109, 0x0BEFE225,
+0x19F4C0E6, 0x48DE05F9, 0x0C0D2005, 0xE4DBBC02, 0x45F8F812, 0x0AF41EE2, 0xF61A30BF, 0xD035F606,
+0xF505090E, 0x09F6E3CF, 0x39B6090A, 0xFEF2EEDE, 0xF206CBE0, 0xE6D6FA0D, 0xFB12F202, 0x07F8D3D2,
+0xF91B0D0C, 0x0CFAE10C, 0x0E0634DF, 0xBFCDFAF3, 0x0608E70C, 0x09E71EF2, 0x0DCCF6FA, 0xF807E50D,
+0x0FE5170C, 0x21CA04F8, 0xF3FCFAF0, 0xDBF9FD2E, 0x0045EE0C, 0x0AF21E35, 0xE516BD06, 0xBE02F911,
+0xF8F91B2E, 0x2104060D, 0xBC100E22, 0xF71F1CB9, 0xE1E7F70C, 0x1E050CF2, 0xF6E8F70F, 0xF3E0E6FA,
+0xBC0DFA06, 0x0AF5E21C, 0xE01BFA08, 0xE3F8F3F5, 0xF8E20A46, 0x1CB90C0B, 0x370C0920, 0xFCE4F0BC,
+0xE7F6F2F8, 0xDE0BFAE3, 0xF307FAE0, 0xE10647F5, 0xF9F3F4E0, 0x0CE2E1F7, 0xF8BB30F5, 0x1F0AF4E2,
+0xF5F4F833, 0xF6F81EF8, 0xE6F5F71E, 0x06FAF321, 0xF9CE2D0D, 0x24F80DF4, 0x0F0C04E5, 0x19C5C0F9,
+0x230006ED, 0xF1F3FDCC, 0x0CEAE607, 0x09FEF910, 0x0BE1E246, 0xF2201AF5, 0xCFF405F9, 0xF61D0909,
+0xE44AF5F5, 0x2B10F724, 0x0F1F0507, 0x2DD30D00, 0x0D0EF9FA, 0xE41743F0, 0x22E6F8FB, 0xF3F9FBF4,
+0x1DFA0A2E, 0x0AE7F60E, 0xF7FA1C0D, 0xF3F21A34, 0x3810FAFA, 0x0404F017, 0xF91DD30A, 0x30CF0DF6,
+0x0B0AF7F6, 0x0C1D32BB, 0xF3C90809, 0xF9FBE60F, 0x0B1FE445, 0xC311080B, 0xFD03E9EA, 0x0C051BDD,
+0xD5D3070E, 0xF00D0407, 0xE007B91F, 0xE6C2F30B, 0x06FD0DE9, 0xE2F6081E, 0xD2F8F4F7, 0xF30B07E2,
+0xF4E0CEB9, 0xFDBA080C, 0xF0F5DD1F, 0x06102117, 0x3217F303, 0xF602F6F0, 0x1CFBF522, 0xD036F70E,
+0x0BFC09F0, 0xDD09FCD1, 0x1932100B, 0xFCF8F1F4, 0xFE0C241C, 0x194410F9, 0x06F7F3E4, 0x04222348,
+0x49F00FF2, 0x042300E9, 0xE307440F, 0xFAF2F7DF, 0x0F1D2145, 0x24D0FC0A, 0xD90B11F7, 0x13E400F5,
+0x2741FFF7, 0x46FA14E6, 0x0B101F36, 0xF1F8E9FC, 0x30F4FD1F, 0xF6E20A44, 0x0DB6E60A, 0x460FFA22,
+0xF509E1D0, 0xE035060A, 0x1E05F30E, 0xF70CF634, 0xF6B9CF08, 0xF0F40A20, 0xFC21E9FA, 0x0F05E90E,
+0x1FF004DE, 0xF61609F0, 0xE1F407FC, 0xEBF90CE6, 0x000BED1C, 0xFA2BD4F8, 0x4A100EFC, 0x1009241F,
+0x21DCB8F6, 0xF20F0DFD, 0xFAE4E70A, 0x0B171CF7, 0x0C03F810, 0x08E51BF4, 0xDC074BF8, 0x200EF0E0,
+0x0BE5F9F4, 0x1D1F09F8, 0x17F5F608, 0xFC07F1DF, 0x04CCDDF4, 0xD1F9F10D, 0xF5E309F6, 0x1A00CE0A,
+0x06F8F40C, 0x0A25E24C, 0xD1CDF712, 0xF40807F4, 0xE4E442BD, 0xBECC0808, 0xF8F9E4F3, 0xDC194B0D,
+0xE42D11FA, 0xF90D0C07, 0xF7F4311C, 0x240EF5F9, 0x10060318, 0xEB1F1107, 0xF8E7FDF3, 0x0C04E10F,
+0xE0E207F8, 0x392EF30C, 0xFFF3EE07, 0x0CE61BF4, 0x421BF907, 0x06061A0D, 0x22F9FBD2, 0xE40B0FF3,
+0x0909F61C, 0xF40F1BCB, 0xE2F8F905, 0x0A0CF81F, 0xF10E36CB, 0xBF310506, 0x07F5E609, 0xE20945CF,
+0x35460B0B, 0xFB0C0E20, 0x170AF0CF, 0x2FCBFC0A, 0x0C0508F2, 0x0BFB332D, 0xCBB7090F, 0x060EF322,
+0x0D0D1935, 0xE61E05FA, 0x060B0DF8, 0xE5044224, 0x3D08070F, 0xFE0CEAE1, 0x1F1F4546, 0x17F7F50B,
+0xFD0BF01D, 0x0BE3E4BB, 0x45F40709, 0x0B09E1E4, 0xFBDF21B8, 0x2C2CF2F3, 0x0F0E05FB, 0x0EF8191F,
+0xF347FB0B, 0x060C19E1, 0xE409F5E1, 0x1BE1F7F6, 0xF8F50BF8, 0xDAF24DCC, 0x1C2CEE06, 0x090F0A05,
+0x0BE23344, 0xC01A080A, 0xFAFA1A0D, 0x1EF5F81B, 0x45FB0BF8, 0x0B0FE2DF, 0xE51D420A, 0xF702F90B,
+0x0C12E2DB, 0xF510CDC9, 0x28CB0904, 0x13FB00F2, 0x0A0E1DCC, 0xE3BBF706, 0x080A0B1E, 0xF20935E2,
+0x0633060A, 0xF208E00C, 0xF9F320E6, 0x1F0EF4FA, 0xF50608E7, 0x17F43D1B, 0xBA0BFD07, 0x0CF7E01C,
+0xF61F3047, 0x11B8F60C, 0x030D1620, 0xF7F13036, 0x13F5FB00, 0x02F9ECE1, 0x03E5DD0B, 0x1707F1F4,
+0x0308F01E, 0xF32334F5, 0xF80FFAFC, 0x0C0F1F36, 0x0D2FCDFB, 0xE3F40708, 0xF7F5F733, 0xDB04FE09,
+0xC0101223, 0xFA1EE6BB, 0x0BF31CF6, 0x030808E5, 0x111C230B, 0xE11FBA0A, 0x35F6F5F7, 0xFAECF2C6,
+0x05BF2C00, 0x48FA0E19, 0x0CE8203F, 0xE5D3BF05, 0x0E0E07FA, 0x07E7E63F, 0xF3D4E7FB, 0x01F10505,
+0x130EDB35, 0xE30DF606, 0x1E080A1B, 0x0AE1F8BB, 0xDDBCFBF5, 0x06F7F0E3, 0xF206212E, 0x1B49BEF2,
+0x340EF921, 0xFA0A0E1E, 0xF825D0F7, 0xD311F5FE, 0xF222FB48, 0x1DF9F60E, 0x1E0EF521, 0x090F0AC9,
+0x20DCB804, 0x45F0F4FD, 0xF3E100E7, 0xE1B8FBF5, 0xF50D07DF, 0x1DF6BC1D, 0xCC060909, 0xF9F20DDF,
+0xF4F93320, 0x080B08F4, 0x0CF71FE5, 0x0FF736E3, 0x2B4105F7, 0xF005FC19, 0xE112BBC8, 0x25F90BFE,
+0x110DFEE1, 0x1719F040, 0xB8B9FB05, 0x0E0BDFE1, 0x00E1DA46, 0xB7E112F5, 0xF2F622F7, 0xE009471D,
+0xDEBDF4F6, 0x0EF8FB1C, 0x0A0B31E3, 0xDBCE0AF8, 0x100902F5, 0xE11CF8BE, 0x442D0D08, 0xF8F3E407,
+0xE70A0F31, 0x46FEFA0A, 0x0A121EDB, 0x1D1B44BE, 0x17300907, 0x030BF0F8, 0xE9F3C2CC, 0xF235FDFA,
+0x07FB1AF1, 0x21E6F9C0, 0x12F8F206, 0x03F315E0, 0x1C05BDDE, 0xCBCF080E, 0x06F70E0A, 0x0C0D3435,
+0xBB0007F9, 0xF5E3E1F6, 0xE11B070A, 0x19070C0B, 0x06140DC4, 0x0935E201, 0xF006F7F2, 0xFC0C171A,
+0xF409CDFA, 0x30F5081E, 0xF5F3F7E5, 0x21D9F906, 0x31EE0E00, 0x0AF60A32, 0x0631DEF7, 0x200BF3F7,
+0x0C1BF90B, 0x07CDE0F8, 0x38F9F50D, 0x03221005, 0xF3491AF1, 0x30F1FA22, 0xF6E90AC3, 0x1FFBF803,
+0x21F0F4DE, 0xF40A07CF, 0xF71EE20A, 0x430AF6F8, 0xF824E403, 0xE625F211, 0x1EEF0702, 0xF7F70A1D,
+0x24DCFD0A, 0xBFF1EEFC, 0x0604192B, 0x10F7CAF0, 0x310AFCE3, 0x09080B1F, 0x0831200B, 0x3309F50B,
+0x0821F4F9, 0x08CF2F0E, 0xCDF60CF6, 0x0720F3BA, 0x0F0D36F4, 0xE3F8FBE6, 0x00200BB8, 0x1DF80C08,
+0xF6F3F7E0, 0xE70D41E6, 0xCA09FBFA, 0x050B0F1D, 0xF4FB1A2C, 0xB32007F1, 0xEFF42507, 0xE4DD0A4B,
+0xDE32F6F1, 0xF109040B, 0x0A061CDF, 0xC6D0080D, 0xFE0B1209, 0x23010527, 0x092BF012, 0xF510E3FC,
+0x0EF6E81D, 0xCB48FCF7, 0xFAF3F3DF, 0xF823D149, 0x0AE7F4F1, 0xF6051D0D, 0xE007B92E, 0x222FF30C,
+0x0D0DFB07, 0x0FFA36E0, 0xC5F3FCF4, 0x0008EC1B, 0x1EE909F1, 0x0BF90C05, 0xF7F21CDF, 0xFA1E2009,
+0x2E08F4F5, 0x0C0C08E1, 0xF9F620E4, 0x3033F4F8, 0x0B08F70C, 0x0AFA30D3, 0xE3F40A0E, 0xF608F7E6,
+0xE1E4BA44, 0xCDBA0B08, 0x070BF3E1, 0x1EE5F8F4, 0x31440B08, 0x0A0AE200, 0x0943E3F7, 0xB8F8F7E5,
+0xF22321B6, 0x21E1B9F1, 0xB9F5F3F8, 0xF4F41F1B, 0x09F1E2F9, 0xC0FB0A18, 0xFCF6E832, 0x08372FF7,
+0xBD030B10, 0xF722E448, 0xF5301D0E, 0xE90C0808, 0x032410FD, 0xF5061C12, 0xDD0EF8DF, 0x0F23FCB6,
+0x0719210F, 0x05040C0F, 0xF11E2208, 0x09D0CFF4, 0xE40AF6F6, 0x0702F4DA, 0x0BBECE11, 0xD408F71B,
+0x0E1BFBBE, 0x1E204507, 0xFA0CF607, 0xF2ED21ED, 0x04472300, 0xE00C0E1F, 0xF4F706E3, 0xF40933F6,
+0x410BF8E3, 0x071F1BBA, 0x0ACE310C, 0x01F7F6F5, 0xED01DADB, 0x0B471CEE, 0xC10C08E0, 0x0523E803,
+0xF7E5E211, 0xF4070A0C, 0x081C1B43, 0xD3BE00F8, 0x0E0706E5, 0x23DFFD48, 0xE8B5F0F3, 0x0411F2DB,
+0x050322DC, 0xE0070DF1, 0x0B0DF81F, 0xFCE3DCF6, 0x1D43F1F5, 0xF7F8F61C, 0xF3F1CDE7, 0xE2ED0704,
+0xF70009ED, 0xF4E21BF7, 0x1924F90B, 0xFB0F0E03, 0xEF0C16E5, 0x2EF80206, 0xF3F307E1, 0x1E090930,
+0x4413F5F5, 0xF602E3EC, 0xE4DEF648, 0x4333090E, 0xF9F91B0D, 0xE11EF8BB, 0xD642F4F6, 0xF0F9FCE5,
+0xF8E12EBB, 0x2FD20C0B, 0x0B0EF7FA, 0xE21B4542, 0x1F420A08, 0x0A07F7E6, 0x1F0E4618, 0xF71D0B05,
+0xF5F7E20A, 0x25F3B5CB, 0x1BB0EFFA, 0x07140BD8, 0xE4F743E1, 0xD24DF80A, 0x0CEDF8DA, 0x1CDF0AB9,
+0x38DFF7F3, 0xF3001006, 0x1C0A0B03, 0x24F50A1D, 0xF00B031D, 0xF7F33008, 0x0DF80B1B, 0xF8F51B1D,
+0xFA32DFF8, 0x31090DF5, 0xF720F506, 0xF72DD00D, 0x010DF506, 0xEC0A261E, 0x20CC47F7, 0xBFF90CF3,
+0x06F71AD1, 0xE7E4400B, 0xF3F8FBF5, 0xF81E1B44, 0xE6430DF6, 0xE3F908E5, 0x091DF645, 0xDBC94D09,
+0x33FD1110, 0xF81F0C09, 0x22BF05F4, 0xBF060F1A, 0x06E41ABC, 0x0BCECD08, 0x35F7F8F5, 0xFAD7F2B0,
+0xDA1D4E15, 0xF009120A, 0x0404172C, 0xF10835F1, 0xE3F4051F, 0x09E7F740, 0x1BD6BDFB, 0x0CEF0703,
+0x09FB1CDE, 0x23D405F2, 0xEFF110FB, 0xFCE1E945, 0x23F84BF5, 0x2D0B0FE2, 0xF2F706E2, 0xF3361A0A,
+0x1D05FAF1, 0x0909F6D0, 0xEA05C40A, 0xD0F102DF, 0xF6F6F6E4, 0xE9F7F009, 0xF0F5FB1E, 0x050BE8E4,
+0xE24CF6F9, 0x3111F5DC, 0x0AF70AD0, 0xE3380AF5, 0x34FEF612, 0xF807F420, 0xF30EE70C, 0x06FA05E8,
+0x0D092031, 0x06E22D0A, 0xCE0AF2F7, 0x09190A40, 0x0FB63605, 0xE8F00524, 0x03E51042, 0xE1E3B9F9,
+0x32F7F509, 0x080F0CE7, 0xE7F9F1FC, 0x11F30620, 0x040C17CC, 0xE4B40A08, 0xF2110ADC, 0xFA0719E0,
+0x0EBD35F5, 0xD1F7061C, 0x0D0CF91B, 0xE4BF4307, 0x3206F7E6, 0x09E20AF7, 0xF9E4E10C, 0x1EF8F5F6,
+0x091BF7F5, 0xE6E240F8, 0x310A0608, 0xF71AF60D, 0x1D3DF607, 0xB9030B17, 0xE41FF600, 0x08BF09F4,
+0x0DF9201B, 0xF505E32C, 0xBF05F80E, 0x07F0E5DD, 0xF90A2EE3, 0x0946F309, 0x0BF51EE1, 0x1B0A0BCF,
+0x311D090A, 0x0BF709F6, 0x0713D2EC, 0xE00B0CFF, 0xF4F807E5, 0xE7E2C1F7, 0x3722050B, 0xFD0E11FC,
+0x0D20CCF9, 0xBE08F90D, 0x080C1C1F, 0xFCE6DD41, 0x42B60F06, 0x08F11C23, 0xF30DCBE6, 0x0DCC06FA,
+0xF9FA19F3, 0x04052B2C, 0xE7DCF00F, 0x05F00EFD, 0x0BFBCFDE, 0x1B18F7F3, 0x07FCF4F1, 0xF204CA2B,
+0x0D12FBF1, 0x06FEE715, 0x2421FDB8, 0xBEDB120D, 0xF8EF1C02, 0x1B0B0B31, 0x46F9F8F7, 0xF40D1F20,
+0x061ED3BB, 0x0BF70DF5, 0x0A0BE4E2, 0xF6201D48, 0xB809000D, 0xF3E1DF08, 0xE40AF5F4, 0x47F6F7E3,
+0x0CDEE004, 0x1A210DF0, 0xDDF307FA, 0x0EF1FC36, 0xE6F34105, 0x4808F9E5, 0x0D0ADFE3, 0xF43333F7,
+0xCFF9070D, 0xF51B090D, 0x18E53F08, 0xF0F8040B, 0x050AE8CF, 0x0C30E409, 0x320C0708, 0xF609F61F,
+0xF44ACCF6, 0x270FF922, 0xEE200148, 0xEBBB130C, 0xE50902E3, 0xF921F506, 0xF42D330E, 0x310DF8F9,
+0x0BEF0938, 0x2627B3FD, 0xE013EE00, 0xF5E608F3, 0x09D2D0F9, 0x350CF508, 0x061D0DBD, 0x19E6C0F7,
+0xBA07050C, 0x0BE5E10C, 0x231BB509, 0xD2F90FF4, 0x0CDFF9B8, 0x150CC3F3, 0xE0F7021C, 0xF5DC084A,
+0xDE170610, 0x22FE0F11, 0xE40005F6, 0x0C34090E, 0x08FA1BF2, 0x1809F12F, 0x0535060B, 0xF1FBDEF1,
+0xF61C30F4, 0x42BB0A09, 0xFAF51A1F, 0xE3E00AF9, 0xDD1D0A0D, 0x0EF7050A, 0xDE200548, 0x4931100D,
+0x0EF52209, 0xE8F2C219, 0x214304FB, 0x0E08FBE5, 0x1AF4F31A, 0x0C2407F9, 0x09F0E4FE, 0xFA1CDEBD,
+0x09D0F308, 0xF40AE1F6, 0xE124BB4C, 0xC12E0B10, 0xFC0E18FA, 0xFBFB22DD, 0xE7220E0E, 0x05F20E05,
+0xF50D33CD, 0xFD35F707, 0x11FA240D, 0xE41D42BD, 0xD2320809, 0x0DF7FA0A, 0xDDE1FDBB, 0xBA3410F5,
+0xF5F91FF3, 0xDD1D4A0A, 0xC0CFF10A, 0xFAF719F5, 0xF507CF20, 0x3046F7F4, 0xF6F50AE2, 0xF1DE3649,
+0x00F7FB0E, 0xF4F41EE4, 0x17CDF007, 0xB7F7FBF5, 0xF1F8221F, 0xE0FDFA0B, 0x2FEF0E24, 0x0C0DF834,
+0xE747F306, 0xD2F4F920, 0x0CF3F834, 0x1B05BEFA, 0x43F1F922, 0x09EDE339, 0xF5E53301, 0xECF9080C,
+0x001C1343, 0x0FE4E708, 0xBA0704F4, 0xF51DE1F6, 0xE2E3BBF6, 0xCEF8F60A, 0x09DAF5B2, 0x11B8EA12,
+0x37F4FE20, 0x041A0FF3, 0x0DD21A07, 0xE30CFB08, 0x0AFAF721, 0x03CBDB0D, 0xE606F0F2, 0xF9F30CCC,
+0x19BDF1FA, 0x300906E3, 0xF5DC0903, 0xD8CEB012, 0xE708150B, 0xFAF70DD0, 0x0AD3D00B, 0x19F30A06,
+0x05DCF303, 0xF11CE8EF, 0x0C08030A, 0xF8E11BF7, 0xDB2502F4, 0xF6EF12FE, 0x0B0A1ECF, 0x450D0A00,
+0x0A081EE5, 0xF10CE733, 0x4AE7FCF8, 0x0FFB22F2, 0x1C16F611, 0xB9F5F704, 0xF5F61FE3, 0x0CF5CECD,
+0xE635F8F7, 0x0606F40E, 0xDBE04C47, 0xF4BEEFF4, 0xF708E4E4, 0xE2FF0825, 0x0616F4EF, 0xF1FDDFF0,
+0x0C22CD04, 0xCDD108F1, 0xF70B0B09, 0x22E4FBF4, 0x031EF109, 0x110ADC09, 0x0EE935F0, 0x34480505,
+0xFAF20E22, 0x08042022, 0x2C36F50E, 0xF0FB040F, 0xDFE349F6, 0x20C0F20A, 0xF4FBF919, 0x13F7151E,
+0xF21C000A, 0x060819F6, 0xF11AC9F3, 0xE63904F9, 0x05010E12, 0x02ECDB3B, 0xBEE31100, 0x07091BF7,
+0xFEF4DCE5, 0x06D21107, 0xF10DDF07, 0x03E3DC0A, 0xE3BDF0F6, 0xF80A001C, 0x06E2E0F7, 0x360AF4F7,
+0xFCFA10DF, 0xE0C807F4, 0x1A04F2F0, 0x071D0CF6, 0x2137F90B, 0xF3FCF210, 0x07081920, 0xE1CEB90B,
+0xF5F8F5F4, 0xF8F8E5D1, 0x0DF433F5, 0xD309071C, 0xF3FAF922, 0xFC22D6F3, 0x48F11004, 0xF2E8DFC1,
+0xF6401D04, 0x47FB09E7, 0xF51FE1BA, 0x1F0AF90B, 0xFA0AF4E3, 0xF2F7DFD0, 0xE5D1430B, 0xF00C08F8,
+0x041E16BB, 0xE4F6BC0A, 0xF10B091E, 0x06E619F3, 0x24F6B4F9, 0xE50AEFE3, 0x0621F449, 0xEE38C80E,
+0xD504FE10, 0xF01CFC42, 0xFCCDDEF8, 0xBDF9F10D, 0x08E11CBB, 0x1A16F3F5, 0x4902F911, 0xF3E421F4,
+0xF2DD34F7, 0xEA0FFAFC, 0xFE1AEF40, 0xF700F3FA, 0xF507E31A, 0x0FF7351D, 0xF7CDFBF7, 0x0BF81D0C,
+0xFC0AD631, 0xF7B310F7, 0x0BEDE227, 0x1B14F4C5, 0x1341F800, 0x00F9EDE6, 0x0EE13547, 0xF92805F5,
+0xF212E0FF, 0x1602EF25, 0x45170311, 0xF5FD1EF0, 0xDBF84CD0, 0x29F6EF0B, 0xEF0AFDE4, 0x08F630D0,
+0xCB1D0B0A, 0x06080EF6, 0x121BEA0C, 0x07D1FFF7, 0xF3F4E0F9, 0xF4F9CEDF, 0x22DCF80C, 0xF3F006FE,
+0xDF04FB24, 0x091E0F0F, 0x0CF6E209, 0xF30AE61D, 0x14DA06F7, 0x0013ED00, 0x24E5B60B, 0xBEE3F0F7,
+0x0708E60B, 0x091D31F5, 0xCCB9F5F6, 0xF90D0D21, 0xFB0723D3, 0xD21BF20D, 0xF3F9F9F5, 0xFAE5E0BF,
+0x03E2F307, 0x11F6DD09, 0x03E2D709, 0x0410EFF5, 0x10052318, 0xF2F21835, 0xBDF80506, 0xF8F4E4E1,
+0x18FBC1DE, 0x1F4BFBF2, 0x0B10F824, 0xDEF8FA2F, 0x3F44F1F5, 0xFCF6181E, 0xE9DDF0B6, 0x48F0050F,
+0x0D032016, 0x1E0BF71C, 0x4845F5F9, 0x0CF5E0E1, 0x26204C06, 0x3044120D, 0xF50909E3, 0xE5E3F4F6,
+0xCC0AF8F6, 0xF9F6F3E3, 0x1C044224, 0x0B4308F1, 0x0AF8E3E4, 0xE41BF5F3, 0x0B4AF7F8, 0x090F1BDD,
+0x0EDEE7FA, 0xBED0040F, 0x060AE6F7, 0x090ACF31, 0x0D30F5F6, 0xF8F6E509, 0x0CDFE548, 0x42FFF9F2,
+0xF913E5DB, 0xF9DC2EB5, 0x1FB60DF0, 0x0BF10823, 0xE61DBF45, 0xBB07F90A, 0x0B0E1E21, 0x0AF8CFD1,
+0xF60C0000, 0xFAE4E00C, 0x4D0C0D09, 0x1309D9E4, 0xE0DD47B7, 0x1AF7F30F, 0xF9F40CE1, 0xFEE62940,
+0x1BD1EEFA, 0xF9F50CF8, 0xE51D0C0A, 0xEC0409F6, 0xFF10EC23, 0xE705F3DE, 0x0711060E, 0xF2FE2115,
+0xF71C310A, 0x1EF00B09, 0xF7FBF717, 0x0A1DE2F6, 0xCF31F70A, 0x09090B0A, 0x151B13F3, 0x2042FEF8,
+0x0C0707E5, 0x04DA23B4, 0x4441F212, 0xF706E31A, 0xF507E420, 0xCCCAF80C, 0xFAFCF210, 0x24F2B618,
+0xB72FF0FB, 0xF20B2109, 0x091ECFF7, 0x12CA0BF4, 0xFEFAECF2, 0x06DEDF48, 0x35430DF2, 0xFBF70EE4,
+0xE0F9472F, 0xD142F4F3, 0x0BF8F71B, 0xF7FAE3D3, 0x36F50A0E, 0x06F6F2E3, 0x0A1DCFF7, 0x22F5F6F6,
+0x0DF8FA1B, 0xF4FAE5DE, 0xC7D1F9F3, 0x020C1208, 0x2007B9D2, 0xE0E4F40C, 0x0C08FA0B, 0x1DE8430F,
+0xDEF6F7FB, 0x0D0BFB1E, 0xE31A45C0, 0xBCF6F706, 0xF7F61D1C, 0xE4F5F4E5, 0x204B0908, 0x0BF107DD,
+0xE5E24146, 0x3CC3F9F5, 0x02FD1617, 0x0D0C1AE4, 0xE4EFFA07, 0x08030B16, 0xFBE822F1, 0x2EF8F206,
+0x0DF3F920, 0xDDF5B7E5, 0x19F50F08, 0x05F7F3E5, 0x15DEEDFA, 0xCA4202F1, 0xFB070F1B, 0x2308B5E0,
+0xD5B50FF5, 0xF110FC24, 0x0AF732CF, 0xF543090B, 0x0A08E3E4, 0x25F3B534, 0x200BEF07, 0xF50A07E3,
+0xE1EFBBC8, 0xCFF10BFD, 0xF6060918, 0x0ADF3007, 0x0000F6F2, 0xFDE0DC48, 0xF7E0F0F4, 0x0CF51E07,
+0x0C1A33BF, 0xD20B08FA, 0xF4F608E4, 0xDE0B0532, 0xDBE50F09, 0xEF08020B, 0xF01F1745, 0xBABA03F5,
+0xF50CE120, 0x22FA0421, 0xBB24F1F4, 0x0B10E1FD, 0xDE050522, 0xD1E00F0E, 0xF4F50808, 0x0BFB332C,
+0x3021F80E, 0xF60C0AF9, 0xF5E21B09, 0xE84A070C, 0x040FF2DE, 0xE4F5441C, 0xD74BF7F8, 0x1110FDDC,
+0xF0E43742, 0xF34204F8, 0xF9F91AE6, 0x1BFD0B25, 0x4B4609F0, 0xF00BDC1F, 0xF5F632CF, 0xBAE209F6,
+0xF50A1EF7, 0xF508CEE1, 0xBDFBF70B, 0xF9F0E5DE, 0x07DED2FA, 0x44BCF4F1, 0xF6F71EE3, 0x20E448F5,
+0x2F410C09, 0xF40508E7, 0x07F31F1A, 0xF5320C06, 0x09F81CF5, 0xF3F3CDE6, 0xF94407FA, 0x0C091FE3,
+0xFB1F23BB, 0xBCF50E0B, 0x0AF6E21C, 0xE0FEFA29, 0x0AD2F2EE, 0xF5F31E06, 0x221E4A45, 0xF6BD0FF6,
+0xF6F9E41B, 0xEBE63CF2, 0xDBD0FFF9, 0xEFF6FFF6, 0xDBF6B31C, 0x313C12F8, 0x0BFF0915, 0xDFE7480D,
+0x0AE30D07, 0xF6081C0A, 0x0DE834C0, 0x0B31F904, 0xF80B1BF7, 0x181BF00C, 0xF9F7FB08, 0x0D0CE0E1,
+0xF2F5351C, 0x070DFAF8, 0xF208DFE5, 0x0B0331D6, 0xFD440910, 0x10F8231C, 0x0FFA1720, 0xBDBDFDF4,
+0xF7F91CE5, 0x0BE5CE41, 0xD106F7F9, 0x0DF2F9E0, 0x0911E2EA, 0xE33009FE, 0x09F6F609, 0xFAF422CD,
+0x481DF308, 0x22F70000, 0x26450EF7, 0x12F600E3, 0x241DFD09, 0xD2C711F5, 0x0CFEF9EF, 0x1A200D47,
+0xFEEAF90C, 0x1302DAEF, 0x1DFA0A21, 0xCFC80AF3, 0x09FE0B11, 0x270DFF1B, 0xDF1014FA, 0xF305FA18,
+0xF21DE7F7, 0xF8D1FB0B, 0x0C0DE1F9, 0x09F831E1, 0x3DB9F60B, 0xFD0D17E0, 0x071FD2BA, 0x0D440C0B,
+0x07F6E61E, 0x07FAE122, 0x08E90CF3, 0x0DFD1FF1, 0xFBE322BD, 0x3E200EF7, 0x030CEAF9, 0xF30B19CF,
+0xBCF10609, 0xF706E418, 0xF20E34CB, 0xE12DFAFA, 0xF5F2F9FA, 0x1C210B06, 0xBCD3F70E, 0x09F2E3FA,
+0x221A4941, 0x3CD0F2F9, 0x020A16F6, 0xDE0EFAE7, 0x22CD0FFB, 0x0E07040D, 0xF2FB1ADE, 0xD0CBFBF2,
+0xF4FA080D, 0x1B0F0DE8, 0x4327F8FD, 0x0813E400, 0xF0FB17D5, 0xD0E703F1, 0xF606090D, 0x0CDB1BB4,
+0x194AF911, 0x06F20DDE, 0x0E0CCB1B, 0xCF32FAFA, 0x0A08F70B, 0x19F5F1E4, 0xFC080608, 0x0FF4221E,
+0xF8E2E00A, 0x1D290BF5, 0xF7EFF603, 0x1BE50DF3, 0xE8410808, 0x04070F1B, 0x071AD1F2, 0x15490CF9,
+0xFFF312DF, 0x20F5471B, 0xEBDD0D07, 0x000EEE04, 0xF3F41B32, 0xDBBAFAF8, 0x10F4FD20, 0xE00A081C,
+0xB8C80DF8, 0xF202DE11, 0x0DE3CCBB, 0xF2E6FAF6, 0xF905190E, 0x190E0E35, 0xBCE1FA05, 0xF80AE4F7,
+0x1DEA0B3C, 0xB8F90AFE, 0xF3F3E0E1, 0x0F1DCAF6, 0xB548FCF6, 0x0000DCDF, 0x0432100D, 0xEF09DDF5,
+0x10FCCA24, 0xBB20FC0F, 0xF70DE306, 0xDEF149C9, 0xCF23F204, 0xF6F10904, 0x1DE0BC07, 0x2DBA09F3,
+0x0D0C0720, 0xF7F31E1A, 0xF7210906, 0xF40DE106, 0x1F1FF7B9, 0xCA2B0CF4, 0x05F10FFB, 0xE5F1BD18,
+0xE912F8FC, 0x020211EB, 0x0619213F, 0xE40DF405, 0x08F90A19, 0xEF21C9FA, 0x023503F2, 0xEEFBDBF1,
+0x0F1718F0, 0xF52004FB, 0x0AF31D06, 0x0B23E4B7, 0xBD4A08F1, 0x08F01C24, 0xE419F6F3, 0x3D1CF7F9,
+0x02F9EA0C, 0x090BE1CE, 0x35BE0A09, 0x07F8F3E4, 0x0314DB3C, 0xF92D1000, 0xF3F2E0FA, 0x08E2E1F8,
+0xF6060A0C, 0xF60E1D21, 0xFAF521CE, 0xD1CA0D09, 0xF4FCF810, 0x09E62FF2, 0x18200BF9, 0x03F40FF9,
+0x08E21FBA, 0x2F07F5F5, 0x0C0E0821, 0x1D0A0930, 0xE3E10BF6, 0x090B0AF8, 0xE0E407BC, 0xF2F0F3F8,
+0x060419E9, 0x20DE4748, 0xF9BDF30E, 0xF2F720E4, 0x1AEAF2C3, 0xC7CCF9FE, 0xFD07EFF4, 0xF70DD0E7,
+0xD2CE0BFB, 0x0CF7080B, 0xFBE222F8, 0x22100E0C, 0x0EFC04E9, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+hard_output0 =
+0xCA0CEC17, 0x2F4D4F3D, 0x3AB98C76, 0xF71431A2, 0x2335CF84, 0x4FB0D70A, 0xC81D9CF1, 0x74B2A2FD,
+0x15B0F19E, 0x656A7460, 0xE1786407, 0x2B3431A8, 0xB335D83D, 0xF8D3F56D, 0xA7F3D956, 0xD0CB44AF,
+0xC64BF554, 0xC945F4BD, 0xCBA0EDBE, 0x998A7E79, 0x35E24566, 0xF481A58F, 0xB9DEFD0A, 0xB41572E1,
+0x15861166, 0x791433EA, 0xC1FCEF08, 0xD441CC12, 0x48C089B7, 0xF7EC7981, 0x3184A8F4, 0xE7AA98AA,
+0x9372A1E6, 0x2DC81539, 0x5636E057, 0x1CB35F5D, 0x58EF59D5, 0x348726D6, 0x4D91A350, 0xC9B10787,
+0xE658EBCE, 0xACCF36E6, 0xF8F40A86, 0xBC6EFA15, 0x7D13BA39, 0x0C12BE1B, 0x872EADFA, 0xCCBB6B2D,
+0xF6929A56, 0x756D85BF, 0x18B0AB31, 0x2939F76D, 0xC74FE6DA, 0xF60A1E5E, 0x6634D070, 0xC1F81F0D,
+0x9C5ABC70, 0x4879C37A, 0x0D01BB86, 0xF2954127, 0xF5EB4C12, 0x70DC1CD2, 0x1B9145B8, 0xEF66D93A,
+0x92E17CE6, 0xF8D01579, 0xE5FBC52C, 0xE5CFAC16, 0xFA8299DF, 0x25DC9EC4, 0x76DE3519, 0x6E7ED8A6,
+0x4437111E, 0xECE3F250, 0xD908BC1E, 0x43C72369, 0x75DDF9DA, 0x46FBB1FF, 0xF2FD0372, 0x9D9735E2,
+0x01696179, 0x221CD5A5, 0xDDA06E97, 0x00B2938C, 0x7C49D7D5, 0xEE69C40D, 0x08D1A52D, 0x5DA49D15,
+0xF1728393, 0x253E68B8, 0x06F71038, 0x82C2FD12, 0xE1D8B130, 0x80FAA5F6, 0xA76011E3, 0x697B1157,
+0xFD7E6851, 0x934CA0C4, 0xB8003A2D, 0xB6E911CD, 0xDADC7608, 0x382D6C37, 0x4B20B057, 0x5EC3E373,
+0xE2B1CA5C, 0xF00BA2B0, 0x57D36248, 0xE80FF56D, 0x13C3E456, 0xFC43FABC, 0x1475484F, 0xE9DA8B94,
+0xA031BE02, 0xA1C9D0B7, 0xA6DC3CF2, 0x94BDBC68, 0xF2CE2774, 0x46783309, 0x69256A20, 0xF69A2C68,
+0x59EB3F76, 0xF909E733, 0xBF63A303, 0x2B724E7E, 0x94B56E71, 0x28DF73D6, 0x871A12C0, 0xCAADB3C3,
+0x19C3FD76, 0x63D5C7CF, 0xAF8F04AF, 0x4FE75994, 0x4D41AE57, 0x42982A4E, 0xE646DE71, 0x18441A22,
+0xE6D9633D, 0xEF55C53C, 0x556B208C, 0x0869FACE, 0xF493C02E, 0xC35EB22F, 0x73C37336, 0x057F4ACD,
+0x8C9B259E, 0x3C920030, 0xD9B5CFFF, 0x2AE74832, 0xD9B1D4C2, 0xC21D680C, 0x2692B8DA, 0xDB51C60D,
+0x3E8A9725, 0xE3C54198, 0x21BD6445, 0x43D5EAD1, 0xFEFE327B, 0x029D17A5, 0x6F64545E, 0x312E1D7A,
+0x2147C99E, 0xCF016995, 0xD66A143F, 0xB859F059, 0x4DF640AF, 0x04CDAC52, 0x5C409746, 0x5386A109,
+0xD745F135, 0xF484B8B3, 0x4FAAEB27, 0x9619206D, 0x5F526B59, 0x6DBDD8C1, 0x5471CDE2, 0x33E1AF0E,
+0xCACDCFA4, 0x6B5C8512, 0x613C0317, 0x5F55BA96, 0xC1500B28, 0xA16472FD, 0x84D61410, 0x4DD0544D,
+0xAAB33A39, 0xB0F668DC, 0xDE044716, 0x3281DB97, 0x463C65EF, 0x2C9497E1, 0xD9B2B991, 0x62C874BB,
+0x9827D3E1, 0xE620163F, 0xF129508C, 0x0FDD575F, 0x40C9A06C, 0xEAAADC16, 0x0803B886, 0x7142D724,
+0x71A8862A, 0x2C1D1BFE, 0xA23C79BE, 0x6354B27A, 0xC4B3309F, 0x803E433E, 0x818DEA62, 0xD94A7963,
+0xA87527FF, 0xB5583F8B, 0xB2A758E7, 0x8584B60A, 0x07CB8290, 0x2E338122, 0xDDA84545, 0xB159CE00,
+0x1E232F61, 0x2C6DFF7C, 0xCFF0B441, 0xBA429811, 0xFE255E47, 0xEDAEF48C, 0xDB4C2900, 0xA2BB11B8,
+0xEC6E5D0E, 0x40B3A688, 0xCCAF08FB, 0x33FFD526, 0x5133F2D3, 0x4E756FFC, 0x3B4E136B, 0x03D9A0DF,
+0x9F20CFD3, 0x7DB47265, 0x87878BDA, 0x1648207E, 0xA5322B2E, 0xE52B8491, 0xF1BBDD15, 0xC14AFD1C,
+0x5F66D3FF, 0xEBADCF5A, 0x32D16F15, 0x91AD38D3, 0xC6278433, 0x4B362A45, 0xDD035C3F, 0xD9E95290,
+0xDFB18DA9, 0x2F154E24, 0xC1CDFBED, 0x9F6C6653, 0x142E06A2, 0x01C6CA6D, 0x0C9DF363, 0xA39C9F5D,
+0x6764AC2C, 0x2E8C3332, 0xEC8EB6FB, 0x90796E83, 0x06D2BFB6, 0xD3D150EF, 0xC3CBA609, 0xF9015CEA,
+0xF53D0709, 0x0227BDDB, 0xD1BEC1EE, 0x9D54E947, 0x656B9749, 0xAB35113E, 0x2D2773CE, 0x9DA243A7,
+0x1F2A8F4D, 0xEFCD7ED7, 0x185CC5F5, 0xD41F8CDB, 0x4A6D5613, 0xF855CBC3, 0xD0AA5D74, 0x4E2B8917,
+0x0EE3BB43, 0xD0207C78, 0xAA1DAF8E, 0x245B6644, 0x06DDA3C9, 0x90DCF47A, 0xD6B0DEE5, 0x2CE6831B,
+0x9A1E8CBA, 0x383693B2, 0x8B8E7581, 0x7F15D100, 0x3419CBF3, 0xD8033A77, 0xAE3DD11B, 0xE034E1BF,
+0x73353696, 0xD46127CD, 0x1BFD2744, 0x3469437C, 0xBE8997EA, 0x47C1265C, 0x9D0098E6, 0xBEF6202B,
+0xCB7A852D, 0xB890540A, 0x15237EC1, 0x3065EDB0, 0xF8F66C7D, 0x063438D0, 0xCD96B064, 0x3BC9DEFF,
+0xC297FF36, 0x100BE6D2, 0x975AEF6F, 0xEA7B6D6F, 0x75A2D63C, 0xF66D440C, 0xAB9CA436, 0xD2D2B706,
+0x859D3D07, 0xE33F6D56, 0x858E6E03, 0xC80BDF4F, 0x2010D0C3, 0xB1CC6204, 0xACBE9A0C, 0xFF8B7A52,
+0x46FD94E9, 0xB60DA91C, 0x2ED29B3B, 0x1DF117EE, 0x992C12FE, 0x221EAB83, 0xC4A7AC40, 0xB905294E,
+0xE7ADA1C8, 0x85E0DD4E, 0xF264E097, 0xD29AE029, 0xB4EE75F2, 0xA64F8BB6, 0xD00F9E15, 0x472CE884,
+0xEEE19994, 0x264CBBE1, 0xB0CD2878, 0xC36CC5AA, 0x140F7FFA, 0x7787069E, 0x1F5AA79B, 0x3A903707,
+0x09149B31, 0xC1873E46, 0xF55C45D9, 0xE9AAD8DA, 0x8C1CA87A, 0xAA9926AD, 0x59ACE371, 0xDED56750,
+0xF80306B9, 0xC2C2EC0B, 0x50DE4071, 0x9F8F2176, 0xCA62F2D3, 0xE0801CFA, 0xAB46E0A8, 0x6E7963CB,
+0xC9DCCD65, 0xD08DA446, 0xD7BC0651, 0x1927F417, 0x94176684, 0x27870B57, 0x3DA78A72, 0xFE51EBAA,
+0x6D0ADC0E, 0x2B1F4A07, 0x59337BE0, 0x4FB77206, 0xD4FD38E5, 0x5CA23CE8, 0xD3824AA1, 0xEFD178FA,
+0x3869E255, 0x912EF342, 0x7997AF4B, 0x11E0C9F5, 0x00BED9D3, 0x2894EDBB, 0xFD8B44F6, 0xA6F00A5F,
+0xAEFDB556, 0x41657830, 0xA8F4DA5F, 0xD63BD37A, 0x80EB4CE3, 0x035AFCF2, 0xE616BE78, 0xDF0A1B0F,
+0xF22D1786, 0xD9B171E3, 0x45576852, 0xC503B583, 0x84E679C2, 0x0710CC44, 0xA3DFDED4, 0xFE114EB8,
+0x7370351E, 0xF38282DE, 0xDA410EBC, 0x76BA8DC9, 0x7C22A0AC, 0x5BBD1469, 0x112C7006, 0x9A04349B,
+0x70D359D9, 0x73D5B8B2, 0xDF165AF6, 0xACC23697, 0x311630B6, 0xCA498422, 0xC1165EE5, 0x27C22BB5,
+0x42638240, 0x52609CA5, 0xABAAD54B, 0x73645BA7, 0x98AB1961, 0x3491A9E1, 0x1A2BAE93, 0x1BDF92E0,
+0x0C5E3022, 0x75FC3590, 0x4BCEFFB0, 0x24FF4E89, 0x19FAF084, 0x4C880A10, 0x14B0C71F, 0xB194D7DF,
+0x57CC4885, 0xBFD21B44, 0xCAB4B0CA, 0xA7ABAAA4, 0xE77EAC4F, 0x77F52506, 0x9F07B18F, 0x8FF1B984,
+0xB2449C2A, 0xAF8D911E, 0xF16A8F82, 0xF78B8668, 0x07129B3B, 0xBF9E2C9D, 0x450663BB, 0x7A4CCFFA,
+0x42CE54D8, 0xC1A743BD, 0xB9B2259A, 0xD6E45E60, 0x6A07699C, 0x5FB1167F, 0x331F65FC, 0x1E18CC55,
+0x93E263D3, 0x365B248A, 0x2ABEAAC1, 0x885B20C3, 0xF21CCF24, 0x7437F9DD, 0x7B9C9C22, 0xCA98008F,
+0x2678472E, 0x7BCBA77F, 0x5CB76EFF, 0xE9776B50, 0x04A07942, 0x6F9E2CB4, 0xE7E8A438, 0x7652AA48,
+0x5A1B05B7, 0xFD689253, 0xE3DBB619, 0x8E4DBB23, 0xC5BEEE8E, 0x53443B33, 0x9E4172A4, 0x0B49C469,
+0x516A9B49, 0x02057871, 0x7FB3E39A, 0x71BCCE9D, 0x354D374F, 0x09A13844, 0xB7173222, 0x1E090D35,
+0x83F302F5, 0x789A1F5D, 0x8A064E96, 0xBC9BC64C, 0xA600AD8F, 0x2448C02E, 0x6119D011, 0xD90AF049,
+0x8EE8A3E1, 0x1B2A0C12, 0x0B35EF5C, 0x31DDD78E, 0x86497807, 0x18902701, 0x247E9DB0, 0x95F451D1,
+0xA71CA9FF, 0xD6EF8BE0, 0x33D4BADA, 0x5BCDA230, 0xD80B0BA2, 0x77966179, 0x630C8A37, 0x78EB6956,
+0x5406F18C, 0x1250D2B9, 0xFF1DA4DD, 0xE0FCDAC6, 0x70B549FC, 0x0BCB16DA, 0xFFA157C4, 0x9C4DF3FB,
+0x8797299F, 0x8DD8A959, 0xC80FA264, 0xBF435D12, 0x6ADC9326, 0x44A81C4C, 0xB65CD9A1, 0x66452EF9,
+0x997345CF, 0x70F39782, 0x7D9A0D12, 0x6FD2AA05, 0x7F9F7838, 0x165FEF81, 0x501ADAFA, 0x3B9A8B23,
+0xE5349355, 0x36419404, 0x659A46C8, 0x59D23780, 0xE9411F0E, 0x30A23C16, 0x10B59311, 0xB89261B4
+
+
+soft_output0 =
+0x66B29481, 0x7F8172AE, 0x645E5A7F, 0x71847F81, 0x838F7F4C, 0x58AA496A, 0xB08F7F7A, 0xA38D9F9A,
+0x81707F55, 0x7F547F9C, 0x8191719A, 0x8DA9AE97, 0x73996081, 0x8176985F, 0x63B87FAB, 0xA17F848E,
+0xB47F60A2, 0xA2518187, 0x73817F7F, 0x4C636EBE, 0x55AE7F52, 0x8D55727F, 0xB5638F75, 0x585C7E7F,
+0x718170A4, 0x7F7FA45D, 0x556C7FAD, 0xAE81817E, 0x8D8165AB, 0xA4B86C7B, 0x817F5581, 0x78717BA6,
+0x985C6399, 0x8281A881, 0xA76A5F5F, 0x94526A7A, 0x9282647F, 0x7F819059, 0xA863687F, 0x977D7F69,
+0x6F7F86A8, 0x5054907A, 0x7190A57F, 0x968D8BB1, 0x95725B86, 0x607F5881, 0x5F8181A2, 0x5D9E8B62,
+0x8F7F7F68, 0x666C8154, 0x96959D7C, 0x658A7C55, 0x6B7F9B50, 0x79566A8C, 0x81639F67, 0x97816BA1,
+0x91B9967F, 0xB37E87A6, 0x81817367, 0x72776B75, 0x6E898186, 0x81817559, 0x6B7AAB3F, 0x8C7F7F81,
+0x7F81905B, 0xA950757F, 0x7F845A74, 0x8F8295A0, 0x7660697F, 0x867F6C7F, 0x539678A3, 0x93948781,
+0x837C5B7F, 0x877A8F5A, 0x726E6B77, 0x78817F7F, 0x84828197, 0x81528C7F, 0x81A2608D, 0xA97F7398,
+0x925A987F, 0x536B6F6B, 0x8F87B397, 0xA25C51AB, 0x63447F85, 0x7F8D4DB6, 0xAF5DAB58, 0x60B17F85,
+0x7FB5546C, 0x444D9DA1, 0xC25CA2A8, 0x96456D4E, 0x4CAB5AA0, 0xABAB9E9C, 0x5E7F609E, 0x5FAB97B8,
+0x6A9FA3AA, 0x6081D559, 0xB5A96865, 0xACA96887, 0x66BC4C9C, 0x5DAB325F, 0x83587F81, 0x6AABA79F,
+0xA7A0A496, 0x4CA06F81, 0x7B8299B9, 0x95505055, 0x8195477F, 0x8251AB9D, 0x63B4966C, 0x3B6FAC81,
+0xA75FB464, 0xAFAB8F97, 0x9359689A, 0x717FAFA5, 0x3E65A166, 0xB5AF5C7F, 0x905E9AAF, 0xAD59B3A1,
+0x8C60AA81, 0x567F5960, 0x49BA9356, 0x815C617F, 0x7F6FABB1, 0x56B97FB2, 0x9B61817F, 0x6F629CB5,
+0x51C45056, 0xABA45B81, 0xBA724FBF, 0x4F535D5D, 0xAE5D7AA5, 0xA093C643, 0x50B29BC3, 0x8FA0817F,
+0x814DADBC, 0x565C6265, 0xC5577481, 0x7F816D62, 0x608A5272, 0xACAB8181, 0x8C99A885, 0xA39DC549,
+0xBE9B7D7F, 0xC060A46C, 0x53496DB0, 0x9C6D7F7F, 0x81A88A92, 0xA9994B62, 0x474A6998, 0x994C9B9E,
+0x955A4E9F, 0xA7445590, 0x9782AEA7, 0x5946509F, 0x5892817F, 0x81904E49, 0x62AB725E, 0x6157817D,
+0x81624DAC, 0x4D9EB1AD, 0x97818181, 0x5A7F5DA3, 0xB65BA7B9, 0xBD5B8165, 0x8581AE9F, 0xA5513696,
+0x59938973, 0x819554A2, 0x62976F65, 0x60AD7F70, 0x7F7FBE9D, 0x55509A81, 0x53A47990, 0xAA4FB9A0,
+0x5B5AA25F, 0x58505E81, 0x81B9AB56, 0x5248447C, 0x8D5FA286, 0x5F4A5556, 0x584D7599, 0x249E819A,
+0x7AAF5A62, 0x9952AD6C, 0x544C6192, 0x81A9B551, 0xC69C6665, 0x5ABE8692, 0x508156A3, 0xB1979A9C,
+0x8D6A8145, 0x898DA796, 0x65A6B556, 0xA352757F, 0x7F8F4D95, 0xB1655156, 0x994F7F68, 0x6899ADA6,
+0xA190B6AA, 0x669C8189, 0x817FA261, 0xA1A0A1A5, 0x9AAB7A63, 0x9C814D4C, 0xB6A75D52, 0x6353A681,
+0x966F555D, 0xB7475AB1, 0x63967F81, 0xAA7F5AA3, 0xB2B99452, 0x87685081, 0x7C5A50AE, 0x9D479FB4,
+0xA2A081B3, 0x7F759E54, 0x5B6160AD, 0x5AA77F91, 0xAB92B5B8, 0x5CA75E9F, 0xBA9B9081, 0x7C7F96B0,
+0x6357585E, 0xA64E9181, 0x6F81A448, 0xA358AF6D, 0x556E5881, 0xBF995055, 0xA35D666E, 0x8B8D4681,
+0x815C579D, 0xA8617067, 0x5297957C, 0x817FB551, 0x4A46A468, 0x9DA88181, 0x5C7F56AE, 0xBB4B9294,
+0x65958AAC, 0x51875943, 0x5E5C8E58, 0x715B7F9E, 0x7F815F55, 0x5EB1A877, 0x7F686B81, 0x8A7FA9B6,
+0x5A5B657F, 0xAE5D9C82, 0x819F9F4C, 0x544C7288, 0x60598C95, 0x67A0BD53, 0xA756C37F, 0x77694F7F,
+0x6875AF4A, 0xB8489856, 0x7598817F, 0x7F7F5854, 0x57465E55, 0xA698907F, 0xACA0BD48, 0x46416169,
+0x91B1747F, 0x917F4C51, 0x57B8548F, 0x52984CB0, 0x817FCD50, 0x504E9B66, 0x40698B81, 0x7F7F49A6,
+0x424AAC68, 0x689BB57F, 0x9D7F50AD, 0x3B47A861, 0xA47F8170, 0x7F813EB0, 0xA4708176, 0x8477737F,
+0xA87B5EAB, 0xABB7896C, 0x658E9A51, 0x5C7FB2B1, 0x925D97A5, 0x5298674C, 0x86819F93, 0xA5A97159,
+0x6997A978, 0x7F9CB654, 0xA4A35B58, 0x55818FA4, 0x7F61B8B7, 0x676586A4, 0x815E81A1, 0xB2B7A66C,
+0x8E5E7191, 0x545E707F, 0x615C9F5F, 0x9DA676A5, 0x7C535281, 0x81A8597F, 0x59476681, 0x815F817F,
+0xAE8FB666, 0x5560785B, 0xA8A28678, 0x54A26793, 0xA0A38299, 0x7F9C9E69, 0x487F69AD, 0xA38894A7,
+0x9C779C50, 0xB972A89C, 0x595E714F, 0xA75E987F, 0xAB5AA998, 0xBC928163, 0xA2B2676C, 0x81555964,
+0x8E9B72A2, 0x765A7F81, 0x6E63606B, 0x6D6B524C, 0x7FA16281, 0x939B485D, 0x625FA3AE, 0x813F8181,
+0x697F9C60, 0x68655A5F, 0xBC5B8183, 0x7FA2A2A7, 0x618F7F54, 0xABAD8B81, 0x6E6D9891, 0x639A945E,
+0x71649F77, 0x7F56A25F, 0x95476891, 0xAF558881, 0x6F819A99, 0x53AC698C, 0x5F747F81, 0x6C7157A2,
+0x9B989A61, 0x78A56298, 0x7F5F9DBD, 0x635C7C72, 0xA2816FAD, 0x7FB3929B, 0x5E565D88, 0x7F668174,
+0xA47FAEAF, 0xAD966794, 0xAF5C9A7F, 0xAA7F5A95, 0xA1697F56, 0x9F96817F, 0x7F81B0B8, 0xB5436399,
+0x576F817F, 0x7F65AC48, 0xB75E90A2, 0x576F9652, 0x8E7F5596, 0x4B51A66C, 0x6853736F, 0x81785451,
+0x599A6E63, 0x7F9D815D, 0x7F4D65B7, 0x636E7A7F, 0x7578597F, 0x7F7F58B1, 0xAAA56582, 0x586C705F,
+0x7F7F4D64, 0xA8946C94, 0x8195AC81, 0x6D81B797, 0xA464A8B0, 0x73A2AB81, 0x81A26C9E, 0x4F587270,
+0x72327F66, 0x66A0517C, 0x5B9B7F64, 0xA3517E90, 0x817F6152, 0x56718183, 0x664C8156, 0x7F435F60,
+0xAC3E7F79, 0x69518177, 0x8181A789, 0x468B5E7A, 0x66528DA0, 0x8192A86F, 0xBAA29F66, 0x989B9692,
+0x509157A6, 0xBF9F9754, 0x4F6B86BA, 0x81A2658A, 0xBF54709D, 0x60505E69, 0x7F7F9CAE, 0x6193969E,
+0x72557F50, 0x9A7F6340, 0xB2547F5D, 0x594B9A5E, 0x8155ACB3, 0x57AEB0C3, 0x978B9E3B, 0x7FADB1AC,
+0x4C56617D, 0x8751AB9C, 0x9253A563, 0x425E6D60, 0x646A7F7F, 0x679C5B50, 0xAA6E919F, 0x5A4D797F,
+0x7F7FAA73, 0xAE5C766C, 0x7F4D817F, 0x81A9A65A, 0x4B6F6873, 0xA8557F81, 0x7F4AA7A4, 0xAD5B8A69,
+0x7F727FA8, 0x81A854A0, 0x57866B7F, 0x59AD756A, 0x88634A64, 0xBB486DB3, 0x6AAB7F7D, 0xB97FB196,
+0x8F768187, 0x6D64816A, 0x837F5256, 0x65B09B4E, 0xA3506181, 0xB9624CA9, 0x9F8B6899, 0x8391549E,
+0x73AAAD7B, 0x9494626F, 0x714B4674, 0xA48A61A1, 0x6A9D9CA4, 0xAB8689AB, 0xA9814D57, 0x646F6763,
+0x8978B881, 0x7F7F919F, 0x6EB38CA3, 0x55507F8D, 0x74659C66, 0x3F64659C, 0xA7818181, 0x7FAD5385,
+0xA5AB9C70, 0x85954381, 0xA59460AB, 0xA0A3723F, 0x8152B07F, 0x81A34E62, 0x5D9E8151, 0x81A29781,
+0x817F5A91, 0x5A7793AD, 0x8D69B27F, 0x7F7F5368, 0x38649358, 0x90487981, 0x8184645A, 0x51AAA3A8,
+0x8D478181, 0x81625B58, 0x4CB57762, 0x7F978181, 0x8C81AF4D, 0xB5A39C5F, 0x989F7F99, 0x7F81A7B6,
+0xC360814D, 0xA8A38190, 0x8181A99F, 0x5F918155, 0x7D5698AE, 0x7F8DAB50, 0xA44B8751, 0x8C907FB5,
+0x677FAB66, 0xB5A45973, 0x824E7F77, 0x7F70B0B2, 0x598E4A49, 0x64AD7F8B, 0x8181A5A0, 0x5C678389,
+0x74707381, 0x77812BA1, 0xB29D7B4A, 0x7773ABB4, 0x818158A9, 0xC094A8B7, 0x78686557, 0x8184BB62,
+0x62A97AB5, 0xA3967F56, 0x6B91529E, 0x5B9F7B50, 0x939E905F, 0x637F9A9D, 0x5CA39F74, 0x9EA46896,
+0x737F4C54, 0x5BA4A1B1, 0xA89E7F81, 0x8182A894, 0x739252A2, 0xB05A8F7F, 0x7F943C52, 0x54A99658,
+0x72A8817F, 0x816EAD63, 0x92538FA6, 0x64A87F83, 0x6981C15A, 0x56A26AB4, 0x93A08197, 0x8175A55C,
+0xADB771B9, 0x6C957981, 0x8197455A, 0x9F4B7D55, 0x6BA4A17F, 0x8168A754, 0x4EC46457, 0x9A687F81,
+0xA081AB51, 0xB34E9B56, 0x6E58A595, 0x727F43BA, 0x4EB55E45, 0x659B7F7F, 0x818F5AA1, 0x4E9E654B,
+0x8D607F74, 0x7C9D916B, 0xA1A59999, 0x81668181, 0xA47E4E69, 0x4F5CA562, 0xA76C7F7F, 0x7F815C5F,
+0x9F6894A8, 0x31778B81, 0x817F7B9A, 0xA7576B9D, 0x8393749A, 0x817F5299, 0x559E769C, 0x7F50816E,
+0x817FA49C, 0x4F6E7551, 0x7D9E8181, 0x849A5873, 0xAD79AD70, 0x6A8B7F9A, 0xAC81958F, 0x99A07C5F,
+0x7F638187, 0x81813FA0, 0x5C75935A, 0x85597F7F, 0x7F73AA52, 0xB3A6708C, 0x8D698175, 0x6B6EA59B,
+0x4B5F539B, 0x7B606682, 0x817F5D56, 0x645A4F99, 0xA36D7F89, 0x737FAAB7, 0xAD50416A, 0xA777A57F,
+0x8B7F608E, 0x4B65914F, 0xB05D7F7F, 0x9D98605D, 0xB8586892, 0x5F967F7F, 0x9C966361, 0xA35B6DA0,
+0x60817F81, 0x7FB09C9D, 0x98906B81, 0x7E68A881, 0x7F96A4AF, 0xA94B8967, 0x78ACB881, 0x775C7F4B,
+0x66AB6A68, 0x8D58817F, 0xB681619E, 0xA86C7195, 0x7FB18170, 0x8B785D98, 0x9BB49C88, 0x74637F6C,
+0x7F7C6481, 0xAA9662A2, 0x49A6818F, 0xA17F7868, 0x9F8C6A75, 0xA7A8907F, 0x817F785A, 0x60966765,
+0x58A07F97, 0x7F8163A4, 0xA3AD686E, 0xAE618983, 0x7F92AB9B, 0x6A75829F, 0xA84B8176, 0x817F7E6F,
+0x58828E81, 0x82989F7F, 0xB39F5957, 0x565973A6, 0x65648157, 0x6A81A746, 0xB654559C, 0x794D907F,
+0x859CBB4F, 0xB7546799, 0x72538A72, 0x60A8B654, 0xAC9DD971, 0x6BC06494, 0x7881B153, 0xBEAC4AA6,
+0xA4AA8BAC, 0x819760AD, 0x57A06660, 0x6A8E4A7F, 0x7FB05DA9, 0x9FABB091, 0x96ADB878, 0x527CAEB5,
+0xA1A39A41, 0xA55E974D, 0x7F6BAC51, 0x5C59B5BF, 0x63965953, 0xA581B4AC, 0x70AD975A, 0xB1427FA2,
+0x82344C64, 0x9E94AB9E, 0x535992B2, 0x817F4B5D, 0xAD5CBB5E, 0xA8649181, 0x7FC165A5, 0xB99DB46A,
+0x8C4DB68C, 0x5E815C71, 0x498A566D, 0x9558A04D, 0xA1BB3D5F, 0xB5A2B7A2, 0x96A75361, 0xB581ACAA,
+0x41B39DB2, 0xAA527F97, 0x75A4985E, 0xA74A6B9D, 0xA1A6599D, 0x71AB54A8, 0x52A546A5, 0x5A49AE8B,
+0x5C969A4E, 0xB9559AA2, 0xB79D9D7F, 0x5495AE59, 0x59635AB4, 0x62ADA07D, 0x817F4E5F, 0x5C55696B,
+0x82B0819D, 0x9B674DC2, 0x614D55B7, 0xA3A17F9E, 0x8164453D, 0x52438BB5, 0x9C676981, 0x5B815453,
+0x54444E89, 0x9759817F, 0x4B43AE4F, 0xAB488E7A, 0x60A5978F, 0x6E87B158, 0xAF44AEB0, 0x6A607F7F,
+0x81439E4C, 0x5A5377A5, 0xC3A37971, 0xB7815354, 0x5B4B5F6C, 0x6B6E884C, 0x3A7F53BA, 0x4EB48192,
+0x5F697F82, 0x81813D4E, 0xB3488961, 0x7668B681, 0x8568B2B7, 0xA363774B, 0x4D699D7F, 0xB77FA7B4,
+0xB34E685C, 0xB6B6BC9A, 0x5E81B6B2, 0x93AD4D5D, 0xAC94814F, 0x957F4F55, 0xA4A8426A, 0x8C4EDE8E,
+0x819657C5, 0xB8AD70AB, 0x9C697FA7, 0x816348AE, 0xA5AC974B, 0xABA68681, 0x7F4944C8, 0x5849AA92,
+0x9D4A7F7F, 0x816CA754, 0xA256AF40, 0xA9646F7F, 0x817F57C1, 0xB4AE8C52, 0x7F9ABF51, 0x878F545A,
+0xABB653B6, 0x9B46818D, 0x777346B0, 0x45585FB1, 0xAE609E7F, 0x828156A9, 0x4443A7A2, 0xB150937F,
+0x7F76454F, 0xAFA87169, 0x5C456B75, 0x6A82BD61, 0x46BD5B5D, 0x66B98587, 0xA292B63A, 0x4FA7904F,
+0x9F967F7F, 0x478655B0, 0xCF5B66A9, 0x694F5F5A, 0x4D9F4B4A, 0x46A75C9C, 0x509B987F, 0xB27F41BA,
+0x4A54A2AC, 0x88557F81, 0x5C7F44BB, 0x49545F65, 0x92968181, 0x7B745658, 0x9D549DA7, 0xA1568166,
+0x81ABB040, 0x505C5A66, 0x5AB7738C, 0x8289545F, 0x51AC8D54, 0xA679B57F, 0x847FAA58, 0xDC5DA4B3,
+0x99B2799A, 0x81A69F53, 0xB8B1929E, 0x99844C6D, 0x6F96629B, 0x47B05DAC, 0x6C59817A, 0x81668CB7,
+0xB09F999A, 0x9E9C7F7F, 0x4E7FB853, 0xB3A96894, 0xA056816F, 0x795454A7, 0x619D599A, 0x627ABF7F,
+0x6555AA41, 0xA5584DA9, 0x574B7898, 0xB35699A1, 0x5B5A8D60, 0x5DA44F81, 0x4B7062AD, 0x47B592B3,
+0xAC927D81, 0x7FB53AB7, 0xBFB2B165, 0x51516156, 0x5FB556B5, 0x55B13C4D, 0x9D677F81, 0x81BD52B7,
+0xA6C568A1, 0xA699A38A, 0x534A6BB5, 0x4B48A45A, 0x81958185, 0x81A8605E, 0xAA94606B, 0x908F6981,
+0x81A58C81, 0x63A8A29C, 0x7F6CA481, 0x817F98A0, 0x70457467, 0x7E88B581, 0x55816F5B, 0x6B79877F,
+0x6E798173, 0x7486905F, 0xA26C57A5, 0x6B95817F, 0x74AA938B, 0x63765D81, 0xA2618178, 0x7F81707E,
+0xA69B7E71, 0xB38F7F90, 0x8C7F615A, 0x48639C61, 0x67A35C7F, 0x81816573, 0x60909D6C, 0x818D81A8,
+0x817F6B81, 0x5A64585D, 0xA078759D, 0x8181AD72, 0xA599635D, 0x7F7C8169, 0x81AA7D91, 0x6F89A573,
+0x726A94A7, 0x8181ABAC, 0xAA709F6E, 0x7F5FBA90, 0x81A04F98, 0x619F877F, 0x5CA27A58, 0x8181539F,
+0x55996490, 0x97625F7F, 0x7F88A865, 0xA25E9175, 0xA7678198, 0x81796B8B, 0x97AB9E75, 0x9C687F81,
+0x816D655A, 0x9A8D818E, 0x6869877F, 0x648170A4, 0x75818CAB, 0x77937781, 0x8194A259, 0x979A7C7F,
+0x8B749381, 0x81819263, 0x9157997F, 0x629D8181, 0x81819581, 0x9A8FA19C, 0x655E7F81, 0x818D619F,
+0x7081855B, 0x608C7268, 0x79819076, 0x7098687F, 0x81938181, 0x987D999F, 0x74678868, 0xA28E7F7F,
+0x8681B591, 0x7A7F6D74, 0x955A8164, 0x969A946C, 0xA48F7781, 0x99A67F81, 0x417263A8, 0xA0BB66A9,
+0xA246817F, 0x629FA053, 0x976C5A96, 0x5F957681, 0xB696989E, 0x94A45EB6, 0x98B07F8F, 0x60AEB6C0,
+0x9B7F955A, 0x767F7F49, 0x81607665, 0x90737682, 0x8E9C8185, 0x7F98685B, 0x65715596, 0xA394AB84,
+0x81A76570, 0x6AB2557D, 0x8181787F, 0x70719F8C, 0xA15E6174, 0x7BA2546A, 0x8181946B, 0x9EAD7669,
+0x9396817E, 0x81618B9F, 0x84659389, 0x96939373, 0x7F8E6EA7, 0x9E977560, 0x4D947A81, 0x98818E9E,
+0x86A79081, 0x6A9C817F, 0x7F52A27F, 0x94914F9C, 0x937D8181, 0x9E8A7090, 0x58816959, 0x93779181,
+0x8181577E, 0x6B9A977D, 0xC2948198, 0x8176AC94, 0x6D7FAB91, 0x4E5D827F, 0x887F9455, 0x66908A73,
+0x66AA6B87, 0x8181878D, 0x6081728E, 0x70847F7F, 0x95878AAF, 0x8FC6816C, 0x7B53CB81, 0x557F61AB,
+0x97579A82, 0xA8547F7F, 0x6E816593, 0x48A4887F, 0x8D9E987B, 0x78595C58, 0x4C9A6E95, 0x81819481,
+0x87815490, 0x59716353, 0x618D7F98, 0x8681945D, 0xB4A96CA9, 0xA173697F, 0x81817A50, 0xA6877C5C,
+0xAE757F7F, 0x8181894C, 0x5B969BAA, 0x6AA17F6C, 0x7F7F5149, 0x9D5D6967, 0x8F9F8981, 0x7F7FB96C,
+0x5EAF9983, 0x799DA196, 0x7F69569F, 0x6C859381, 0x74B98175, 0x8181B766, 0x9C948188, 0x81917F7F,
+0x7F7F5AA3, 0x596D927E, 0x644E817F, 0x7F8F4EB9, 0x5151669A, 0x68ACAE81, 0x6E6CAEB2, 0xBD468361,
+0x603B7B81, 0x8181B24B, 0x5A617FA0, 0x9D457A7F, 0x8193B262, 0x645E7681, 0x79B79C7F, 0x857F9F4D,
+0x59AE7F92, 0x51A97F81, 0x7C8159A1, 0x90525C5D, 0x705F5E85, 0x8B8194AA, 0x68B2687A, 0x9D9B6F7F,
+0x7F8169A7, 0x5DA28181, 0x6FA05B7F, 0x7FA7645E, 0x666A527F, 0x9E7C738D, 0x7F7F9E57, 0x5CA6777F,
+0xB46A7AAF, 0x815B9D9B, 0xA9909481, 0x537C6A4F, 0x8181A050, 0x7A979852, 0x4C8182AF, 0x56956C51,
+0x71489A74, 0x766F7F81, 0x4B7F60A5, 0x96579185, 0x6D9B7F7F, 0x817BB0BD, 0x925C9F6A, 0x516F7F51,
+0x639161B4, 0x515AA265, 0xAB8A7F7F, 0x89B2B033, 0x68675589, 0xA4A78C82, 0x86815F49, 0xA2BEB3A4,
+0x534D7F8D, 0x754AA750, 0x62A85D9C, 0xB1548181, 0x7F72AC57, 0xAF705A6E, 0x9283A1B5, 0x7F3A64A8,
+0x5D927781, 0x5BA17F7F, 0x7F6C6768, 0x968E7F6E, 0x64818DB3, 0xA4655AA2, 0x6B97746C, 0xAAA87F95,
+0x7F5D6959, 0xA69B958E, 0x9B5CA87F, 0x7F84905C, 0x9758535B, 0x98817F81, 0x9B81AAA8, 0xB466727F,
+0x4A6D8182, 0x7F64A768, 0x6A975152, 0x6786667F, 0x81A3478F, 0x9E949D99, 0x9A658181, 0x688E478D,
+0xAE728253, 0x9457A681, 0x81815F9B, 0x9191B281, 0x9E7B7F7F, 0xA5819298, 0xBAA09B6C, 0x9EA9817F,
+0x7F8F5AA0, 0x50B2949D, 0xB3646781, 0x678655A4, 0xA1644B8E, 0x6DAD7F7F, 0x8181A8A2, 0x55A8794D,
+0x5379747F, 0x938164A6, 0x9E4F689E, 0x6B857F58, 0xAA62ABA4, 0x976A8A62, 0x856A9DD5, 0x817FA99A,
+0x9C54579B, 0x88A77F99, 0x8181AB4A, 0x617E537F, 0x75818154, 0x738D9DA5, 0x59B45771, 0x5EA28A89,
+0x6092AB50, 0x9D7F9B8F, 0x9E67817F, 0x81814F6A, 0x9CC59897, 0xA8A77FA2, 0x8188A775, 0xA5AC7370,
+0x66BD8181, 0x7CC06569, 0x64B57A7F, 0x7F915F5D, 0x7F9B5E52, 0xA07A6461, 0x9B517F85, 0x7F72B893,
+0xB781789F, 0x51906281, 0x817F477F, 0x4C656E81, 0xB072816A, 0x7D7FAC66, 0xBB645E4A, 0x4F677FAF,
+0x8188609B, 0x58656F85, 0xB681834B, 0x89619559, 0xB595A45D, 0xAD728481, 0x776D5E4B, 0x92A8699F,
+0x867F7D93, 0x81948AA5, 0x7C70977F, 0x8D998181, 0x847F9652, 0x6C4BB484, 0x97938795, 0x686A499A,
+0x6E9C8E56, 0xA0717A7F, 0x7F79955F, 0x9CAD4AA1, 0x5D896D7F, 0x817EA65A, 0x69B8BC5C, 0x728B817F,
+0x717F5FAF, 0xA59F987F, 0x83817F7F, 0x7F7FAB6A, 0xA99F575A, 0xAD7F7F81, 0x81A48F5A, 0x5D567F90,
+0x63648C75, 0xA074A967, 0x61A87075, 0x68757F81, 0xA95B9A46, 0x6490869A, 0x8E768166, 0x9B929199,
+0x63706B7A, 0x7D7F81C2, 0x6497A697, 0x9D62946E, 0x55AA727F, 0x7F829C94, 0xA8A9B059, 0x817F5D81,
+0x9C815F61, 0xAB5C8964, 0x72967F98, 0x919EAA87, 0x48CA6781, 0x669F657F, 0xAF7FB5AE, 0xB4A864A4,
+0xB24EB099, 0x58A14AB3, 0x9BAFAB5D, 0x4C656CAB, 0x7F814EA6, 0xA4AD628A, 0x7548246F, 0x9B855AC3,
+0x944C51A9, 0x618F534F, 0x9889A884, 0x5D5DAB47, 0x8DA77F8C, 0x81495EA3, 0xA698B19A, 0x91668185,
+0x66A56DA6, 0x99B54CAD, 0x65B77F59, 0xA181AD6B, 0x5BA7AC61, 0xC2B2997D, 0x7941A272, 0x4DA95161,
+0xAB497F86, 0x7F999AB5, 0xA8515EA8, 0x4F465B5A, 0x81A3A6A4, 0x6AC25F4B, 0x58A29A4B, 0x3A8A6159,
+0x4B6198B5, 0x9D59457F, 0x8160B351, 0xC4585B42, 0x4DB092A6, 0x6A93955B, 0xA05DC645, 0x504E678A,
+0x7F574EA6, 0x45AE5444, 0x689E8A90, 0x6298B561, 0xABAC5748, 0xB0487170, 0x59814B84, 0xA7A56767,
+0xB7BCA59D, 0x4A8157B2, 0xC15787A8, 0xAD99895A, 0x56515097, 0xB9B09460, 0x8F5B3C62, 0x595998B6,
+0xA94151AC, 0x95A8567F, 0x817FB6A2, 0xAB5E6F9A, 0x5962867F, 0x887FB161, 0x5F9EAC57, 0x9C6A8B49,
+0xBDA7535E, 0x445D6860, 0xB35C694F, 0xA48B95B2, 0x4DA259B2, 0x81588181, 0x5461A6A8, 0xB9AF7546,
+0x92B63672, 0x8170B7B4, 0xB667714F, 0x7C55507F, 0x7F815248, 0xC04A9339, 0x705BB67F, 0x827FAFA7,
+0xA0AB4D4C, 0x8D656A7E, 0x7EA9514F, 0x4DB99158, 0x9CB3817F, 0x9D8150C1, 0x4CB6AA54, 0x63A9597F,
+0x7F7E5443, 0xC0B4A254, 0xA8B18185, 0x87B1A65A, 0x4C57C0BB, 0x45656477, 0x79B6A54B, 0x5F4AAA98,
+0xB16D5D61, 0x59819452, 0xADB8AC61, 0x9A528265, 0xA08141AE, 0x58A3A764, 0xB194AC7F, 0x59A54190,
+0x5E5CA1A4, 0x58628181, 0xAD81AFA5, 0xBD7F6E70, 0x319C81B1, 0x73995597, 0xA659AE57, 0xB65A8881,
+0x8E815C92, 0xA3666C67, 0xBC637F7F, 0x7F5E9970, 0xB3B69F4C, 0x5B9F817F, 0x7FA248A2, 0xA8A54D4A,
+0x4F3DA18A, 0x634958B3, 0xA55365A3, 0xA25F71A9, 0xB38F4EB5, 0xAE6EA6BF, 0x5F978181, 0xA1889D4F,
+0x575654A5, 0xAEAC6972, 0x5B715464, 0xB9AE5D53, 0x6968B2A8, 0x8196A1A5, 0x9CBB9F47, 0x52618DA2,
+0x81B4C162, 0xAD73717F, 0xB265A17F, 0x4381A3AB, 0x6055606F, 0xB6C2726D, 0x7F4FA069, 0xA39A8492,
+0x52469088, 0x81B95D62, 0xB269AFA3, 0xAB719581, 0xA57FA6AB, 0xA76454BC, 0x52AF9681, 0x818134C1,
+0x9C64AB69, 0xB15BA081, 0x965EAFAA, 0xA558AF44, 0x9E98657F, 0x8194B4BD, 0xAFB376AD, 0x575D585E,
+0xA992B097, 0xA74C69B6, 0x53A67FA6, 0x817FC6A0, 0xA9614E4C, 0xC3A67F81, 0x817F5F96, 0xB6B0605E,
+0xB251816C, 0x7F5251B5, 0xAB61A36F, 0x61BD8191, 0x7F7FBC50, 0xBCBC4DA4, 0xA2B7B679, 0x4D81ABA9,
+0xA5506D9B, 0xB16D6F81, 0x424D5E5F, 0x22AC99A0, 0x3E4A818A, 0x6A9459B8, 0x485151B7, 0xC5A8837F,
+0x7F40B4C1, 0x57AB649B, 0x685281A8, 0x814C56B4, 0xB34E919E, 0x47B7616B, 0xA49C4AB6, 0xB4454EBD,
+0x45B671AD, 0x7F876260, 0x49C1A551, 0xAD6695B0, 0x818BB24E, 0xAFB49148, 0x6C4B819B, 0x757F555D,
+0x60485036, 0xA73D7F8D, 0x7B5CA3B5, 0xB0A76061, 0x68B4AA9F, 0x9474ACA6, 0x5FADACB8, 0xA994554E,
+0x4D62AAAF, 0x9BB793B2, 0xAB4B865E, 0x9E90AA5A, 0xB6A89F47, 0xAC999781, 0x5B81A7C8, 0x54B89493,
+0x9D9C4B7F, 0x7F6858A6, 0xA65855B4, 0x96AC5160, 0x66509251, 0x4D47B15D, 0xA44B6096, 0x6E65AEA5,
+0x6BAFAE49, 0x9BB57F7E, 0x7A8F664C, 0x51545C4A, 0x98457F96, 0x7F815E51, 0x44B9A061, 0x769D8178,
+0x87A051B5, 0xA7559AB7, 0x635856AF, 0x815DB1AD, 0x63B78E5A, 0x555C917F, 0xBE7F503D, 0xAB5D6F9D,
+0x4D51815B, 0x7F7F53AE, 0xA949729F, 0xAE956F7F, 0x8E4FB65A, 0xBEB75C62, 0xA23E72A4, 0x5B7357AB,
+0xB551A5B9, 0x544B9667, 0x6B49A054, 0xB55A974F, 0x51665E7F, 0x81A1AEB2, 0x4BA6AA3C, 0x94AC5454,
+0x7F81B043, 0xB7BF65A7, 0x5A4D815D, 0x8E77503E, 0x54494FAB, 0x9A67AFB6, 0x55564CA8, 0xBDBD5AA5,
+0xAE4B7FAA, 0x5D78B3C5, 0x5AADBEAF, 0x4D9D8E7F, 0xB0814F4E, 0x4CB95760, 0xA79F9A81, 0x817FA8D5,
+0x4B3B94A3, 0x5F9FAD7F, 0x5B4CB14B, 0xB4BA6A9F, 0x63AC52A9, 0x94815055, 0xB5495C60, 0x666C81AF,
+0x73AEAD40, 0xAD5CB455, 0x594F537F, 0x7FA4A14A, 0x54B85EC8, 0x594E8176, 0x56BE4846, 0xB25C969D,
+0x5557886E, 0xB25A3C3F, 0xA550906A, 0xAD8E767F, 0x75BBAE40, 0x4B5EAA90, 0x5450819D, 0x62A5A7BD,
+0x55B05AC4, 0x634D5371, 0xAD61B5AE, 0xA8B48F51, 0xB848906B, 0x669B624F, 0x59B1914E, 0x5BA47A9A,
+0x70A2B6B1, 0x563458A4, 0x5A637F58, 0x66A95546, 0x5FB25499, 0x9987A481, 0x9B7A6759, 0x494557A6,
+0x9D5C9A81, 0x7FAF533C, 0x45AA5EA9, 0x6CA97F78, 0x4F7F934C, 0x62BC71AD, 0x9B9581AA, 0x81AEA7BC,
+0xA2459D99, 0x63C36899, 0x7FA74E54, 0x5B4EA968, 0x5DA292A7, 0x8181B4C1, 0x53454061, 0x64A8B462,
+0xB781A646, 0x5AB490A4, 0x64517F7F, 0x6D52AA47, 0x9DAAB6AC, 0xBDB78D7A, 0xA57F5649, 0xA6A9506C,
+0xBBA66881, 0x88B35EBB, 0x56AB68A1, 0x7A477F97, 0x7F8467B7, 0xAD31B15C, 0xA1B67F66, 0x9CA25640,
+0xB04B4E57, 0xB1537F7F, 0xA88853BD, 0xCA4450B0, 0x6C697F81, 0xB46D5141, 0x4E435655, 0x975BA581,
+0x9159BC4E, 0x4BB5AA56, 0xB25D8C81, 0xAE815E52, 0x53446FA5, 0x4CC19289, 0x4E8143B5, 0xB9A8986D,
+0xA05A8151, 0x7F59BBB4, 0xA5C36BB8, 0xB25577BD, 0x64CB4C47, 0xC8A0558F, 0x4F6E7649, 0x7F7FA752,
+0xA967A265, 0xAC56816F, 0x8181A452, 0xAB629D8A, 0x8F635381, 0x8181424C, 0xB65E53A5, 0xB6497388,
+0x7FAF5A3B, 0xC09D9796, 0x5FBE646A, 0x7DA3B1B7, 0x57A8466F, 0x5F68A340, 0x7F90B39F, 0x5D96B54E,
+0x788F50CF, 0x7F7F499F, 0xAA58476E, 0x53AEB183, 0x8191ADB7, 0xBA60A05E, 0xA9547F67, 0x9968B0AF,
+0xB4B4B49B, 0xA69DA355, 0x7F63A448, 0x5EB09F53, 0x62ADB581, 0x81A4484C, 0xA5B46661, 0x549F7D69,
+0x96BAAC4F, 0xAC5EA459, 0x3F6D7B81, 0x8162AFBE, 0x624C70AC, 0xA9939C52, 0x9755AD52, 0x4D4D5199,
+0x9A68ACAC, 0x7A544F9F, 0xB44B4EAD, 0x56487F85, 0x81A8A3B1, 0xA2AD934D, 0x6CA08181, 0x68A84F3F,
+0x41A66666, 0x6D9481AD, 0xAA4AAA5C, 0x5EA84C85, 0x6C505A7F, 0x7F7FAC43, 0xB6A84D65, 0x405A9870,
+0x7FAF4A36, 0xBCAB986F, 0x9265B081, 0x7F7E3E59, 0xB55790A3, 0x66A34F88, 0xBD7F43B5, 0x4FA8926E,
+0x9EAA8173, 0x4D7FA656, 0xB354675A, 0xA15A814F, 0x737F5B52, 0x4E645799, 0xA4B7B16C, 0x6B9250AA,
+0x5353B0B3, 0x96A74E81, 0x7F46AF53, 0xAAA2715B, 0x449A9681, 0x4E81AF55, 0x57476290, 0x509B797F,
+0xAEB8AD45, 0xAC4A665F, 0xB2ADAE7D, 0x427752B1, 0x534A9155, 0xBE55698B, 0x82A6B457, 0xA3435FC6,
+0xB93B8162, 0x817F5454, 0x465F8E6C, 0xB866A652, 0x814FAEAB, 0xB8A8506C, 0x5957B27F, 0x51814B4C,
+0xAA526F55, 0x605D479F, 0x7F96B461, 0x55B1AD45, 0x54A485AF, 0x8158ABB0, 0xB6B56065, 0x719E4FB5,
+0x788455AA, 0xB49FAC50, 0xA5909CB3, 0x6CCEAFA4, 0x52664FB5, 0x579EAA7F, 0x7F7F4E47, 0xADAD6158,
+0x8CB3815A, 0x6B4AA961, 0x56A7566B, 0x91AA7F81, 0x8193B362, 0xABA367B9, 0x55A39D81, 0x5C7FAE55,
+0x4B9CAC66, 0x9A5581C1, 0x81724AAC, 0xC456535F, 0x9065B57F, 0x816D4B52, 0x55A198A4, 0xB3AA9B88,
+0x81B85450, 0xA7B76260, 0x56977381, 0x52646157, 0x4B9BA5B7, 0xA29A5781, 0x8BACADA7, 0x54AF4B58,
+0x9761AD81, 0x6181A15D, 0xBCC2AD96, 0xBBA79696, 0x5352AFAF, 0x565B985E, 0x655A9C6C, 0x7F854BA6,
+0x9F557856, 0x9C9BA953, 0x9581BEA1, 0x63AEB061, 0x6C478164, 0x568D53A6, 0x50AD9546, 0xAE72597F,
+0x4D85BB52, 0x45ABA149, 0xAB948AAF, 0x99815DB2, 0x52A94D9E, 0x94587F81, 0x736FAA5A, 0x506653B5,
+0xB36F9781, 0x58927B57, 0x78587F66, 0x53988A7F, 0x7F818147, 0xA3AD6A7F, 0x79A1A17F, 0x816F6B6B,
+0x9E5881A4, 0x5988699B, 0x6A8F7FB1, 0x7F5EB768, 0x6D88619F, 0xA08E7F8E, 0x9B93867F, 0x7A8D817F,
+0x7A958E9B, 0x9A498B61, 0x8D7F7E81, 0x837F6AB2, 0x9656A37F, 0x785A5971, 0x947F819F, 0x919C8673,
+0x71909F97, 0x5E856361, 0x74587485, 0x73729081, 0x7F7F5260, 0x59AA7B5F, 0x93837F7F, 0x966985A3,
+0xA1A77F97, 0x57637F7B, 0xA79F9BA7, 0x979C7F7F, 0x6C819A69, 0x81879A5A, 0x5E508A7F, 0xA688926A,
+0x7F8194B3, 0x4B5A7B8D, 0x81769081, 0x7F7F549F, 0x6E56987F, 0x4A7F9F66, 0x6BA97991, 0x4DBC9C7F,
+0x817F5F81, 0x5081936D, 0x6A74847F, 0x88725A7F, 0x7F426181, 0x7893957F, 0x8A818381, 0x498193A5,
+0x7B81608F, 0x7085A17F, 0x755C8B93, 0x6564527F, 0x465D8881, 0x8196817D, 0x81578382, 0x5E8D7F7F,
+0x53819054, 0x995B7F5E, 0x8E79657F, 0x8181945C, 0x6EA28881, 0x8364B990, 0x669171A0, 0x9253617F,
+0x9C81B481, 0x7FC39763, 0x7AB0757F, 0x9FA27B81, 0x6B7F86AF, 0x89A17981, 0x917F7F5A, 0x7F816B59,
+0x8D6C547F, 0x90AC7F7F, 0x8EA27067, 0xAD5454AB, 0x6544506C, 0x7F565C56, 0x4E42789B, 0xB3906949,
+0x816856AA, 0xB59EA3B9, 0xB6575481, 0xB19850BA, 0xB44A644F, 0x5498867F, 0x5D7955A3, 0xA29F9CB6,
+0xB5546385, 0x63AC4D57, 0xB15E606F, 0x9D62A181, 0x878CA85B, 0x6454B74E, 0xA05A817F, 0x857856AF,
+0x5D9844B9, 0x9CAB8177, 0x7F7FBEB7, 0x66616BA2, 0x6DA65881, 0x9A81A554, 0x66A855A2, 0x50AE6483,
+0xA081A354, 0x463E6993, 0xABAC6081, 0xB07FA157, 0x50A07EA3, 0xCD9F95A3, 0xB77FA2A9, 0xB2B17291,
+0x724B4865, 0x7F815094, 0xBB525B86, 0x8197665E, 0x6883AEA6, 0xACAD589E, 0x865F587F, 0x55AD51B5,
+0x42B1B79F, 0x7097A340, 0xAF8DADC0, 0xAFB3A947, 0x9D63B581, 0x2CBC4B3E, 0xA751689B, 0x52A25EB8,
+0x797FAD55, 0x44B35296, 0x4AAC8197, 0x5281514E, 0x5A999DB0, 0x53508769, 0x779C5E60, 0xC6B3B196,
+0xAF999081, 0xBB99546A, 0xAB815D5B, 0xAF9B9DB6, 0x6E814C8A, 0x5369546D, 0x60887FAF, 0x9AA7A0A8,
+0x9E58AF63, 0xA39A7F81, 0xB8AA5DC2, 0x964D5977, 0xA7AA7F71, 0xA19AB66B, 0xABB765B7, 0x9679A87F,
+0x9A569555, 0x51A79C74, 0x6499A549, 0x7F81A26E, 0x56A75AAE, 0x9FB1A361, 0x7F5D925B, 0x97A84E93,
+0x6D66818E, 0x6FA247B3, 0xA2B54F9F, 0xAD96965E, 0x8399A3AE, 0xA9B2A85B, 0x6775B063, 0x9A9D5CB5,
+0x99B2A992, 0x5EA6BB97, 0x9FA65798, 0x50566170, 0x9FB3817F, 0x887FB7A1, 0x9957BD97, 0x27A488AC,
+0x9E4E94B1, 0xAFB09965, 0x9C577F7F, 0x7F4F9DA3, 0x5B4F6C93, 0x67BD3F81, 0xB6966251, 0x77AC5BB0,
+0x6AA47F65, 0xAE7FAB44, 0xB2A6A75E, 0x9A5B607F, 0x52AAAF45, 0x49A8636B, 0xB5A88A7F, 0x974F4E5E,
+0x5DAF389E, 0x9396815E, 0x6AA6B84B, 0x5BA4AFA2, 0x5E8C7F7F, 0x817F525E, 0x4E509B6A, 0x4FAF637F,
+0x727F46B3, 0xB0A99EAF, 0x69964D7F, 0x786B594C, 0x59B14B4C, 0x9E5E818A, 0x6F5F9B57, 0xABA45098,
+0x67507F81, 0x96813EAB, 0x51B1569B, 0xAE8F8E59, 0x81935597, 0x4DA06156, 0xB15B8181, 0x766E58BF,
+0x54A24CB1, 0x914D987C, 0x81559A6D, 0xB5A0995C, 0xB0AF857F, 0x7F518655, 0xAC518D78, 0xA496B8AD,
+0x7FA25A9C, 0x3DBA4C6C, 0x69B5817F, 0x797F56A9, 0x61C8B1B5, 0x6C7F5B81, 0x637F4357, 0xC1518550,
+0x70A8BE66, 0xC37FA1B1, 0x6DAA748B, 0x69558873, 0x8D7F52B9, 0xA652636B, 0x66817381, 0x7461569C,
+0xBAB85859, 0xA06781B0, 0x7C81BB57, 0xADAF5169, 0x929A817F, 0x7D5AB95A, 0x58AC445C, 0x549F7781,
+0x6281AF95, 0xA94C4EA8, 0x6763818B, 0x52815DA1, 0xA0BA6055, 0xAD619365, 0x7459B14A, 0x5A516275,
+0x715B607F, 0x7F7F52B4, 0xB9416FB3, 0x48629381, 0x7D9156AA, 0x9B56A2A6, 0xC55D98B8, 0x71A3B4AD,
+0xB2B75657, 0x6F70BF7F, 0x707F57AB, 0xAEA696A3, 0x81667F44, 0x5E4EB3AC, 0x639A608C, 0x819359A0,
+0xA290AD50, 0xAB8A88A5, 0x9D9588A3, 0x7F9053AF, 0x695C5F4F, 0x7F5D817F, 0xA57FAC65, 0xAC5E81A2,
+0x817F8296, 0x697FAF88, 0x51949865, 0x9F5B8581, 0x6A3E517D, 0xA7779A89, 0x81867F7F, 0x5898A7A4,
+0xA9B75F9B, 0xA2AD7D97, 0x70815093, 0x5A999A97, 0x8F5C8181, 0x5E815666, 0x4AAF849D, 0x99B3816E,
+0x796E9FB1, 0xAB6F934E, 0x68877981, 0x47556070, 0x95AB94A6, 0x985E77B5, 0xA28BA29A, 0x595B9DA4,
+0x95797FB2, 0x5C81918A, 0xA4996B95, 0x4889817F, 0x577F555A, 0xA49C89BD, 0x71817FA3, 0x54799FB2,
+0x4398625A, 0x7F948181, 0x7F84B0AA, 0x955E7F4C, 0x756F9258, 0x81814A62, 0x564F7FA4, 0x609BA24C,
+0x81796793, 0x558E884F, 0x6C5BA775, 0x7FB7598D, 0xA9949489, 0x836CA2A5, 0x897E525F, 0x95AF9368,
+0x62468581, 0xAB9CA26B, 0x62577F5E, 0x7C988177, 0x817F6757, 0xA46A8A70, 0x918D544E, 0xC269A460,
+0x6D4781A0, 0x855757A5, 0x6462A6AE, 0x5E4B5DA5, 0x989F97A0, 0x7F9E684F, 0x524B6074, 0x635F7F7F,
+0x90538F85, 0xA166A25C, 0x8CA7857F, 0x6B589398, 0xA6AE7FA5, 0x89514F81, 0x97785FA7, 0xAC9E4051,
+0x6C6B7F7F, 0xB381AFB8, 0x4751795C, 0xA8A38459, 0x7F93552C, 0x5C566999, 0x85839F4E, 0x947FA99A,
+0xAF73925A, 0x679D68AC, 0x6CA69C4C, 0x4B576C90, 0x4F818C81, 0x8E815797, 0x40B1B56B, 0x7F57818F,
+0x7D82AB8C, 0x5173B06C, 0x68845C3F, 0x8184B170, 0xA9948646, 0x554C9D7C, 0x87AEAF74, 0x559F5354,
+0x81C27F81, 0xA381949A, 0xB1A8688D, 0x8C718181, 0x774BA866, 0xA451A26D, 0x669797AD, 0x7F86936E,
+0xAB449875, 0x9F5F8187, 0x7F8F6DA4, 0x42B29158, 0x9D998166, 0x53819F9B, 0xBA5D6864, 0x615F7F7F,
+0xA581B2AD, 0x51629167, 0xA36D6386, 0x8985518B, 0xBF6751A1, 0x69B88181, 0x7F7F6C48, 0x95996268,
+0x519F6C65, 0x94ADA63B, 0x49A0ADA5, 0x90B25E4E, 0x7D619FAE, 0x5D63A95A, 0x9B6CB181, 0x6277A89F,
+0x579B74AF, 0x4F9D6F98, 0x9F6D6B47, 0x443F6BA5, 0x9B62517F, 0x77B3B04A, 0xA4608E7B, 0x9468B89A,
+0x7F525EAE, 0xA9947488, 0xAA519D9F, 0x6F786BAE, 0xA88A9F5D, 0x52AB977A, 0x51C89F63, 0x5C717781,
+0x53A2908F, 0x87AEA269, 0x7D9E6672, 0x60A97D6B, 0x6C8F9764, 0x515BA559, 0xA44D91A1, 0xA96BA74A,
+0xA8668150, 0x82604C95, 0xA25FB260, 0x6794A66A, 0x7165A981, 0x7F81686F, 0xA66F9599, 0xA0C27E92,
+0x5281659D, 0x71727F55, 0x8C958181, 0x61815670, 0x9F7F854D, 0x66827F81, 0x7FB4B193, 0xA7985A9D,
+0x557B6881, 0x68816163, 0x5D986BB5, 0xAF7E83AA, 0x688199AD, 0xB556814E, 0x6C7F7FA2, 0x8260AF62,
+0xA1685F5E, 0x8D648B99, 0x7F8197C0, 0x426275BA, 0x81B9817A, 0x81A55673, 0x4BA9736E, 0x7597817F,
+0x7F8146A2, 0x4D4F9BA9, 0x975F7881, 0x7F812EA6, 0xBE5D724E, 0x9B5A689D, 0x9381A556, 0x9F558192,
+0x639F5C54, 0x817F629D, 0x589B5F53, 0x6D766959, 0xA183B466, 0x449E98B1, 0x93677F7F, 0x7C99424F,
+0xADA98DC3, 0x6F8F7F7F, 0x817F4997, 0xB896A2B5, 0x8EA0A871, 0xA66153A7, 0xB09B8B92, 0x7FA87F7F,
+0x7FBA5FA0, 0xACB37862, 0x81708181, 0x517FADAB, 0xA28D6F82, 0x8B65A056, 0x7FAE47A6, 0xAAADB071,
+0x7A8F7FA5, 0x816FB9A5, 0x5690AAB6, 0x7F997F91, 0x818171BA, 0x6787756B, 0xABBB8493, 0x7F7F6AAA,
+0xA7A9974C, 0x66A07B5B, 0x7F8A60A7, 0x698EA7AB, 0x7F5CAE96, 0x817F6691, 0x55956B6C, 0xA48C9C57,
+0x819F5F67, 0x60625F70, 0x789B6277, 0x7F55614E, 0xB0A19986, 0x5863684C, 0x756FA99C, 0xA99C856F,
+0x64906168, 0x7FA83D5B, 0xAC5B596F, 0x637275B3, 0x7F81659A, 0xAF69A0B9, 0x75579B81, 0x717FA48E,
+0x4CAF749D, 0x57688C91, 0x757F5596, 0xA2A3A9B6, 0x5D9D7F6C, 0x9B82A748, 0xB5A272AE, 0x588E7564,
+0xA67FADAA, 0x47BB8C60, 0x929CC37F, 0x49985A37, 0xAA5269A7, 0x72A16A9D, 0x5E7FAC53, 0xBCA2564E,
+0x798F81D1, 0x816B9556, 0x969E8167, 0x78B37F7D, 0x817F9E6A, 0x5EA1816D, 0x93578171, 0x8197625C,
+0x8AACBA62, 0x76B69A7F, 0x8181A79A, 0x55A29199, 0x7CAE817F, 0x81819F6B, 0x47A29F72, 0x7B8181AD,
+0x4F7FA899, 0x5B738FA6, 0x767F817F, 0x7F7F53A2, 0xA1AA814E, 0x9594817F, 0x7F7FAE8D, 0xAB5DAB77,
+0x7F958199, 0x917F5850, 0x609B729A, 0x817F7F62, 0x8187959F, 0x645D73AC, 0xA059818C, 0x7F81AAA7,
+0x5967596E, 0x749DAA84, 0x4EA54175, 0x98647971, 0x5C648177, 0x814AAB90, 0xAAA0A268, 0x76569362,
+0x767FA5A5, 0x4B4C4C98, 0x5D707F7F, 0x9F5C5895, 0x57577E75, 0x7E5BA07F, 0x777FA5A7, 0x5AA4995F,
+0x77A7AA82, 0x78608F74, 0xB69AA781, 0x94815B81, 0x8163B39A, 0x588D7079, 0x7497817F, 0x7B7F707F,
+0xB15A709C, 0xB8875081, 0x5881765C, 0x5F528195, 0x7348817D, 0x8165B760, 0xA39D946F, 0xA4AE817F,
+0x818B9D64, 0x5D9C8967, 0xA1667F84, 0x7F81677A, 0x8D7E7FB9, 0x8D4C597C, 0x7D816471, 0x9F926576,
+0x3CAA817F, 0x7FABA17D, 0x5C616397, 0x8C568181, 0x7F61989F, 0xA6759F96, 0x855B9A90, 0xA863AC89,
+0x45787E78, 0x5F547C71, 0x8C7F9B55, 0x575EB6B2, 0x6B4D7F71, 0x53B79DB0, 0xACB96F63, 0x6964C481,
+0x7F76AD61, 0xB9B2AC51, 0x9662817F, 0x8C8955B2, 0xC0522D5E, 0x53B08E81, 0x8F7F4651, 0x9E9D9A9D,
+0xBB669B81, 0x8A9652B9, 0x57953951, 0x5E52658E, 0x846959AF, 0xBC9F5552, 0x66B47F73, 0x926BB256,
+0x9F61A952, 0x7FA6AE57, 0x7581A6A5, 0xA64B6396, 0x98484181, 0xA6794ABB, 0x4D93943D, 0xA2C76564,
+0x526C6662, 0xA7568AB9, 0x97A398AE, 0x52405A9B, 0x614F9A9C, 0x5B4292A2, 0x67715E9B, 0x9E5E4E49,
+0xA9AE8168, 0x817F96B5, 0x41A762B7, 0x52B16B70, 0x56889FA4, 0xA6B6A8A9, 0xA8A093B3, 0x927CB65B,
+0xA65457A1, 0x5F91AA50, 0x8160AC53, 0xB64F5BB1, 0x65B99D8A, 0x9E746F51, 0x9A69C059, 0xB5506B7F,
+0x7F7F5864, 0x6152B955, 0x866D7F50, 0x8B8E4FB9, 0x52936C44, 0x6370A769, 0x815E3F46, 0xBD608885,
+0x5C815981, 0x697FADC4, 0xBD477574, 0x98905451, 0x57C148AD, 0xA3569981, 0x976D4181, 0x745C59B2,
+0xACB97064, 0x8181D27F, 0xBC6A7551, 0xA4AB93A9, 0x90ACAA8F, 0x7F6146B8, 0x9D9B7154, 0x99628181,
+0xAD4F64AD, 0xB9A18D9F, 0x606F7F49, 0x81AE58AC, 0xB4999662, 0x535BA281, 0x629AA4C3, 0x5D5F64B0,
+0x6E51BB63, 0xBFB3A14C, 0x55B47093, 0xA6597F74, 0x82815D9C, 0xB2616A86, 0x919965AC, 0xAEA74C4E,
+0x4FAD9DAC, 0xA2AB4F92, 0x8C7F93A3, 0xA1B7B5BE, 0x9DAF4373, 0x7FBB52B6, 0x4757B59E, 0x5A4CCA8E,
+0x65684FA7, 0xBAA765BB, 0x8452817F, 0xA760B548, 0x3EA29866, 0x72597A65, 0xC28C4A4F, 0x53519359,
+0x96BEC48F, 0xA2A46CA3, 0xB1B36A5D, 0xA267BF7F, 0x7FB35454, 0xB24C7E78, 0x8D588181, 0x7BB541A9,
+0xC1AF629D, 0x65A3BE60, 0x6683AC46, 0x47A0ACB9, 0xB79F87B0, 0x4B9A4959, 0xB0A67E30, 0x55A38881,
+0x817F56AF, 0xA25793A3, 0x4DAA7F81, 0x617F4CB6, 0xB1BB6068, 0x9B907F81, 0x9581594E, 0x4AB29FAD,
+0x89BA817F, 0x8181ACB1, 0xC5ADACB5, 0x5F4C90A3, 0x7FA96455, 0x4558B65D, 0x984C758A, 0x4AB34750,
+0x52476F9F, 0x8FA2C462, 0x9D7FAFA3, 0xB95045B1, 0x9CA6817C, 0x927F5F50, 0x684F335B, 0xC49F6387,
+0xA17F5556, 0x514DAF67, 0x94667F7F, 0x4D964B55, 0xC04C5C53, 0xAFAD9061, 0x9E8148BA, 0xA99B4C94,
+0x52955D7F, 0xA74846A6, 0xC8AE5163, 0x9DAAA684, 0x43BD446D, 0x519C6D6C, 0x9D9C4682, 0x758AAF5E,
+0xA5A45CB4, 0x64A753B3, 0x57AE4846, 0x6AA49159, 0xB9928C81, 0x7F67A362, 0x49A8985C, 0x60B68157,
+0x676498A7, 0x6499B74C, 0xA26E7F81, 0x9483A64B, 0x6160AEC1, 0xB161729E, 0x5E7258A0, 0xBD9B5AB8,
+0x64BA7F7E, 0x7F444CA9, 0xBFB29CA9, 0x6E6381B1, 0x819559AC, 0xB0B1644E, 0x99A8817B, 0x81C95247,
+0x524F3D9F, 0x56A07F81, 0x7F7CB253, 0x4F53A057, 0x9175814D, 0x5C819F92, 0x59A28F66, 0x8E7A8981,
+0x7F609C78, 0x936E778C, 0x7F4D8181, 0x7F705896, 0xA16289A0, 0xAB937F7F, 0x7F9E6F7E, 0x9DB29368,
+0xAC98747F, 0x537F6363, 0xA68D8987, 0x5A6C7181, 0x817C8F8B, 0xA4649E99, 0x51677F81, 0x8E778B6F,
+0x5972A564, 0x5E7F819F, 0x817FAA89, 0xB69F748D, 0x8F557F81, 0x816B8F65, 0x62756591, 0x598E819D,
+0x577CA087, 0x566A9958, 0x9A687C7D, 0x7F81928C, 0xAB9A9F5A, 0x9CAC8183, 0x8175755B, 0x938A9EB4,
+0x6472887F, 0x757F6164, 0x9B674C66, 0x77A08381, 0x7F7BAD58, 0x59A09167, 0x665A7C6C, 0x7F7F9A87,
+0x9E71A08A, 0x77897F81, 0x7F7FA185, 0x6286748B, 0x877D81B4, 0x81B47495, 0x4B819374, 0x6289907F,
+0x6E79A762, 0x70777369, 0x54597F81, 0x8E817391, 0xA8A5779F, 0x87A07F81, 0x817F7450, 0xAA6D5E7D,
+0x9A958181, 0x81815F65, 0x75A28181, 0x74637F95, 0x798A595D, 0x877F5090, 0x77988198, 0x7F815F88,
+0x84737F7A, 0xA39A817F, 0x817F9981, 0x727F5A7D, 0x627E7FAC, 0x8174A869, 0x9A9B815E, 0xAB797F68,
+0x59815A66, 0x6F967976, 0x59B17F88, 0x81818C5D, 0xA46F9D6E, 0x6F68895D, 0x5490B55F, 0x59486055,
+0x7BAA7F81, 0x575EA0A1, 0x559C9B8C, 0xA75A814E, 0x817F5350, 0x6141A29F, 0x969E9D8C, 0x818168B0,
+0x8F639B6B, 0x517D737F, 0x7F7C947F, 0x6095A760, 0x5F579869, 0x7F709563, 0x9788C674, 0x5E867F60,
+0x817FA64D, 0x66568C81, 0x78947F81, 0x817F814E, 0x665E8C8B, 0x7F58817F, 0x659D886D, 0x635C7595,
+0x6C7F9B7F, 0x8C74B8A3, 0x6A927379, 0x9384A357, 0x7F4C64A6, 0x6D9A9C7F, 0x87587F7F, 0x819F6883,
+0x5EB7727F, 0x9A8D8168, 0x7F71A157, 0x5D715B68, 0x8C755E7F, 0xA17F818B, 0x68968B6D, 0x53A3877B,
+0x7E559054, 0xA353A199, 0x637F897F, 0x81626550, 0x469C5E7F, 0x5E558281, 0x817F617A, 0x9C966281,
+0x81946A7F, 0x7F6FA3A2, 0x6E7F5081, 0x6A4F7FA9, 0x817FA159, 0x6D9D71A9, 0xA65EAC84, 0xAA815E7B,
+0x55B9775C, 0x6B8F817F, 0x81736A65, 0x685C876F, 0x6981A081, 0x7F706597, 0xA88969B0, 0x70937F98,
+0x797F7D7F, 0x9AA47FA9, 0x89B98197, 0x7F58A9A8, 0xADAD6F5E, 0x8960817B, 0x59775C62, 0x9754818E,
+0x7778A9AB, 0x817F7AA1, 0x945E945C, 0x7D9C8181, 0xA38146B1, 0xA95F96AC, 0xA1A37F81, 0x8199A260,
+0x666E6381, 0xA0976F69, 0x937F4E6A, 0xB58D8CA1, 0x7F777F81, 0x85814598, 0xA979A981, 0x577D8184,
+0x876C6953, 0x54A38858, 0x7BAF817F, 0x7785AC66, 0xADAAA2A8, 0x74A4547F, 0x977F4745, 0x52C56B8A,
+0x90407F7F, 0x7F81A9AE, 0x56538796, 0xAAA4A981, 0x812FBC5E, 0xAD9E617A, 0x95B28196, 0x7F8E58A6,
+0x7F3D757F, 0x936F7F75, 0x9C815E56, 0x796892A5, 0x926C814B, 0x81819D50, 0x584C6C7F, 0xAA798159,
+0x81819563, 0x466D6D8E, 0xA36981A2, 0xA09E9A54, 0x855A8D9F, 0x678B817F, 0x6281A4AA, 0x60B48E6B,
+0x9F608181, 0x84996BBB, 0x90A55168, 0xA6828181, 0x9A815AAD, 0xA0666C70, 0x74888162, 0x817AA551,
+0x75A99B8F, 0x65677781, 0xABA9535D, 0x926B975D, 0x71926265, 0x7A81A751, 0x9B5A5879, 0xB486817F,
+0xAA626F52, 0x5647AD67, 0x73527F81, 0x7F819A6A, 0x5F6AAA7F, 0x525E7F9D, 0x81A7A756, 0x796E9C75,
+0x86758186, 0xA95BACA9, 0x9AAE7A63, 0x5D87617F, 0x9B7E506A, 0xA39C8178, 0x7C58817F, 0x8A7F4FA1,
+0xA6669C6F, 0x9657A97F, 0x818154B3, 0xA26562A0, 0x68926F7F, 0x989AA5AE, 0x459F63A0, 0x75598160,
+0x7F49A8A6, 0xA29B9E81, 0x9F85AE4E, 0x6C62A9AF, 0x6770A471, 0x62847F48, 0x8D98A4AF, 0xA26F79AF,
+0x69648196, 0x969F5094, 0xB3A06CA1, 0xAF8A815F, 0x725B576B, 0xB0947A4D, 0xA763818B, 0x81A7B1B1,
+0x59675E8A, 0x728A817F, 0x81896650, 0x5A9850A7, 0x86635F9F, 0x7FAF60AA, 0x9494797A, 0x72907481,
+0x8181A26E, 0x4158667F, 0xA47D8192, 0xAC54A255, 0x6E697296, 0x4B637181, 0x8E81609C, 0x55B05B7F,
+0x69A4697F, 0x8188B864, 0xA054A5A8, 0x71A37F63, 0x7F817564, 0x575990B1, 0x8CA07FB3, 0x7F7F58A0,
+0xA76398A1, 0x53737C8A, 0x8198AC4A, 0x5BA5667F, 0xAD5F8184, 0x817FA844, 0xB79CAB56, 0x7C69A681,
+0x857F5564, 0x5F739D6F, 0x69908461, 0x817858AB, 0xAC4E6164, 0x97988181, 0x8196BB8D, 0x5955A147,
+0x98B08181, 0x8150A062, 0x57CD7F71, 0x8EA08181, 0x60819B62, 0x8F9C8FA6, 0x817F444B, 0x7FA75753,
+0xA77F6D73, 0x6284817F, 0x81815D69, 0x4E86779B, 0x61627F65, 0x7F86ABBF, 0xBC8F6EA3, 0xB9707281,
+0x816A59A3, 0xB38F6DB1, 0x999B817F, 0x7F5FBA52, 0x6A9F8D66, 0x64A47F6B, 0x67815D4F, 0x735E7A7F,
+0x505B817B, 0x7F819D65, 0x9D9B507B, 0x6A957F79, 0x7F91A257, 0x8AA04E8E, 0x7FA2817F, 0x507C816A,
+0x7D588D9D, 0x818F527F, 0x83A0976C, 0x91528881, 0x978181A0, 0x7F8158A6, 0xA2A68592, 0x7FAE8181,
+0x81964DAD, 0x685D567F, 0xA2939AB6, 0x8D81B757, 0xABAF93A8, 0x667C7F95, 0x6E545956, 0x684F666F,
+0x577F7F7F, 0x77AAA771, 0xA5535E60, 0x787D8A7F, 0x8178A5A7, 0x4D588168, 0x7F8E815F, 0x815EA759,
+0xAE5C8169, 0x63638181, 0x7B916798, 0xB48A7550, 0x998B7F5F, 0x667F5FA8, 0x759E6145, 0x7F825F7F,
+0x8162A0A4, 0x639FA78D, 0x5F5B816A, 0x67816156, 0xB32DAE7F, 0x57C17060, 0xABA1B8B0, 0x4F9D91B0,
+0x6BA981A0, 0x8A81A69A, 0x5CB34D4D, 0x6297C1B2, 0x7F474C57, 0xB4949E91, 0xA79757A4, 0x86884961,
+0x4D56AC48, 0x5B6F72B8, 0x9581B756, 0x699E4243, 0x469C827F, 0x7F7FB16B, 0x5CA1955A, 0xA74E8183,
+0x488157B0, 0x9F595EA7, 0x52449183, 0xA37F479B, 0xB35CA467, 0x4A50669C, 0x7F59BDB6, 0x49B49998,
+0x975A8181, 0xA5525B65, 0x4C40B05E, 0x5A679F81, 0x8983AF9B, 0xB048544E, 0xBFA0647F, 0xB8A94E46,
+0xA2AD9458, 0xBD96A77F, 0x7F636153, 0xBC4E66C0, 0xA9598256, 0xAE4A4BA8, 0xC8B95C4B, 0x6AB87F8C,
+0x5553584F, 0x9C5C5366, 0x50667F81, 0x7F89BB9D, 0xAD508146, 0x616AB17F, 0x9C9D4C59, 0x4B5A6240,
+0x70B47F7F, 0x7B6A9FC2, 0xC8C4AC57, 0xAA8A5D7F, 0x587FB24A, 0xA6BF4C5D, 0xB35E934E, 0x4C8261B4,
+0xBC578A52, 0x4BBD967C, 0x939CA658, 0x9FB45D3F, 0x6D657F62, 0x6FA05B66, 0xADA850B9, 0x56B78877,
+0x8281424B, 0x3EAA834F, 0x646CAF81, 0x667F5BB1, 0xA7589E97, 0xABA754C4, 0xBB6559AF, 0xA4B281B1,
+0x61AAA475, 0xAC81B6AC, 0x45AD515D, 0x9C679081, 0x7FAC41A0, 0x4C5D6160, 0x688E7F81, 0x93A1509F,
+0x48A24C52, 0xB7B8927C, 0x447FAE50, 0xAD45906C, 0x779B8197, 0x5F71A35C, 0xAEBDB454, 0x649E975F,
+0xAE3C5454, 0xB04D68C0, 0x6F63AFAD, 0x6381585F, 0x4C517262, 0x82ADB9A0, 0x8139519F, 0x52586C9C,
+0x5CA47C91, 0x617FB160, 0x4FA76956, 0x9CB27F9E, 0x708152B7, 0xA652539E, 0x685A817C, 0x5F7F965B,
+0xB84260A6, 0x5D4B7A82, 0x7B81C35A, 0xC7B4504D, 0xA06A7F81, 0x568BB852, 0x5F4F59A3, 0x3D98937F,
+0x685E64AE, 0xBEB3BA6E, 0x96719DA5, 0x89B9499A, 0xAE99AE63, 0x5D6AA44E, 0xA0A6495C, 0xB1604CBF,
+0xA56181AE, 0x4BB6A956, 0xA5A9A35A, 0xA8487F9B, 0x8D7FA159, 0x5AAAB062, 0x606E5381, 0x7E814F63,
+0x3D5B544C, 0x6373517F, 0x81A5AD54, 0xB063945D, 0x65A97FAD, 0x5F47AA68, 0x9FB35062, 0x4FB98193,
+0x55B5B759, 0x51A85392, 0x3F596381, 0x9481A1A2, 0xA754439C, 0xAD38647F, 0x7F6F4264, 0x54AF58A3,
+0x489A7F7F, 0x817FBE3F, 0xC3A25BAA, 0x5CB29C7F, 0x8181B3BA, 0xCCA6A1A5, 0x75B2817B, 0x699A3E5D,
+0x56AA5C53, 0xAA4B818D, 0x7F5E6155, 0x62636FA9, 0x64675AA4, 0x90A7ADB1, 0x4EB7A073, 0x606862A4,
+0x81B544AE, 0xBE4F558E, 0xA4A6ADA5, 0x64A45357, 0x455E5DA1, 0xA1A57F7F, 0x96A141B0, 0xAC6455B6,
+0x5D76A27F, 0x7F7F5291, 0x5FA94E67, 0xB24E8189, 0x69664C4D, 0xB144B153, 0x9370AFAB, 0xA67B9C47,
+0xBD60A1B6, 0x99B49871, 0x9894BC45, 0xCAABB955, 0xC26250BA, 0x818157B3, 0x533F546A, 0x8B50816A,
+0x477158C4, 0x5B5072A4, 0xA462495F, 0x9E6E5EB1, 0x56AF6BAF, 0x9F9581B9, 0x50AEACA9, 0x534D9792,
+0x5F427F64, 0xA76B664D, 0xB246893F, 0xB4A4747F, 0x6181A5BE, 0xA847519A, 0x4573817F, 0x6F4466AB,
+0x656CB46A, 0x8D577F59, 0x81995449, 0xA24F6746, 0x86AABC72, 0x81859E46, 0xAD576B39, 0x924F7F7D,
+0x7081B249, 0xB24F57BC, 0x69A68165, 0x61815F2E, 0x584E52AF, 0x4EA78561, 0x72685142, 0xA7AC5151,
+0x594F817A, 0x7FB24CA5, 0x67AC8F65, 0x5F50B797, 0x57465857, 0x5B5290A1, 0x9B5FA4AF, 0x557F4F5E,
+0xB846A7B1, 0x61A35863, 0x4859B8B3, 0x524AA4B3, 0x565EA355, 0xA5A1514D, 0xB15381BA, 0x9F5B514A,
+0x8185B0BD, 0x54575A98, 0x5BB38193, 0x497FAE42, 0xACC3969C, 0x5BB49681, 0x878C3FB5, 0x45B5625A,
+0x9C4481A8, 0x747FBAB7, 0x5445A366, 0x4B615E7F, 0x527FA7B8, 0xB84E59AB, 0x6B6481AE, 0x73635EB0,
+0xB3A1B7BD, 0x5EA4AB7F, 0x90765FB4, 0xAB449CB8, 0xBF659A81, 0x7F69A451, 0x4EB5A655, 0x6BB7AAAA,
+0x81B4B554, 0xAAB96AA0, 0x6F4F817B, 0x565CB044, 0x4E4D57B3, 0x63595081, 0x6F565152, 0x53C64A37,
+0x50B67B70, 0x7F5144C4, 0x61649661, 0x4F489199, 0x537F3EA7, 0x4A546671, 0x9CAF818E, 0x707FB247,
+0x43B55F67, 0x5D7062B0, 0x7F88B157, 0x4EB86EAA, 0x9946A267, 0xD37F4CAA, 0x684B90B8, 0x9967A87F,
+0x43BDA5BA, 0x4F435E98, 0x56AA9897, 0x817163B5, 0xB63A6A53, 0x9D417381, 0x88794D38, 0x4AB5AAA8,
+0x464A6974, 0x794354C8, 0x4FAB4C9B, 0x655E9C81, 0x7F674D4E, 0x55BE5AB1, 0xA467957F, 0xB548AFA6,
+0x4AC39E64, 0x624C654F, 0x818CB9AB, 0x4C4C61BA, 0xADA9625C, 0x74ACAC44, 0x9FBEA6A1, 0x6AA851A3,
+0x817FA0AE, 0x4D3E5D9A, 0x4543816E, 0x7F744C52, 0xB0637046, 0xAE638F7F, 0xAF4698B9, 0x54519198,
+0xA2A87FAF, 0x8F7EA5B4, 0x65A65A96, 0xAC629781, 0x5298A4D0, 0x50B194AE, 0xB4A9997F, 0x5FB9543D,
+0xB8AA9F9E, 0x9A5B7FB7, 0x50B36C54, 0xA6A15E63, 0x7767477F, 0x544B5D5E, 0xAAB99CAF, 0x5C5BA283,
+0x817F9942, 0xB4559D67, 0x6D97817F, 0x4E5DA4A5, 0x58525E67, 0x5451889D, 0xBE6E5F4A, 0xA84A6AB2,
+0x53AD7A5C, 0x4B6242BB, 0x544A6EA3, 0x4A606E7F, 0xA8814EBF, 0xAD3BB091, 0xB248666B, 0x7F7F56B0,
+0x56A94C98, 0x8AB2815D, 0x618BAE4E, 0x3945C9AB, 0x6B537F86, 0x867FB148, 0x4C57549B, 0x5AB68186,
+0x7F6C3AAE, 0x56AE63C3, 0x65B5817A, 0x6D9FAC4C, 0x57C0B553, 0xADAA8697, 0x5345B849, 0x3BBC94A7,
+0x48BD9776, 0xA174B252, 0x4D4EBAB2, 0xB6A05A7F, 0xA3964DB0, 0xA3635D78, 0x694DAE79, 0x7F7FAEA9,
+0xAB586C75, 0x579EBAAE, 0x7F81AE58, 0x4C4D646B, 0x4D538B7F, 0xB697ADB9, 0xA95B6CA3, 0x495E8181,
+0xB640594F, 0x57A98D97, 0x4F5893A1, 0xB26249AF, 0x9FB1614D, 0xA2948145, 0x5A9EC758, 0xA34A96AB,
+0xAE598B81, 0x7F93A4B1, 0x51AEB14C, 0x61B7AF6B, 0x94814B54, 0x59AF5AAD, 0xB7638972, 0x5D814FAF,
+0xB7A7596C, 0x9DA28181, 0x70A75147, 0x555A555C, 0x6A65439F, 0xA869B3AF, 0x55569BB1, 0x5973A255,
+0x98AC68B7, 0xAEAF4E6E, 0x4F997D81, 0x9D7F44B2, 0x57B2A59D, 0x93494D5C, 0x8D5B6056, 0xBCAD4FAB,
+0xA8946F8F, 0x9C7FB050, 0x6056B878, 0x63A5817E, 0xA390A8AB, 0xA84FA4B4, 0x65B18873, 0x649D54A9,
+0x575E40A9, 0x41517F7B, 0x8D7FB6B6, 0x6AB35261, 0x86A27F7F, 0x78AEA953, 0x4DB25A58, 0xAC747C5F,
+0x52A838B2, 0x54605196, 0x4C597F83, 0x4B905556, 0x51A696AE, 0xB992A2A8, 0x5154B2B1, 0xAB9F9A53,
+0xAD578C62, 0x815EB0BF, 0xC6597B4E, 0xA69C8F7F, 0x81A0B2A0, 0xB84695A9, 0x9C94817F, 0xA5B64A55,
+0x55B4626D, 0x9860AB81, 0x754E52B0, 0xAAAAAA6A, 0xB85A9576, 0xAE6CB6B3, 0x4F4375A2, 0xAF4CA258,
+0x7F4B4A4B, 0x55A1658B, 0xAA54B87F, 0x70ACB150, 0xB65AB2B7, 0x5CA97F72, 0xAE7F45AF, 0xAEAC5D60,
+0x48AEB881, 0x4D7F404F, 0xAC539BB8, 0x51569881, 0x54B95E44, 0x5CA1A295, 0x999D7F7F, 0x817AACB4,
+0x4D50B360, 0xB6B6877F, 0x81B54EAC, 0x9C56AB92, 0x9D57817F, 0x978A5A66, 0xB562BBBE, 0x6658567B,
+0x57924050, 0x55626546, 0x7E6E7F81, 0x8C726E52, 0xAFB7A29F, 0x65B17F68, 0x998AA75A, 0xB1B85753,
+0x6A6781B0, 0x7BB74948, 0xB1A94857, 0x8F515392, 0x8A6ABC64, 0xBDBEA748, 0x64467272, 0x877FBC9C,
+0xBC5D5968, 0xADA5875E, 0x46929DA9, 0x635592AE, 0xB1A7A55A, 0x83A53DAC, 0x4BB06368, 0xAC5D97A2,
+0x7A7F5552, 0x56A3BB66, 0x6E5F817F, 0x8173515C, 0xAE519DBC, 0x489D667F, 0x54605D5D, 0x9DB99AB6,
+0xB2B07464, 0x817F5AA6, 0x4EAF5B99, 0xAFB58196, 0x7F69B953, 0x5B3C56AA, 0x60B65798, 0xAC874EAB,
+0x4363693D, 0x5057A181, 0x8166BD4B, 0xA150675B, 0x619FB744, 0x7F9958AF, 0xBA56ACB4, 0xA86A7E7F,
+0xAB7F52A9, 0x4B52A5B1, 0xB1A98181, 0xAA7F5AA9, 0xC1545097, 0x69454981, 0x7F7F5463, 0xBAA1A5B5,
+0x6E7F6982, 0x819AAB54, 0x60BCA081, 0xA6818A9F, 0x81947E5B, 0xB04DA594, 0x61A4817B, 0x818598AF,
+0x6BAF526F, 0x968181A0, 0xB1817F4F, 0x6C577A7F, 0x6388939D, 0x97817F5A, 0x8D5EA978, 0x748D9D81,
+0xA981646D, 0x665DA77F, 0x96759C81, 0x817F68A7, 0x60A27381, 0x836A8181, 0x95597363, 0x984A6681,
+0x67927F67, 0x7F959491, 0x8AA07F6C, 0x857FAF81, 0xA5567C68, 0x756B9A81, 0x8D609681, 0xB07F9958,
+0x5DA6966E, 0x7F7F7F81, 0x7681AC4A, 0x7D927392, 0x7581AAAF, 0xB19B5E99, 0x925A7F67, 0x6E7F7FAA,
+0xA67F86A7, 0x8FA28B6D, 0x9F906377, 0x8E9F8AAB, 0x4D64615A, 0x7F7CA89F, 0x997F779E, 0x9F9B5E7A,
+0x96818190, 0xA94F9158, 0x6E957F91, 0x7F8D817F, 0x6E976FAE, 0xA1677575, 0x7D73815E, 0x8F6D5E4F,
+0x5993677D, 0x8F598881, 0x8185655A, 0x6862854F, 0x7F815A73, 0xA6817F91, 0x669E73A2, 0x727FA8A1,
+0x6C8C8F58, 0x8BB1556A, 0x6F5D8170, 0x957FA251, 0x66997569, 0x88569E81, 0xAA8F6861, 0x99A67F7A,
+0x94818171, 0x7470856D, 0x9B589481, 0x818D7F7F, 0x7F816164, 0x846AAC5C, 0xB581817F, 0x897F6265,
+0x5DA985A0, 0x645D817F, 0xA97B6F59, 0xA65753A9, 0x55925C58, 0x9393AD61, 0xB0A4B354, 0x444F7184,
+0xBC8169A8, 0xA64B5EBB, 0xAA4F6F68, 0xBA5661A6, 0xA54A8EA2, 0xA0AC6D7F, 0x627F64A9, 0x5151555F,
+0xBAA281A5, 0x5756C1A6, 0xA6B565A5, 0x48A19660, 0xA754685B, 0x63A99857, 0x9551AA78, 0x567871AC,
+0x56688752, 0x75708158, 0x738198B1, 0x9BB0AB74, 0x68B8716C, 0x81A85FA5, 0xA8AA7D5E, 0xA5AD7FA3,
+0x8CAC9CB0, 0x9E5A4799, 0x6E59577F, 0xBA635C64, 0x52AE7E62, 0x398AA4A4, 0x4D589F5B, 0xBDAE6572,
+0x998B817F, 0x817456BD, 0xACAD64AD, 0x595D7F6F, 0x81675157, 0xA8B6A2AE, 0x93936381, 0x6E81554F,
+0xA7ACAFAE, 0x548F7F7F, 0x96C2A6A9, 0xAC4C5D5F, 0x62AEB96B, 0x48C044B4, 0xAB4A9C69, 0xA2AB8174,
+0x647FBFBE, 0x51B0445E, 0x68A68FAA, 0x9F7F64A3, 0x4D575658, 0xC0A17F87, 0x5A5EA266, 0xB59D495F,
+0xAA9D5FA6, 0x819D57A7, 0xA572B9A6, 0x93A07F81, 0x7F8E9A5D, 0xAF6B545E, 0xA4B05775, 0x58819E64,
+0x439B6748, 0x59657F82, 0x5263535F, 0xA84A7154, 0xA0AE815C, 0x81925FA4, 0xAE9BA198, 0x3A54897F,
+0x8181AC62, 0x5D6E7360, 0xA2697FB1, 0xB37553A2, 0xA2686A45, 0x74A97F5D, 0x8181A055, 0x62904E83,
+0x65744A45, 0x5687574E, 0xC0C16BA7, 0xA5696381, 0x7F4D519F, 0xA0575392, 0x44538E8D, 0x5C7C63BA,
+0x9C98654C, 0x8C89547F, 0xA986A687, 0x689A6376, 0x666D4CAF, 0x7F316259, 0x57586D8C, 0xD9517F94,
+0x7F959FA2, 0x4DA4A450, 0xA7495E63, 0xA292B1AB, 0xA2BA624C, 0xB1BC9694, 0x6F8C5A99, 0x694857AE,
+0x6B62AC54, 0x4CA46EAF, 0xA7539146, 0x3F658F7F, 0xAC749195, 0xA664614E, 0x72B67F6F, 0x9C72A3A1,
+0xB8A5B157, 0xA394AB81, 0x819BAC89, 0xB258A361, 0xA267AC7F, 0x6D4AA55B, 0x94AEA7A4, 0x56558773,
+0x7FA740AE, 0xA8AE7362, 0x61C3A17B, 0x69ABBD9E, 0x66AD5155, 0x556D6C81, 0x81B8536A, 0x574FA56A,
+0x9065B581, 0x797F4859, 0x9B5E59A0, 0xA8549270, 0x8881B153, 0xA551B263, 0x9458456F, 0x7FACA7A9,
+0x64718B92, 0x6360A890, 0xB0ABA758, 0xAC4E63AD, 0xAEB3606B, 0x94B2CB5E, 0x52525E7F, 0xBD5C759F,
+0x7F81514E, 0xAEA6A48C, 0xA57F7F60, 0x6581B1A8, 0x563E6D7F, 0x7F6E8181, 0x8257A5B7, 0xA1BB4E90,
+0xA08A9863, 0xA75752BF, 0xB6B79A8D, 0xA5B86B83, 0x9C7AB452, 0x94B2B06A, 0xB09D817F, 0x814F58AF,
+0xA9AC4797, 0x9AA77269, 0x7C813A4B, 0xB8A8A969, 0x64848293, 0x7CA14EB1, 0xB7BBB8B2, 0xAC699251,
+0x74814A46, 0x5E4DB46A, 0x686E5AA8, 0x7F8C4AA9, 0x9FC05D59, 0x7B5D376F, 0x5E9056B5, 0x614552A2,
+0xAE717FAC, 0x818B4148, 0x46D09CA4, 0x53584A81, 0x8681B2AF, 0x9CADADAD, 0x605D4898, 0x8181555B,
+0x4B4398AD, 0x60B18176, 0x9C83525E, 0xB7546B56, 0x75AA5AA4, 0x8C815AA6, 0x55A89B9E, 0x6F7B73A9,
+0x928147A1, 0xAFA1A65F, 0x946D819D, 0x57ADAA9D, 0xA5A08198, 0x60758181, 0x66A3A25B, 0xAC5E7D65,
+0x96A95591, 0x7F92B6AA, 0x9F627254, 0x81794B9B, 0x7F7FAF65, 0xA0556359, 0x8C4D7F97, 0x8181A856,
+0xA8988154, 0x8D76857F, 0x81733A9E, 0x56A06960, 0x74B0817F, 0xA4635EA1, 0xABB8B39A, 0x6453A27F,
+0x7F8B9E67, 0x44A4A3B2, 0xB45D7F73, 0x9A61A862, 0x91655661, 0x58B09465, 0x7F865A61, 0x566B81AE,
+0xA37D8A5A, 0x8146BA64, 0x614C6C89, 0x54977792, 0x667FA492, 0x6374A9B1, 0xB4A08175, 0x997F4C6D,
+0x666B61B8, 0x7F81A37F, 0x617E6551, 0x9C9E97B5, 0x9681957F, 0xA4815993, 0xA4A06762, 0x9546A17F,
+0x4B5F635B, 0xA19B95A6, 0x86707FAF, 0x8167AE94, 0x5AAA7869, 0x7277AA81, 0x817FAE56, 0x9C679B9F,
+0x817A818B, 0x817D9C7A, 0xA2609699, 0x586D8A81, 0x7B81465D, 0xB155A3A8, 0xAB79645A, 0x81A0918D,
+0xA69C8761, 0xA455815E, 0x8781A446, 0x68B35CA7, 0x8E8C7F48, 0x7CA867AC, 0x9462949A, 0x7F77817F,
+0x967F9E68, 0xA7694E60, 0x92ACA873, 0x7F7F549B, 0x5B9D7F94, 0xB0667F7F, 0x7FAF5F50, 0x54B9946E,
+0x505F868E, 0x7C995E49, 0xB24DA552, 0x4648619B, 0xA5B1A559, 0xB2AB968C, 0x866860B4, 0x5D81519C,
+0xAE5E7F88, 0x9081817F, 0x9B8151BD, 0x9A5C7482, 0x868F815B, 0x584F585B, 0xB1647C98, 0x976A6781,
+0x7F5BB782, 0xBB59757F, 0x8AA5628E, 0x7F674169, 0xB7667358, 0xB8687E87, 0x627DB8A2, 0xB2506AA3,
+0x9D5D7F81, 0x81A86399, 0x54B0789F, 0x69477F94, 0x813A4B70, 0xA8578883, 0x7F987FB8, 0x75815896,
+0xAF48B279, 0x6469856F, 0x9C81BA64, 0x4D556AA6, 0x92917F81, 0x8195A1A5, 0xC05DA45F, 0xA3379D90,
+0x8586B27F, 0x45535DBA, 0x8F5DAC71, 0x7A9652AE, 0xD0A25557, 0x9C4A8183, 0x75A75145, 0xA7A6559D,
+0x9B496F81, 0x715B9A50, 0x43995FA1, 0xABA57E81, 0x9F7FA5A7, 0x936B89AD, 0xA7667F79, 0x60815060,
+0x49A55DA0, 0xA44F7D81, 0x4F6452A6, 0x44567B79, 0x7A6F8181, 0x92A6549C, 0x6054A092, 0x9A926574,
+0x9692B6B4, 0x659B539D, 0x8C897783, 0x6CA64E54, 0xB68C9482, 0x9C637F8E, 0x8159579C, 0x63557865,
+0x99AC817F, 0xAC9BA4B0, 0x67AC8798, 0x4AA5948D, 0x457FA4A5, 0xAB9B8B81, 0x97A1AEB1, 0x817C9E68,
+0x4FA281A9, 0xADBD7F64, 0xAA5BADB0, 0x84936991, 0xB8AD7CA1, 0x877F676C, 0xA15CA8A9, 0x6C488D7F,
+0x8181A45C, 0x5C6DA169, 0x96B1817A, 0xA7A063A0, 0x9CBB7360, 0x9CA17F5B, 0x7F759854, 0xA058ACAF,
+0x6A595881, 0x7FA2ADB0, 0x619F6B99, 0x6B354E74, 0x7F816153, 0x5D64A9AB, 0xA4627F89, 0x7F84A2B0,
+0xA5ADB6B0, 0x67A36F7F, 0x63A8A464, 0xB89D6C45, 0x9FAD7D7F, 0x7F65AFA1, 0x5258985D, 0x96618B6D,
+0x7F844D98, 0x4E6296A4, 0x79657F81, 0x9F814E53, 0xAFB9844A, 0x5E6B817F, 0x81764E54, 0xB29E819D,
+0x6E567E94, 0x9181575C, 0x9B6E5754, 0x8B518178, 0xAB81B166, 0x54A97FA8, 0x82A95372, 0x81A1B8B2,
+0xAF6D5F9B, 0xA7958181, 0xA081526E, 0xB5A1815B, 0x6A597773, 0x7F79B840, 0xA851A4B1, 0x6BBA9F7C,
+0x817EB27A, 0x53A947B1, 0x81599F81, 0x6D7B5B64, 0xAF9195A6, 0x48637F6B, 0x7D7F5A9B, 0x43A8A9A3,
+0x4B74717F, 0x7FA05F99, 0x536B709E, 0x8191577F, 0x7FB2A39E, 0x51627F72, 0xA86B83A4, 0x8F8D566E,
+0xA97089B9, 0x9E7F7F55, 0x7F7FB757, 0xA55B6765, 0x759FBA85, 0x7F6EACAB, 0x5BBB8D5A, 0x70628185,
+0x817F5898, 0x52AE6E90, 0x6B817A5B, 0x7F7C50B2, 0x41AA59A9, 0x6EAA8181, 0x9C8CB46A, 0x5BAF6B8D,
+0x8C606997, 0xA87DA14E, 0xB2AB6156, 0x8989896F, 0x7F9F9962, 0xAEBB5DAD, 0xADA67D81, 0x7F7F6561,
+0x9F6C597F, 0xAF769781, 0x688B5858, 0xA7B0909D, 0x664D597D, 0x905562B2, 0xB2559D66, 0xA494527F,
+0xA26D55AE, 0xAE5798B9, 0x67565A6A, 0x826DAEB8, 0xAFB75AA8, 0x61578192, 0xA08EBAAD, 0x3FAD9D3D,
+0x9B5A758A, 0x8B7F5590, 0xAA74686A, 0x57AA8181, 0x7F819E62, 0x476C9B8B, 0xA3A98181, 0x7F64AF90,
+0x60AF8566, 0x705B947F, 0x7F6C9E6A, 0x919395A7, 0x66696768, 0x6E6D5850, 0xAFAB9570, 0x8B6A9C89,
+0x6EA76163, 0x975C8F98, 0x90537F78, 0x6F8BA89C, 0x92596295, 0x7F6D7F7F, 0xA9815864, 0x5B997FAC,
+0xAA7F8F5B, 0x69816252, 0xAD4AA86D, 0x9C7F819C, 0x7F815477, 0x5355916A, 0xA257817F, 0x7F825D9B,
+0x62558760, 0x637A7F7F, 0x9381AA5E, 0xA663675A, 0x4BB57F81, 0x767F5F5C, 0x596754AB, 0x9B618681,
+0x737F526E, 0x47A35F5D, 0x56A9906F, 0x7F715564, 0x555F9955, 0xAB867F5D, 0x7F7FA073, 0xA66D6D73,
+0xA0696DAA, 0x9081AF78, 0x5D446886, 0xA2887FA4, 0x7F816D5A, 0xA191A48A, 0x65AC7F7F, 0x6D706F5E,
+0x995F619A, 0x6689A27F, 0x958F6B60, 0x9CA4965E, 0x60AA6B81, 0x7F819B97, 0xA2638185, 0x56536D6D,
+0x7F7F5870, 0x5C706486, 0x7C5F8173, 0xA86DA6B7, 0x51926887, 0x819D7FB7, 0x7F5F5F6B, 0xAD748168,
+0xAE82B363, 0x8181667F, 0x6E6A9A60, 0xB8987881, 0x77817F8F, 0x9F4C6053, 0x52668882, 0x7F854F60,
+0x5D579E5F, 0x836A5E7F, 0x699BA155, 0xB6AFA8B2, 0x5BB36D4B, 0x7F76A642, 0xAF606CAA, 0x8B618657,
+0x747F43B0, 0xA855AE68, 0x68654981, 0x7F754756, 0xA2B7D2A7, 0xAB9EA35A, 0x919A4B5C, 0x43A39844,
+0x4CA76C59, 0x5E71AF57, 0x70C5B9B1, 0x63677FA6, 0x6B84B457, 0xA859604D, 0xB6BF71A1, 0x45AC4F97,
+0x3D57779D, 0x7C958181, 0x9E64BDAA, 0x505F9055, 0x6E7A4C52, 0x6E813D61, 0xAAA3ACA2, 0xA7BB816D,
+0x8166C097, 0xB25E7C48, 0xA6637E7F, 0x90844E5B, 0x514FAAA4, 0x96A37F40, 0x929EAD6A, 0xAF5C3DAC,
+0x598C773B, 0x5C9B3F5B, 0x49557F8A, 0x8FB58164, 0x81B7B35C, 0xCB9F9095, 0x48497F54, 0x7F819DA6,
+0x50AF736A, 0x564F677F, 0x6A8FB1B2, 0x61AAB9AA, 0x76B67F89, 0xB4C55498, 0x549F726A, 0x62508171,
+0x98815B4E, 0xACC03D65, 0x8D989A7F, 0x9581C1AB, 0xAB4E428C, 0x60A88153, 0x814E4D4F, 0xA2A36495,
+0x9DAE7F5B, 0x48535FC5, 0x49AC7F90, 0x4BB17D8F, 0x767F65AA, 0x9D4F596E, 0x965A818E, 0x5ABE50B7,
+0x5A4F6A97, 0x5D76B06C, 0x8181A745, 0x58518E96, 0x4798957F, 0x81A057AC, 0xA9A67FB1, 0x944F7F62,
+0x9F81A9AC, 0x5DB1A363, 0x4D616A9D, 0xA08C56B4, 0x5C574FB3, 0x9769C089, 0x7F685F5B, 0xA7A69C58,
+0x92514C76, 0x7FBFBA47, 0x67507894, 0x78697F81, 0x5A784749, 0x5E569EA9, 0x91A7818B, 0xA574BEBE,
+0x51AD63A7, 0x669FA781, 0x49B7B153, 0x4CA562A4, 0x6958819F, 0x84984450, 0x4BA45A4D, 0x615A5B7F,
+0xA58146B9, 0x4AAD8F91, 0x539B664A, 0x875D4E55, 0x4D406F5C, 0xB2427F9D, 0x699F4DBE, 0xADBC5B65,
+0x69A84B81, 0xA579A847, 0x4FA99FBE, 0xB76F95B6, 0x747D9C54, 0xB24DAB5A, 0xB844748A, 0x47674E9A,
+0xC44B73AA, 0x554C88A3, 0x567FB6A0, 0xB1AC6851, 0x77AE7F65, 0x8172B8B7, 0x43BAAE4C, 0x9A5EB8B8,
+0x8C68A6AE, 0x56985F47, 0xBBAE678C, 0xD37F51B9, 0x53B77697, 0x489C6893, 0x5968AF36, 0x44B8A057,
+0xAE6A9B54, 0x6781C2AE, 0xA5555059, 0x8D45B281, 0x5E745CB0, 0x3C515154, 0x59457F65, 0xBB7F4ABE,
+0x545C6BAD, 0x9550877F, 0x8181BB52, 0x9F555DB1, 0x984F3C7C, 0x81A0B9B0, 0x624A6857, 0xC1A85AB6,
+0x7F95A3AC, 0xA1AFA657, 0x565C8145, 0x5A70404E, 0x50ADB6B6, 0x6A518165, 0x507F9DA6, 0xBCAEA392,
+0x5C4A947A, 0x6FA29550, 0x485B4E5A, 0x47548488, 0x516DB059, 0xA5637B56, 0x99B0606D, 0x9C5CA047,
+0xA6BA4CB0, 0xA488817F, 0x817FB1B2, 0xB99B9B66, 0x614256A6, 0x817B9542, 0xB25C9D42, 0xB7436B71,
+0x75A04468, 0xAA9A62B6, 0x9F7588B5, 0x4AAEA461, 0x4F5373A6, 0x699B5BB7, 0x6250A1A7, 0xAFABB26B,
+0x42926F4A, 0x5EA46958, 0xAEB0B4B0, 0xB5567D7F, 0x748C5754, 0x55524DC2, 0xB4A69FB4, 0x8C7FB54E,
+0x4F579FAA, 0xAB938481, 0xB0C14C4E, 0x444E689B, 0x61816E7F, 0x7F959D7B, 0xA09C925D, 0x636B8181,
+0x98879584, 0x95989571, 0x947C7781, 0x94A08F81, 0x9F747C5F, 0x90A27F81, 0x7F7D948E, 0x71726468,
+0x75817F81, 0x7F745A88, 0x636B5A9C, 0x77609B94, 0x5F697F65, 0x5E9488AD, 0x7AAA8181, 0x7F7F6578,
+0x63765A5C, 0x7B6D696A, 0x818190A0, 0x4681AD55, 0x4BA18788, 0x81816C5B, 0x69AA7352, 0x75988191,
+0x7F7F6756, 0x68896667, 0x947F95A2, 0x7F7FAD9C, 0x567A7A61, 0x94558A81, 0x5B7F8E97, 0x6D9490A3,
+0x7F6F817F, 0x817F5576, 0xAD8EAF57, 0x5F8F8758, 0x7F6F9FA0, 0x5D609075, 0x7DA26781, 0x82905B64,
+0x545D57A5, 0x67737FA1, 0x8181A264, 0x58696681, 0x7E8C947F, 0x9781828F, 0x7470A086, 0x4E647F85,
+0x8A667695, 0x6E519C72, 0x9FA1818A, 0x7A7F909F, 0x94929F7F, 0x9A938191, 0x818C6F58, 0x9A5F6996,
+0x899276A5, 0x7F788970, 0xA77F7F72, 0xA4586C95, 0x7F9A5672, 0x87935781, 0x71497F7F, 0x7F7F82A1,
+0x838C8181, 0x9383A37F, 0x7F7F6364, 0x8B907153, 0x85789D81, 0x817F978F, 0x89A6A797, 0xA8897F81,
+0x7F817570, 0x61709AA8, 0x8A667F7F, 0x7F7F666C, 0x6F60998F, 0x6C677F73, 0xC666565A, 0xA8A08154,
+0x6FB28181, 0x5B81A7A5, 0x5D506883, 0x95AB7F9E, 0x897FAD59, 0x4F959395, 0x6A976681, 0x7F86AAA9,
+0x669E5C49, 0x6F6E7C5F, 0x6F6B8777, 0x659F4D55, 0x6DB69679, 0x7466935B, 0xA8A4B562, 0x9DA77F84,
+0x537F7F70, 0x66AF7DA1, 0x71A17F81, 0x7F6A778E, 0xAE9B5A7F, 0x816A817F, 0x81819B71, 0x6752A07F,
+0xA484817F, 0x7FA7A3A3, 0x8C9E7175, 0x88947F61, 0x7F91945C, 0x6B535291, 0x528F817F, 0x5D7FA06C,
+0x9AA26C78, 0x6D7F8165, 0x81816B5C, 0x606A9378, 0xA0658181, 0x817F9AA6, 0x6D998899, 0x5B867F7F,
+0x7FAA697A, 0x9D544B6D, 0x67956576, 0x7F858C7A, 0x9A5F86A9, 0x636B8D81, 0x815F8F5A, 0x91779C7B,
+0xA67B8167, 0x7F929D62, 0x83A090B8, 0x8175B47F, 0x817F695C, 0x64899756, 0xA397716A, 0x817A538A,
+0x5C787F9C, 0x81936081, 0x9881A262, 0x408BA58C, 0x748F96A8, 0x8DAB9B9F, 0xB65F5C9B, 0x81987F91,
+0x817F6C8F, 0x91558D51, 0x7A9E7F6A, 0x7F7F568A, 0x589D70A7, 0x909C6881, 0x745B904E, 0x505F7367,
+0xA5528B7F, 0x7F817699, 0x4C507A56, 0x7F69817F, 0x7F909F51, 0x96649663, 0x61938981, 0x977FB1A6,
+0x955B6C7F, 0x7397AC93, 0x816CB56B, 0x66615379, 0x839D816E, 0x818B5456, 0xAF96517F, 0x7F55817F,
+0x7081A658, 0x554E66A5, 0x929A817F, 0xAE7F4EA6, 0x4F529461, 0x98B99286, 0xA66AAEA8, 0xB34874AA,
+0x5AA0817F, 0x79795149, 0x46B067A1, 0x5F5C7F99, 0x818E3F53, 0x60AE8974, 0x63575681, 0x817F65AF,
+0x9F529A5D, 0x9E8D8162, 0x7F944EA2, 0x9456B27B, 0x6887697F, 0x778157A1, 0x695F595E, 0x4FA27F6D,
+0x818557AE, 0x68B65A7D, 0x48A09859, 0x81A49BB4, 0x736C9C94, 0x56B07F7B, 0x81A6B458, 0xA0576876,
+0x62758147, 0x907F5F4D, 0x745D9AA6, 0x62757F81, 0x819952B2, 0x51B79B64, 0x58AC6481, 0x7F7F9CB6,
+0x95665862, 0x57A58191, 0x869158B6, 0xA29F55A1, 0xA5887A40, 0x816769AA, 0x9D96A852, 0xA35F7D5D,
+0xAB8159BF, 0x7D6C617F, 0x5B458187, 0x537E998F, 0x919C6A56, 0x7F5C7FB8, 0x8F81955B, 0x6B9F5567,
+0x9190519F, 0x5D7F5C63, 0x5E639B74, 0x928E6881, 0x5DB3A49D, 0xABA7898D, 0x9D94587F, 0x7E5EBA57,
+0x996AAE75, 0xAE9C7F8D, 0xAD7F4868, 0x51989C82, 0x469B947F, 0x7F72AD69, 0x9252719B, 0x61677981,
+0x8B7F649B, 0xA160547F, 0x61858195, 0x7FA4524F, 0x7770665C, 0x5CB07A79, 0x7F87ACA3, 0x69987398,
+0x715B7F7F, 0x817245A0, 0x604FA8AA, 0x7290599A, 0x7F7E5E8D, 0x789DB1A2, 0xAD507F73, 0x7781AD5C,
+0x759B9976, 0x996CAD94, 0x888AB1A5, 0x59955F4B, 0x5E58817F, 0x8D81A259, 0x536A547C, 0x8D8C7581,
+0x7281586C, 0xA66EA36A, 0x81AC8186, 0x54818F73, 0xA09F6767, 0x8F747F81, 0x5A615598, 0xB2535283,
+0x944FB267, 0x667F635D, 0x61A076B0, 0x5C63917F, 0x637F5F55, 0xA6BA8EA0, 0x9E6D7FC5, 0x7F814D5F,
+0x97B86C77, 0x9089549D, 0x817F5765, 0x669A4F6B, 0x8B595A7F, 0x7F7D6678, 0x6C8B746E, 0x939D8179,
+0x7F7F4EAB, 0x5B66B899, 0x6BA2A774, 0x69795683, 0x58A68CAB, 0x9D739D81, 0x70869D4E, 0x975E8295,
+0x965A817F, 0x8171567D, 0xA23D7FB3, 0x99B36E8B, 0x835B645B, 0x439D7F5D, 0xA5687F81, 0xB27FAD64,
+0x57A77F75, 0xAA7F7F81, 0x817F505E, 0x4F939563, 0x958AAD81, 0x817F60A3, 0xA9A776A0, 0x9E637F56,
+0x81829E5D, 0x97B17799, 0x9A4C825A, 0x7F7FA6AE, 0xA09C5D94, 0xA6817F7F, 0x93ACB048, 0x6A919C76,
+0xA3788197, 0x7C81A5AA, 0x6CACA07B, 0x778A959F, 0x7F7A9051, 0x55546FA0, 0x69817F93, 0x7C8195B2,
+0xA06CA5A0, 0x72616581, 0x7F7E95A8, 0x9C51B094, 0x4BA8837F, 0x7FA79B61, 0x5FB56F67, 0xAC528789,
+0xB5815260, 0x98AC6B87, 0x6F818681, 0x81818FAF, 0x6B498592, 0x7D718191, 0x937F92AA, 0x5E687268,
+0x455C8162, 0x7F9468B9, 0x5568A9A0, 0x945D8181, 0x818C739F, 0xACA8964A, 0x866681A9, 0x4F6E536B,
+0x61A18558, 0x6B818781, 0x818E685C, 0x59A6A45C, 0x625C8181, 0x516F9867, 0x865E81A7, 0x7E9E6A90,
+0x9E686A62, 0xA7A68B79, 0x95887162, 0x81A2957F, 0x5A36697F, 0x60A97F4A, 0xA36B4252, 0xB5A9AA57,
+0x70B47FAF, 0xC04D56B7, 0xB64A5E60, 0x63A381AB, 0x8186BCAF, 0xB69E50AF, 0x9D59BC7F, 0x7F7F424A,
+0xA1A090A0, 0x99A5B681, 0x5968AD54, 0x9CACA3B1, 0xA0AC5163, 0x8F4992B0, 0x4CAE625E, 0x584F8991,
+0xB3AF9A74, 0x9B5F7E9D, 0x954F486E, 0x7BB46442, 0x474252A8, 0x56687A7F, 0x556EB7BD, 0xA0565349,
+0x44456C7F, 0x7F9F9E9E, 0x8D5DA2A5, 0xAC5B5E88, 0x616197A5, 0x4C6759B1, 0x5FB5AF5C, 0x84A8425E,
+0x41ACAB54, 0x5A57AB79, 0x957C4756, 0x5EB557A5, 0x5DAD819F, 0x92A54758, 0x5542BCB4, 0x924B508C,
+0x9B4F9470, 0xA89B41B3, 0x5A5FA181, 0x9191B4A5, 0x489EB64A, 0xA3539F7C, 0x8F61A8AF, 0x428DA49D,
+0x674DBE60, 0x7BA7555A, 0xB3B16C6B, 0x5D5B61A6, 0x81814640, 0xAD9CB898, 0xAF9785B7, 0xB67FA2B4,
+0x4654765B, 0xBDB47089, 0x6483AAB0, 0xAC6348C4, 0x879B817F, 0x765D51AA, 0xA7549CB1, 0x6CA7847F,
+0x5BAE52AD, 0x50B9A560, 0xA58982A0, 0x897F50B1, 0x4E4DAB9D, 0x7F5E81B4, 0xA781602F, 0x5B4E68A2,
+0x955CCAB2, 0xB881B245, 0x55ADAD75, 0x72B37FA9, 0x7D91444F, 0x3CB365A5, 0x6AA47F81, 0x879CADA2,
+0xC8A84BC4, 0x8C608181, 0x679BA93B, 0x50B7576D, 0x9462B07F, 0x917EB6AE, 0x53CFAB97, 0x5FB47795,
+0xB798A9A5, 0xAC59A360, 0x5CB5736F, 0xA387B3B2, 0x59A86044, 0xAA599D6B, 0xC5814DA4, 0x51969B77,
+0x6A509881, 0x5A79B5AE, 0xBFA4A5A1, 0x58A6797F, 0xBF7757BB, 0xA66893C3, 0x6043AA76, 0x7F695556,
+0x93B252B0, 0x9DC17F8C, 0x73ACA359, 0xBB66BF9F, 0x4EC07E87, 0x90734B70, 0x5C505FB2, 0x5F5BA35A,
+0x4F89B89B, 0xA398A8AF, 0xA1B08193, 0x5CA7AC61, 0xA1AC3BBB, 0x9A3FAF6B, 0x567F6B5C, 0x4BB29C49,
+0xB64D9D67, 0x64925AA8, 0x4A719F35, 0x68998148, 0x848F96A1, 0x4F66A650, 0x4F6674AC, 0x8E81AAA6,
+0xB655596E, 0xC54F6890, 0x8B6BA24C, 0xB0AAADAC, 0xBBA4A481, 0x43A0A051, 0x61AE9856, 0x3FA28762,
+0x4265A3A0, 0x5E507C5C, 0xB3AE5E74, 0x81A05E4E, 0x98A59E83, 0x5FC581A1, 0x7F7FB6AB, 0x535EB76A,
+0x9BAAB571, 0x6F7FAEA8, 0xB3A7616E, 0xA4949681, 0x7F9E4E42, 0x4E53725B, 0x5945A776, 0x7F7FAFB9,
+0x4EB39B9A, 0x71617F58, 0x7F7F4E62, 0xA75C57A1, 0xA496A5B1, 0x8A63A298, 0xB1AEA2A3, 0x60457F65,
+0x4F7F54A9, 0x40B2979C, 0x9A5BB398, 0x647FAFA8, 0x4C6E629B, 0x46A59DAF, 0x818E3E42, 0x465299B0,
+0x474D817A, 0x5F75A8AE, 0xB2A7A246, 0x44AC887F, 0x77A9ADA9, 0xAB6CA596, 0xB19F7181, 0x67814FB7,
+0x44AD4C64, 0xA963817F, 0x814BBD45, 0x534F586E, 0x2AB98381, 0x954D9C5A, 0x524FAD9C, 0x86AE7F4E,
+0x7F817146, 0xA959A69B, 0x4EB05FAB, 0x6576B3B5, 0xB3BBBFA4, 0x5EB75790, 0x514DB1AA, 0x59C09E51,
+0x9F4C9B3C, 0xA4A8AD4F, 0x56459F50, 0x60635859, 0x7A4C9CBC, 0x5654AB63, 0xAB5F67AB, 0x96A8B0B6,
+0xA8595755, 0x594A8874, 0x4FB05742, 0xB7AD6559, 0x53A0787F, 0x67814F41, 0xA95650A7, 0x9B607F7F,
+0xAE6AB647, 0x9E58A450, 0xB953838A, 0x8165B4B2, 0xA7B67AB2, 0x69478174, 0x88B9A851, 0x5EA5545C,
+0xA4AF5A83, 0x9D7FB3B2, 0x57B154A6, 0x529E767D, 0x7F71BEB2, 0xA7AA9CB3, 0xB95C8E7F, 0x948E50A7,
+0x604F9EB4, 0xA8AB7FAA, 0x8CBE52AA, 0xB3AF5864, 0xB74B71B8, 0xA69356B9, 0xA7AEAAC0, 0x6443838C,
+0x81944950, 0xAA526A39, 0xA33D96A2, 0x7B5D5848, 0xAFBB6DB3, 0xB9629DB7, 0x7F815551, 0xB452925C,
+0x6A6981B6, 0xB9A5B4AE, 0x5449A6B1, 0x4DA0637F, 0x7F7F52B5, 0xB7B193A1, 0x55527F86, 0x6CA04BB8,
+0xA84F5A54, 0x585292AB, 0x659D4B52, 0xB346B2A7, 0xAD6A72A9, 0x819C5ABF, 0x4A4B9BAA, 0xAFA957B9,
+0x99AF31B4, 0xBAAD4EA1, 0x52598F7F, 0x8195B149, 0x54AC6055, 0xBD679281, 0x7F8CA251, 0x484D54B5,
+0x9FA2B87B, 0x817E5C48, 0xA34A71B1, 0x4BA86A55, 0x818CB443, 0x42C193B0, 0x4D4D89B5, 0x7549AD45,
+0xC7AF51AC, 0xB895997F, 0xB09FBDB4, 0x57AA6853, 0x4A547F81, 0x854E52B8, 0xB0B354A2, 0x9E51547F,
+0x89A44F57, 0xAE4D4F40, 0xA26E707F, 0x81814EBA, 0xB6478863, 0x65A64C72, 0x816AA5C2, 0x4A5491BC,
+0x984B4E6C, 0x819F5E4D, 0xB1A85C55, 0x5AC07671, 0x7C6BAD4B, 0xA24F4CBA, 0xB2A35F48, 0x937F5A4F,
+0x5C58A193, 0xA3BB7F6E, 0x857FB0B7, 0x4C4EBB96, 0xA3A47F7F, 0xB37E58BC, 0xACB4609E, 0x67B75A67,
+0x7F7F4DB0, 0xA14D9167, 0xA7B27F9E, 0x819966B4, 0xA55660B4, 0xAF478C99, 0x81AEA641, 0xBAAAA1A3,
+0x4B9697A7, 0x7C81A3AE, 0xB5B8699F, 0x71A67FAD, 0x747F5D4F, 0xB543519F, 0x49B96E6E, 0x9E7F5B4F,
+0x50AA6CAE, 0xADB381A5, 0xB27F4EBB, 0x53566397, 0xB1647281, 0x81BB524E, 0x53AD8859, 0x94D0AE69,
+0x518596B0, 0xAAAD6749, 0x6F617F7F, 0xAE8162A6, 0x9CAF8C52, 0xAAAC7EA7, 0x9E92B9B9, 0xA9C2B0AB,
+0x83AD8167, 0x6C7D63B0, 0x54C25453, 0x97B07F54, 0x5DA45B44, 0xAB4D6B57, 0x4DA97F81, 0x5E74A83C,
+0xA65753B0, 0x5F4BA15C, 0xAEBAB242, 0x4253B99E, 0xA0A97F60, 0x4A51B8C8, 0xA547A6AE, 0x533B7C86,
+0xB57F5253, 0x50B76C5D, 0x4DB75D63, 0x8881B3B2, 0xA7BD679E, 0x549E817F, 0x814BAFB6, 0x48A8B296,
+0x534CA6AB, 0xA2785ABB, 0x52C3A850, 0xB2A4658C, 0x7259B254, 0x48A66EA6, 0xB492737F, 0xA95559AC,
+0x569E6966, 0xBBA38681, 0x497F5FBC, 0xBB555E5F, 0x95A6BCA1, 0x526A6240, 0x4A956AA5, 0x5C5B8986,
+0x4A5057B9, 0x6BA9615C, 0xAF688E5B, 0xA8ADAB51, 0xB864AF69, 0x87AFBC83, 0x78945747, 0xA85B4AAF,
+0x64967F81, 0x8981AE4F, 0x4E4F3A6D, 0xA66C557F, 0x9B7158AC, 0x50A950AF, 0x6EAB509A, 0x5B8152B6,
+0x50ACCB92, 0xAFB87F69, 0x60885851, 0x5C63AA43, 0xA562819B, 0x6B86A24B, 0xB0B8AD53, 0xACAB9C77,
+0x5D4AA6A3, 0xAF535262, 0x9FAE818A, 0x7F7F52AC, 0xC5AC6162, 0x56A77F81, 0xABA45151, 0x61AD8F56,
+0x4A547081, 0x649E6646, 0xB3ACA4AE, 0x4C468D81, 0x4BA5ADB6, 0xADB5675E, 0x98AE7F71, 0x5D8A4C62,
+0x4A9AAFAE, 0x52498BA8, 0x5E81AC47, 0xA9515296, 0x538A6C7F, 0x81654EAC, 0xC1B24956, 0xB555867F,
+0xAF954844, 0x42456AA4, 0x6A65B94F, 0xA55059A8, 0x49B0AAA1, 0xB6555C6E, 0x55C1B0A6, 0x584F5BA4,
+0x5D5E9F7F, 0x81AF4C4A, 0x51B35D63, 0x599A5A7F, 0x7F6DBCAD, 0x425071AF, 0xA44B9D96, 0x556A4756,
+0xA9B1BFAB, 0xB9689481, 0x596551A8, 0x60AFA156, 0xAC648187, 0x8281AA52, 0xB3B1549E, 0x5B5DAE9A,
+0x5A7FB547, 0xB6525458, 0x95A78199, 0x557FB055, 0x54CF6AA6, 0x90A181AF, 0x81B3A6AB, 0xB6A85561,
+0xAF9B817F, 0x437F565E, 0xA94B9CB6, 0x60B0866E, 0x8161AB54, 0x99609757, 0x9BAF7F81, 0x8B6DA758,
+0xAEA94E4F, 0x6E958144, 0x7E8152A8, 0x623C4665, 0xBAA9775C, 0xB1663E52, 0xA555A05B, 0x6565AB81,
+0x816C56A0, 0x55A055B7, 0xA6A7815E, 0x9F5EB5B1, 0x519F5A9A, 0x4D5F697F, 0x9255B151, 0x599A5164,
+0xA26181A8, 0x457A49A6, 0xA6A895A5, 0x50625CB1, 0xAD6C3CA7, 0x5EA6664F, 0x4C799681, 0x817F4E96,
+0x53A6626A, 0x9D64B0A2, 0x7F5FA6B8, 0x54AA9E50, 0x48569490, 0x7C814A46, 0x45A9AF94, 0x4255977F,
+0xB5704AB1, 0xB09799B7, 0x509E97B7, 0xAA475951, 0xB6647269, 0xB7AF5C88, 0x8E905049, 0x9CABB652,
+0x51A67AAA, 0x5F684FA4, 0x4BAB54B1, 0x499F6F81, 0x7839B1A6, 0x4E525068, 0x6B5C5175, 0xA3A35AA3,
+0x4E444FB0, 0x9C945181, 0xA49FAFAD, 0x5B4859A4, 0x718B7F7D, 0xB781C253, 0xA8AC649C, 0x63ACA883,
+0x8581A6AF, 0xB252ADA6, 0xA74B98A0, 0x878D57AB, 0x55B0514A, 0xAF9878A9, 0x684E4D57, 0x58AB449F
+
+
+c =
+6
+
+cab =
+6
+
+ea =
+6912
+
+eb =
+6912
+
+c_neg =
+0
+
+k_neg =
+5824
+
+k_pos =
+5888
+
+rv_index =
+0
+
+iter_max =
+8
+
+iter_min =
+4
+
+expected_iter_count =
+8
+
+ext_scale =
+15
+
+num_maps =
+0
+
+r =
+3
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_SOFT_OUTPUT, RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE, RTE_BBDEV_TURBO_EQUALIZER,
+RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN, RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT, RTE_BBDEV_TURBO_DEC_SCATTER_GATHER,
+RTE_BBDEV_TURBO_CRC_TYPE_24B, RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
new file mode 100644
index 0000000..f0bbed1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
@@ -0,0 +1,44 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429
+
+input1 =
+0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e, 0x6730b095,
+0x78f7c059, 0x99
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xde639c99, 0xea20a04f, 0xda872110, 0xde5b08e6,
+0x3739dabf, 0xdc015a9c, 0x7db088b6, 0xdb8e6f42, 0x6be6c1df, 0xf5297b75,
+0x13566521, 0x602b7d06, 0x9536c5c1, 0xb3b80104, 0xbf0519bb, 0x2a72e0f0,
+0xd9e89f7a, 0xcf3d85f5, 0xd3c3e827, 0x5537ab7b, 0x8b7b0d80, 0x43618aba,
+0xf4f10968, 0x52e765f0, 0x837af128, 0x75871cf8, 0x27e94bff, 0x99cddcee,
+0x1937f910, 0xd0
+
+e =
+1380
+
+k =
+456
+
+ncb =
+1440
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
new file mode 100644
index 0000000..23a1b10
--- /dev/null
+++ b/app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
@@ -0,0 +1,328 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_TURBO_ENC
+
+input0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x8384dda9, 0x694de7a8, 0x1d2604f8
+
+input1 =
+0x647b5b37, 0xb235179e, 0x9b72fa9f, 0x95f0dd27, 0xe3d0b584, 0xc0c5a4a3,
+0xa46c2ddb, 0x76b5124a, 0xe07273de, 0xd7dd4163, 0x9feb8c26, 0x82d47198,
+0x106bae47, 0xbfa90e78, 0x0f83ee80, 0x157ccf3a, 0xb32cf008, 0x86908ed7,
+0xfa83d272, 0x409b80d5, 0xbe0bdbc1, 0x77ff05bc, 0x2a4b347b, 0xad7ebf48,
+0xd21d50df, 0xe7ac97ba, 0x31f0e405, 0x5da21104, 0x0ec1f016, 0x2fb88576,
+0x0cc56f40, 0x83524baf, 0x27d6fbf6, 0xf9ab0208, 0xbe9080e9, 0x4d0f24a3,
+0x64e505fe, 0x617078a8, 0x7722646b, 0x6e688578, 0x09073a5f, 0xbc411a65,
+0x9c4c6052, 0xf1dd2823, 0x8f628ff7, 0x87376338, 0x61caff8a, 0x98483fdf,
+0x8e1d6e83, 0x659a5a20, 0x8aa88b06, 0x67418437, 0x40ed9259, 0xf8c46f3a,
+0x03421725, 0xabb9e9d8, 0xa66e5e0e, 0x6f55e795, 0xc3bfb8f1, 0x0cf82921,
+0x30daf099, 0x91861e51, 0xb9c4210f, 0x6c2d7a06, 0x15bc344f, 0x48b591f6,
+0x226d4092, 0xed6553ec, 0x5c586be3, 0xa4987693, 0x10ddcf8d, 0xd7ed5a67,
+0x79b85bcd, 0x4d592345, 0x4ce945a3, 0x0fc3837d, 0x56fe007d, 0x5e9275ec,
+0xfe7c865c, 0xcc2beea0, 0x0cf942d9, 0x49154874, 0xc7aa4d5b, 0x4e17ce42,
+0x2f24e407, 0x1b58d55c, 0x9f5ff14e, 0xa41f0b96, 0xee5cd5c8, 0xeafecd05,
+0xe5c9f211, 0xe4ecaa7b, 0xf906420b, 0xe0d7b63b, 0x978a5c06, 0x112793c2,
+0xea03d49a, 0x66ca3afb, 0x01fa1cd4, 0x617df025, 0xa1489b42, 0x748f7864,
+0x3ec92bab, 0x795fe037, 0xba5663ed, 0x39e19f7a, 0x145af072, 0x3f37ae3a,
+0x4fabc518, 0x3ea9e8cb, 0x73e8e393, 0x21cd02d7, 0xb1a53060, 0x8a5d94ae,
+0x13532921, 0x2c955771, 0x943c412d, 0xc00981a9, 0x0d080e03, 0x8e37d0a0,
+0x4436d0fb, 0x4d95a049, 0x5a417836, 0x34155d21, 0x54545bb5, 0xf83ed24f,
+0xf2899b97, 0x9558a1af, 0xc0da7c82, 0xdb203ba3, 0x29e46cc2, 0xabb83fec,
+0x5a4ef521, 0xbf2f850c, 0x12b33a77, 0x4ccac8b4, 0x7a54538a, 0x9a46d200
+
+input2 =
+0xb8e5f663, 0x203432f6, 0xfb85cd0c, 0xeaa8384b, 0x02794cd9, 0xef4fef8d,
+0xaa9a1053, 0x631b87e6, 0xdcb3547d, 0x7586180a, 0xa120e1c1, 0xef7b27be,
+0x41fc9d09, 0x6d51533b, 0xda1874c1, 0xf260d2f4, 0x6278fd5f, 0x0a124761,
+0x09cd8482, 0xf9d74008, 0x25996d51, 0x02e64f20, 0x6568ed32, 0xf9042aad,
+0xe9fc6bf2, 0xd6776755, 0x8ee536ac, 0x5b5edf46, 0x18fd8add, 0xeb0f680f,
+0x8b0360a8, 0xe3a0d12c, 0x25ca50f6, 0x8bbd71fa, 0xc83bd21a, 0x09f6b75d,
+0xcd02eaec, 0xafb06776, 0xcae07c61, 0x2c0548a9, 0xe311c76f, 0x05304767,
+0x043ae4dd, 0x3648c9b0, 0xe9dfda3a, 0x4d252727, 0xa3237636, 0x8c8ed3f8,
+0xb30a6d76, 0xb71ca52b, 0xe667bfdb, 0x513c58fe, 0x6fae21e0, 0x2d21cf6b,
+0xb799b698, 0xf64019a2, 0x6dc8bc3b, 0xf186373e, 0x301f89fd, 0xd40baf29,
+0x744f5323, 0x4a7af246, 0xcd233083, 0xbbc3e502, 0x3d2882f6, 0x925a43f5,
+0x0a8c9817, 0x27bf2de3, 0xf26365be, 0x112312a7, 0xca95075a, 0xa4b4b6b8,
+0x2e370826, 0x504d5377, 0xde398b34, 0x21b77d86, 0x18bd6514, 0xbc41f116,
+0x88405585, 0x8555cc9d, 0x2ec213b2, 0x542b1842, 0x063579b3, 0xe47fb6c5,
+0x542485fd, 0xcb0aba36, 0x1703abb8, 0x0dc54612, 0x7a58cdf3, 0x0a39a9c7,
+0x7c259899, 0x7074495c, 0x0665f1e8, 0x1660adf9, 0xbe0eca10, 0x55a3bf42,
+0xe4ef353f, 0x8caa8703, 0xf9915fcb, 0x45f97d9b, 0x0eee5b66, 0xa3caeeeb,
+0xfc322d2b, 0xaa7f763c, 0x6ffc0439, 0x22ff095e, 0x6095c83d, 0x4b217bef,
+0x09486a68, 0x40b05bb8, 0x67f8d3ca, 0x7018f808, 0xf1f808ce, 0xa096fdd2,
+0xa73628dc, 0x1a03888e, 0x0cdb727c, 0xea4370eb, 0x36b60c20, 0x9a48fe6f,
+0x1141dff8, 0xb6f113e0, 0x92da8eb5, 0xe9221484, 0x5bcba785, 0xb1fe1e7b,
+0x93d95acf, 0x816daadb, 0xa9e97eaf, 0x41bedd
+
+output0 =
+0x11d2bcac, 0x7715ae4d, 0xc9f4dbc6, 0x2fda3c1a, 0x09349b16, 0x2cd3c189,
+0xe5650429, 0xc73c42c1, 0xe7336bb7, 0xbb7de593, 0x83f986aa, 0xc0ade12e,
+0x6730b095, 0x78f7c059, 0xaa907199, 0x75c323d1, 0x7061f9ba, 0x97e067bf,
+0xc155cd55, 0x6a4cb08d, 0x4260e2fa, 0xff35e496, 0x37f251d3, 0x02fd9f9e,
+0x6f53345c, 0x790cda6d, 0x3b8549e4, 0x56d0c6ea, 0x70a38006, 0xfff18223,
+0x6f2035b5, 0x6cf508d3, 0x98a0a308, 0x432353fc, 0x0eb818eb, 0xdd9a128b,
+0xf92431b2, 0xad788286, 0xda07d5de, 0x44b4b3a8, 0xbe62fd67, 0x61a4eb54,
+0x90d7ac9f, 0xc4d9a930, 0xfddc3c24, 0xf5e3b1c8, 0x38143538, 0xcb1d3062,
+0xcae36df3, 0x50a73437, 0x542dcab7, 0x875973a0, 0x34690309, 0x49cb1ddb,
+0xf8a62b92, 0x82af6103, 0xc9f8c928, 0x3835b822, 0x16b044a6, 0xdae89096,
+0xa5be47d4, 0xaf61189e, 0x5cd70faf, 0x037331cf, 0xef7fa5f6, 0xb2f2b41a,
+0xa6f222c6, 0xdb60fe4c, 0x2a857a9a, 0x0b821f9d, 0x348afd17, 0x7eecbaeb,
+0x92bb9509, 0x8a3cec24, 0xd02549a2, 0x155ffa81, 0x2b7feac6, 0x3ee461e7,
+0xc981f936, 0x89b544c7, 0x9a431e36, 0x62511734, 0x769f9647, 0x211a747e,
+0x567abef4, 0xad87e2b4, 0xa3e0c3bf, 0x6d325dd5, 0xf561cc46, 0x39925735,
+0x3d8abbfd, 0xc3724c88, 0x8bdf03c9, 0x1b02a12a, 0x4f233a0c, 0x9ca9444a,
+0xc5d1f7e6, 0x4d995f37, 0xd9aefb32, 0xd0465248, 0x0f3a3b21, 0x62ea8c0c,
+0x91f8d54e, 0x5cf75514, 0x14618a01, 0x8fe9b87e, 0xf2b424f9, 0x49724ce2,
+0xa1464587, 0x5e00dc83, 0x59475455, 0x444119b1, 0x4fb9f036, 0x65fcbc1a,
+0x1c63a990, 0x767a6114, 0xb0ede06a, 0xcfb91ae3, 0x7874af5f, 0xf78772a3,
+0xa2932c81, 0x77f2759d, 0x930dc8f1, 0x95ce14a5, 0x134363ee, 0x61ee143f,
+0xf0034b35, 0xfdc75fce, 0x3be2dcf3, 0xff3a07eb, 0xdc43f0eb, 0x23ba73bb,
+0x45f7649e, 0xcacc297c, 0xa3dd98db, 0x3b787aa9, 0x4fde63dc, 0x10ea20a0,
+0xe6da8721, 0xbfde5b08, 0x9c3739da, 0xb6dc015a, 0x427db088, 0xdfdb8e6f,
+0x756be6c1, 0x21f5297b, 0x06135665, 0xc1602b7d, 0x049536c5, 0xbbb3b801,
+0x0cdb0c19, 0x7b2ad622, 0xfee8218f, 0xc5c7f123, 0x8abd3301, 0xa15b534d,
+0x29dd2053, 0xd409abf9, 0x3ef19d6b, 0x70a3cbc2, 0x7a51423a, 0x4505b2ad,
+0xdc74c75e, 0x068751a9, 0xb0b56437, 0x14a10371, 0x76af806f, 0xa8a47e19,
+0x7c97a26e, 0x7998a3d6, 0xdc1ad1e2, 0xb532a301, 0xca8a3e7d, 0xd0aef374,
+0x204990c0, 0xc7011aec, 0xa69151ea, 0x53390026, 0x7bf0d762, 0x735c2202,
+0x64159e54, 0x5a3b1a56, 0x9ef1def2, 0x0ab8a961, 0x587b0886, 0xb8cc5975,
+0x2a5a0f23, 0x069d05be, 0x9cc3c207, 0x40ef1a02, 0x4fae3f5b, 0x1f127aae,
+0xd4e6d411, 0x17ac43ef, 0xe4bf891b, 0xfbb21765, 0x2c560c7e, 0x8561988c,
+0x73a01032, 0x0cfef73a, 0x694c4991, 0x885d7a3f, 0x4218d1ff, 0xc2efaffb,
+0xaf9d9715, 0xf76de6b2, 0xcce8e8ff, 0x370e3800, 0x493675eb, 0xd8fbcbda,
+0xa5b382c2, 0x86c8f1ea, 0x3d724ea4, 0xb067034c, 0x6491d87e, 0x1a745ce4,
+0xbb27180b, 0x1a2f0acc, 0xac4b7b3b, 0xe324578b, 0xc87928df, 0x9c1de566,
+0x0ce2a17d, 0xaf2e13ce, 0x146a8659, 0x8727f6ae, 0xe2df7d03, 0x1a8e4cb4,
+0xfa590976, 0x13a7c236, 0xc07489d0, 0xbe905e17, 0xafeb3d4b, 0x201e73f2,
+0x5bdca12e, 0x3e15a852, 0xbcfc3271, 0x5d398410, 0x6bfacc15, 0x011fc61f,
+0x43e43fd7, 0x0640717c, 0x96bfb3ff, 0x158eac19, 0x3b852e91, 0x74f9ceda,
+0xcac71326, 0xfc0e312a, 0x20e8137b, 0xa1162611, 0x239ac7fe, 0xb9d00f8a,
+0xea0b5241, 0x019f0d25, 0xc5153264, 0xb48a5547, 0xe54e339f, 0x17a6cca5,
+0x5065af0d, 0x5ce648b9, 0xb457b342, 0xc1cb3f0e, 0x28d03c8b, 0x5144ed7a,
+0xdb80779f, 0x53ce1b87, 0xbc071147, 0xbfe46c11, 0x7296785e, 0x83e4a63e,
+0xc58982e9, 0xac97c7b9, 0x3e2fe9ad, 0x5badf077, 0x75aa2457, 0xe90a9df7,
+0x8b6ccd4f, 0x0952f26d, 0x80a8378a, 0xb43e3207, 0xf2de9df0, 0x0fff3717,
+0x80446f72, 0xd05c0c7f, 0xdc9ad9a1, 0xe881678d, 0x290c1bd1, 0x99ca0de2,
+0x4b3304c7, 0x6ea6f4e4, 0xf620f405, 0xb2f0593e, 0x0a930b64, 0xaa79e973,
+0xb34cce52, 0x094579bb, 0x87e5be0f, 0x8f7da04c, 0x40c1952c, 0xbe986586,
+0x55f822cc, 0x55d8abe9, 0x5ae570c1, 0xe8c7eb76, 0x2a3c1721, 0x7d7d9237,
+0x8cd3a0c0, 0xa3818fa5, 0xfb4d2df0, 0x12f42455, 0x8e9f2a07, 0x45b28529,
+0x49b9c170, 0x0812d29a, 0xc1353e6b, 0x2701f0b3, 0xb8dbcf3a, 0x842c6fee,
+0xb9240b2a, 0x723d6490, 0x0cc20b5b, 0xe4fd1dc0, 0x99651ffd, 0xa38e1773,
+0x4e99bd3a, 0xe0c24878, 0x2dd78dba, 0x50cdaba8, 0x7b9678bf, 0x6e6d7824,
+0xe738e423, 0x22043a00, 0x4eaba169, 0x0f2808d5, 0xe49ec31d, 0x251f7086,
+0x4cafaf35, 0x524d1088, 0x5c1321bd, 0x8185032d, 0xb21a78eb, 0x51d13a3a,
+0xc4470b6c, 0xcb3b9f7f, 0xe32b35e7, 0x538b94ce, 0xe042ec95, 0x209b6116,
+0xde3b30f2, 0xd09c4b2e, 0x239fda51, 0x02b1b715, 0xf3c5e5de, 0x8a3ed6bf,
+0x4604fd3d, 0x9df50325, 0x631779d6, 0x87902b7e, 0x29890dae, 0x4e0011be,
+0x76476833, 0x478e5bfd, 0xf206abca, 0xad175a4d, 0xb1ec8cd6, 0xd3a9a423,
+0x27082a37, 0xe3341c5d, 0x06e1c714, 0x12d86950, 0x91d6f70e, 0x2a1c50cf,
+0xa81af940, 0xf75248fc, 0xbe05834f, 0x3f16b2f7, 0x3a4f399d, 0x17735bff,
+0x75fdc1cf, 0xae70d0f3, 0x97361ac3, 0x108acace, 0xd5ce994b, 0x87750f45,
+0xf1b6074b, 0x899de08a, 0xcdf940b8, 0x3333765e, 0x5b844560, 0xe2d7cd26,
+0xde5b3df3, 0x005b47eb, 0x3f84501a, 0xd5c4a613, 0x02ec8c64, 0x8a539710,
+0x2ef84f5e, 0x3cfd137e, 0x16291d76, 0x1ec4c1e2, 0x2c4603e3, 0x8914251f,
+0x15ff58e2, 0xad8a9b5d, 0xd42c2ffa, 0x91fb3db4, 0xbb0e6562, 0x0ed4d637,
+0x84dd5060, 0x4de7a883, 0x2604f869, 0x7b5b371d, 0x35179e64, 0x72fa9fb2,
+0xf0dd279b, 0xd0b58495, 0xc5a4a3e3, 0x6c2ddbc0, 0xb5124aa4, 0x7273de76,
+0xdd4163e0, 0xeb8c26d7, 0xd471989f, 0x6bae4782, 0xa90e7810, 0x83ee80bf,
+0x7ccf3a0f, 0x2cf00815, 0x908ed7b3, 0x83d27286, 0x9b80d5fa, 0x0bdbc140,
+0xff05bcbe, 0x4b347b77, 0x7ebf482a, 0x1d50dfad, 0xac97bad2, 0xf0e405e7,
+0xa2110431, 0xc1f0165d, 0xb885760e, 0xc56f402f, 0x524baf0c, 0xd6fbf683,
+0xab020827, 0x9080e9f9, 0x0f24a3be, 0xe505fe4d, 0x7078a864, 0x22646b61,
+0x68857877, 0x073a5f6e, 0x411a6509, 0x4c6052bc, 0xdd28239c, 0x628ff7f1,
+0x3763388f, 0xcaff8a87, 0x483fdf61, 0x1d6e8398, 0x9a5a208e, 0xa88b0665,
+0x4184378a, 0xed925967, 0xc46f3a40, 0x421725f8, 0xb9e9d803, 0x6e5e0eab,
+0x55e795a6, 0xbfb8f16f, 0xf82921c3, 0xdaf0990c, 0x861e5130, 0xc4210f91,
+0x2d7a06b9, 0xbc344f6c, 0xb591f615, 0x6d409248, 0x6553ec22, 0x586be3ed,
+0x9876935c, 0xddcf8da4, 0xed5a6710, 0xb85bcdd7, 0x59234579, 0xe945a34d,
+0xc3837d4c, 0xfe007d0f, 0x9275ec56, 0x7c865c5e, 0x2beea0fe, 0xf942d9cc,
+0x1548740c, 0xaa4d5b49, 0x17ce42c7, 0x24e4074e, 0x58d55c2f, 0x5ff14e1b,
+0x1f0b969f, 0x5cd5c8a4, 0xfecd05ee, 0xc9f211ea, 0xecaa7be5, 0x06420be4,
+0xd7b63bf9, 0x8a5c06e0, 0x2793c297, 0x03d49a11, 0xca3afbea, 0xfa1cd466,
+0x7df02501, 0x489b4261, 0x8f7864a1, 0xc92bab74, 0x5fe0373e, 0x5663ed79,
+0xe19f7aba, 0x5af07239, 0x37ae3a14, 0xabc5183f, 0xa9e8cb4f, 0xe8e3933e,
+0xcd02d773, 0xa5306021, 0x5d94aeb1, 0x5329218a, 0x95577113, 0x3c412d2c,
+0x0981a994, 0x080e03c0, 0x37d0a00d, 0x36d0fb8e, 0x95a04944, 0x4178364d,
+0x155d215a, 0x545bb534, 0x3ed24f54, 0x899b97f8, 0x58a1aff2, 0xda7c8295,
+0x203ba3c0, 0xe46cc2db, 0xb83fec29, 0xe1f521ab, 0xc6b9bfc2, 0x5c32cb2a,
+0x9ff27191, 0xd52f5c36, 0x5953596d, 0xb9686ed3, 0x087ca132, 0xa528467c,
+0x945c97ee, 0xbfa19e6f, 0xd4e19b4c, 0x55c03e10, 0x390bbd8e, 0x654a76c0,
+0x656030f0, 0xc157ac93, 0x02dcce46, 0x5dc06d58, 0x3b7fd9e9, 0xc8a4de6f,
+0xcbb105da, 0x8a1b6e0f, 0xeb1a7ecd, 0xfe809fd7, 0x43d70381, 0x0cfc5e49,
+0xf0a302d3, 0x9664b2c9, 0xb2793157, 0x5dd5cc39, 0x4e9d42bb, 0x26f65f3a,
+0xfdf325fb, 0x8fbd80f1, 0xd6dc87f0, 0xabd85a41, 0x308029ff, 0xb774c986,
+0x0b0fc9b4, 0xd57c5439, 0x3c3c5b4d, 0x0843d1cf, 0x11a1e765, 0x77d92661,
+0xe7142375, 0xe238ff84, 0xfbb66dd9, 0x3ac33a26, 0x7c843c33, 0x6ac40826,
+0x17d9ae96, 0x98edfd6b, 0x57747f0d, 0xae811573, 0x0cb107fd, 0x8e075d1a,
+0x44b82c2b, 0x5c831473, 0xe132923c, 0x56edfe59, 0xe41ef202, 0x1a4ffff4,
+0x711db68f, 0x097160f2, 0xcafacd90, 0x3861d5ae, 0xcdf9eccd, 0xcdd93506,
+0xaa171f8a, 0xe1de194e, 0xed1a1901, 0x1d9f9e42, 0xdcc2d911, 0x19782ad0,
+0xc52f93c8, 0x162a98b2, 0x56af9960, 0x6c9c5299, 0xcf9a19b7, 0x78c967b5,
+0xd045f7c3, 0xd71354ad, 0xb4b202dd, 0x44c5f03d, 0xf30ca027, 0x7c6e5360,
+0x0f687223, 0x089bc5e5, 0xaa82af26, 0xd3044038, 0x466b6c1e, 0x4f30716e,
+0xc38a5280, 0xd1835859, 0x7cf23e2c, 0x3c1c25dc, 0xdb16c0f6, 0x616d97e9,
+0xc4f921b2, 0xb222a9bf, 0x0da098cc, 0xaf24a9b8, 0x0531f892, 0xa532fc28,
+0xa1b7ff8c, 0x84185bde, 0xbf7e22ee, 0x0acd2cac, 0x8c9c9783, 0x06a12240,
+0xc72727bd, 0xd288dabc, 0x8cdb446e, 0x0775e50b, 0xff75e03c, 0x9b5e3401,
+0x0d72aba1, 0xead6e37f, 0x9e6ab0e8, 0x322bfaaf, 0xa77475ab, 0x209b5cca,
+0x95ec7cf2, 0xc9120454, 0x205950fb, 0x108b00f7, 0xe63691a1, 0x333de3ae,
+0x10a00cc6, 0x6627d276, 0x6ad7a7ba, 0x674bd137, 0x440ee9c6, 0x4baf4fec,
+0xf8fbbb08, 0x6cf14435, 0xeda46d4a, 0xc2970533, 0x1ef9901b, 0xa38c8a02,
+0x3cc92010, 0x11a2ad19, 0xacc4f626, 0x3b79c692, 0xba6fcc96, 0x023b4438,
+0x6e44da89, 0x706833e1, 0xc686d43e, 0x24de1fb0, 0x02cb4043, 0xcdcc9427,
+0x19874c6f, 0x1f0eac03, 0x451287ae, 0xde59e0f9, 0xe3d24b8b, 0xaacb7076,
+0xf9e917ec, 0xc38ee0ef, 0x1e35a948, 0x637e7d0f, 0xc46537e1, 0x57c719c6,
+0xd78e6388, 0x242b2bf1, 0xeeff65a3, 0xdba5167d, 0x52df5992, 0x2c176e9f,
+0x89edc76f, 0xad9bc6c8, 0x85d68905, 0x5fa6ace5, 0x0c29be5c, 0x382ac973,
+0xc90c37a6, 0x703c5202, 0x79982954, 0xb06169d8, 0x8b8eca2a, 0x150fddee,
+0x2ad08bc2, 0xe73410ed, 0x056c863d, 0x92207e0b, 0x61ad097d, 0x5b0112c3,
+0x0590cadb, 0xa4fd73a1, 0x1992d9c6, 0x40d3a1ac, 0x38b6c7e1, 0xc392aeea,
+0xebd97511, 0xcdaf098f, 0x7a37c361, 0xf2699fc9, 0x5f921fb3, 0xc2784ffe,
+0x0c41d640, 0x4a367b6c, 0xf16cc4af, 0xd8c3a120, 0x051d71e7, 0x339f9999,
+0xab664909, 0xa1ae5a9c, 0xcc0f88de, 0x3d4d7d88, 0x0aed3148, 0xd0768c85,
+0x7c7e9061, 0x587e3073, 0xa00baa91, 0x0742d49e, 0x8cdb3316, 0x6a65f748,
+0x97febcd5, 0x63f7e115, 0xe609e4ec, 0x1e7fec67, 0x41613968, 0x0781c35b,
+0xb43e97f2, 0x824b9c32, 0x32033289, 0x6f858691, 0x46bf3ba4, 0xc2c75bb0,
+0x3b93a4ce, 0x4269140b, 0xcee2b4c4, 0x2c7bc82a, 0xa75515dc, 0x2553582f,
+0x5bbd77f3, 0x9b418852, 0xfd8492df, 0xa6d60678, 0x08c8232d, 0xfde0decd,
+0xe9023c01, 0x618dc90f, 0xa7b37ce5, 0x6889c117, 0x818a1563, 0x6492d447,
+0x86fc80ce, 0x570d8ff2, 0x10ec5ab8, 0xc7c5b00d, 0x84cb4057, 0x544b7b69,
+0xb73fbb28, 0x09201691, 0xa63303af, 0x8aa52eca, 0x68e6bbef, 0x82c53c81,
+0x84f5b8ea, 0xf37cc22f, 0x291b9e0c, 0x882a6f6e, 0xc5d70964, 0x32f010ba,
+0xcc514415, 0x87a0d092, 0x1e64a4bd, 0x08210042, 0xb96becb7, 0x7b53f112,
+0xe07f1d2e, 0x850c5a4e, 0x3a77bf2f, 0xc8b412b3, 0x538a4cca, 0xd2007a54,
+0xf6639a46, 0x32f6b8e5, 0xcd0c2034, 0x384bfb85, 0x4cd9eaa8, 0xef8d0279,
+0x1053ef4f, 0x87e6aa9a, 0x547d631b, 0x180adcb3, 0xe1c17586, 0x27bea120,
+0x9d09ef7b, 0x533b41fc, 0x74c16d51, 0xd2f4da18, 0xfd5ff260, 0x47616278,
+0x84820a12, 0x400809cd, 0x6d51f9d7, 0x4f202599, 0xed3202e6, 0x2aad6568,
+0x6bf2f904, 0x6755e9fc, 0x36acd677, 0xdf468ee5, 0x8add5b5e, 0x680f18fd,
+0x60a8eb0f, 0xd12c8b03, 0x50f6e3a0, 0x71fa25ca, 0xd21a8bbd, 0xb75dc83b,
+0xeaec09f6, 0x6776cd02, 0x7c61afb0, 0x48a9cae0, 0xc76f2c05, 0x4767e311,
+0xe4dd0530, 0xc9b0043a, 0xda3a3648, 0x2727e9df, 0x76364d25, 0xd3f8a323,
+0x6d768c8e, 0xa52bb30a, 0xbfdbb71c, 0x58fee667, 0x21e0513c, 0xcf6b6fae,
+0xb6982d21, 0x19a2b799, 0xbc3bf640, 0x373e6dc8, 0x89fdf186, 0xaf29301f,
+0x5323d40b, 0xf246744f, 0x30834a7a, 0xe502cd23, 0x82f6bbc3, 0x43f53d28,
+0x9817925a, 0x2de30a8c, 0x65be27bf, 0x12a7f263, 0x075a1123, 0xb6b8ca95,
+0x0826a4b4, 0x53772e37, 0x8b34504d, 0x7d86de39, 0x651421b7, 0xf11618bd,
+0x5585bc41, 0xcc9d8840, 0x13b28555, 0x18422ec2, 0x79b3542b, 0xb6c50635,
+0x85fde47f, 0xba365424, 0xabb8cb0a, 0x46121703, 0xcdf30dc5, 0xa9c77a58,
+0x98990a39, 0x495c7c25, 0xf1e87074, 0xadf90665, 0xca101660, 0xbf42be0e,
+0x353f55a3, 0x8703e4ef, 0x5fcb8caa, 0x7d9bf991, 0x5b6645f9, 0xeeeb0eee,
+0x2d2ba3ca, 0x763cfc32, 0x0439aa7f, 0x095e6ffc, 0xc83d22ff, 0x7bef6095,
+0x6a684b21, 0x5bb80948, 0xd3ca40b0, 0xf80867f8, 0x08ce7018, 0xfdd2f1f8,
+0x28dca096, 0x888ea736, 0x727c1a03, 0x70eb0cdb, 0x0c20ea43, 0xfe6f36b6,
+0xdff89a48, 0x13e01141, 0x8eb5b6f1, 0x148492da, 0xa785e922, 0x1e7b5bcb,
+0x5acfb1fe, 0xaadb93d9, 0x7eaf816d, 0xbedda9e9, 0xa7ca7f41, 0x3dbc26b7,
+0xbc3bd6af, 0x2d439ab1, 0x033d7088, 0x55ce999d, 0xbf01aede, 0x69d66a12,
+0x66729f87, 0x8e32437f, 0x7c0cd769, 0xc2d6c28e, 0xb46447ae, 0x4a525520,
+0x93096dbf, 0x2a322bcd, 0xde416e8f, 0xb43de9a4, 0xe2103ebb, 0x416e35ed,
+0xd0c13478, 0x0298890a, 0x8d4878f3, 0x8e81f629, 0xd60a85bf, 0x10c2e72d,
+0x68b67fb0, 0x2981247e, 0x6bdbd269, 0xe43784e3, 0x812de42b, 0x867d394d,
+0x423b0ee7, 0x627b8d60, 0x23ab2664, 0x83177153, 0x13dca280, 0x49d3c872,
+0xd45a0b4e, 0x00d45a9f, 0x0c462361, 0x983f61a9, 0x8002d29a, 0x6fbea32b,
+0xfe480c9d, 0xc509b1ae, 0xa16a6480, 0x2ec3f091, 0x278b72bc, 0xedbf05b0,
+0x9b1b3b99, 0xe10ad07e, 0xd72e6076, 0x6c5a971a, 0xf8455dba, 0x4b7dc370,
+0x4a7cdaad, 0xed4f2283, 0xe6f08d15, 0xf6ad0a12, 0x1ae96f4f, 0x4f57bd65,
+0x64695652, 0x0cb93df1, 0x9af11326, 0xce713c08, 0xefc3aba9, 0xf650de25,
+0xb7b39517, 0x45c92ae6, 0x38a8e441, 0x60b1823f, 0xb061259d, 0xb6996e6a,
+0x78786198, 0x06309186, 0x77d3c6f4, 0x8d546f7b, 0xfc7abe48, 0x969ce149,
+0x76950457, 0xd773728e, 0xb6a62ac4, 0x6164c8d3, 0x4f4fd819, 0x0aa0b660,
+0x61d334d1, 0x3deca8cf, 0xec2841ad, 0x44636725, 0x235d3532, 0x3aecb4f3,
+0x3538c6e0, 0xf0060d47, 0x2ab167f4, 0x0b9af7cf, 0x0779ec25, 0x35a33e48,
+0x8a0b999b, 0x593d498d, 0xc336cabf, 0xd49ebae0, 0x4e1756d7, 0x949cd0fb,
+0x1df1c1ee, 0xfbcc6642, 0x31637c7a, 0xf5057c87, 0xa10f0991, 0x8ed58fb9,
+0x09078b6e, 0x20648f01, 0xc1db84e6, 0xde0bda37, 0x61318efd, 0x11cf175e,
+0xb5edbe81, 0xf8904fcd, 0x209f1281, 0x18808af8, 0x1fecace9, 0xe4266782,
+0x37e5b44b, 0x42398c69, 0x5c289090, 0x686fa23f, 0x1e53a0c2, 0x5dac1fdc,
+0x3483d874, 0xc1a4c007, 0xa0cd459f, 0xd189410f, 0xddddc858, 0xaece2922,
+0xdef79aca, 0xc4b9e092, 0xb0fd47c2, 0x82903f08, 0xac21977f, 0x5a5f8bc8,
+0x6dca69c4, 0x7b3ccc8d, 0x0ba11e02, 0x01cdc423, 0x94373db8, 0xa7467d8f,
+0x1c2b70c3, 0xcf8c0768, 0xda7ee497, 0x073acd49, 0x0350dccc, 0x5a6e39c2,
+0xf6f7d4cc, 0xc64af7b5, 0xc445ddaa, 0xc7e24642, 0x1e600f75, 0x47f85b15,
+0x57a8cd36, 0xf9f152f5, 0xefac27df, 0xddb3dd4e, 0xf8e27f9d, 0x6d0f2803,
+0xf64634ef, 0xde7e7b1a, 0xc66b28e5, 0xeb61d4c7, 0x7439135d, 0x547fa78b,
+0x70a3a479, 0xd3200ea9, 0x3382d3c5, 0x1d9de4d8, 0xc343d60f, 0x8bd1e0e7,
+0xe4a541db, 0x5328df3a, 0x4e725ef6, 0x6c97f0e1, 0x221ff24d, 0x3ff691dd,
+0x3f856ea6, 0xf720842b, 0x7fae7374, 0x957b0aaa, 0x9f99a156, 0xe33eec87,
+0xe6761738, 0x792b71de, 0x05a6d387, 0x1e0a3b84, 0x9f7cfc15, 0x4cf4e3c7,
+0x5ee79441, 0x596c285a, 0xba89f481, 0xfa61af2c, 0xe7049f78, 0x59584da5,
+0xd4490299, 0x20933317, 0xee435639, 0x4cc83a0a, 0x86492fdb, 0x162613dd,
+0xc76fce3c, 0xaa454f8f, 0x1816c686, 0x5fc2c514, 0x83501909, 0x3685c367,
+0x46b2b281, 0xcdbef634, 0xd210178c, 0xffbff6e3, 0xed30aac0, 0x3196cc93,
+0xb848dda0, 0x5e2003b4, 0xc3e87650, 0x01a00bf2, 0x74a2d59f, 0x21b75986,
+0x6434d546, 0x8aefc874, 0xdaad3c0d, 0x3d23cfb2, 0x64e46cff, 0xded52526,
+0xd922d31f, 0x5bc9f960, 0xa748f3b5, 0x0da1da76, 0x7f5d4c6d, 0x0be533c1,
+0x2b7e40d0, 0xe25059b6, 0x97848fc2, 0x53a3d340, 0x532cda5d, 0x6f4567dd,
+0x9ca35dee, 0x034d1a87, 0xdd67abcf, 0xa5bca719, 0xadf605ca, 0x58206c3f,
+0x74533a11, 0xfe0f5ffc, 0x2a686617, 0xf6718993, 0x74c9d10a, 0xf056f283,
+0xd0203300, 0x6170b2cc, 0xf866b11d, 0x9469442f, 0x61b8960d, 0xd6030148,
+0x8bd2439f, 0xd60a4ba8, 0x4cbd1d64, 0xe2c713ee, 0x4259e3c9, 0xf2f5f436,
+0xcef487d1, 0x52f60b3d, 0xabf6637d, 0x97396dfe, 0xfe44b265, 0xd882ff2b,
+0x11a3cdcc, 0x206e
+
+ea =
+13068
+
+eb =
+13068
+
+cab =
+2
+
+c =
+3
+
+c_neg =
+0
+
+k_pos =
+4352
+
+k_neg =
+4288
+
+ncb_pos =
+13152
+
+ncb_neg =
+12960
+
+r =
+0
+
+rv_index =
+0
+
+code_block_mode =
+0
+
+op_flags =
+RTE_BBDEV_TURBO_CRC_24B_ATTACH, RTE_BBDEV_TURBO_ENC_SCATTER_GATHER
+
+expected_status =
+OK
\ No newline at end of file
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
diff --git a/doc/guides/tools/testbbdev.rst b/doc/guides/tools/testbbdev.rst
index 7e6a4db..060164c 100644
--- a/doc/guides/tools/testbbdev.rst
+++ b/doc/guides/tools/testbbdev.rst
@@ -62,8 +62,7 @@ The following are the command-line options:
 
 ``-e EAL_PARAMS, --eal_params EAL_PARAMS``
  Specifies EAL arguments which are passed to the test app. For more details,
- refer to DPDK documentation at
- http://doc.dpdk.org/guides/linux_gsg/linux_eal_parameters.html.
+ refer to DPDK documentation at http://dpdk.org/doc.
 
 ``-t TIMEOUT, --timeout TIMEOUT``
  Specifies timeout in seconds. If not specified timeout is set to 300 seconds.
@@ -82,8 +81,8 @@ The following are the command-line options:
 ``-v TEST_VECTOR [TEST_VECTOR ...], --test_vector TEST_VECTOR [TEST_VECTOR ...]``
  Specifies paths to the test vector files. If not specified path is set based
  on *$RTE_SDK* environment variable concatenated with
- "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default
- data file.
+ "*/app/test-bbdev/test_vectors/bbdev_null.data*" and indicates default data
+ file.
 
  **Example usage:**
 
@@ -93,7 +92,7 @@ The following are the command-line options:
  ``./test-bbdev.py -v turbo_dec_test1.data turbo_enc_test2.data``
   The bbdev test app is executed twice. First time vector is filled based on
   *turbo_dec_test1.data* file and second time based on
-  *turb_enc_test2.data* file. For both executions all tests are run.
+  *turbo_enc_test2.data* file. For both executions all tests are run.
 
 ``-n NUM_OPS, --num_ops NUM_OPS``
  Specifies number of operations to process on device. If not specified num_ops
@@ -139,7 +138,7 @@ There are 6 main test cases that can be executed using testbbdev tool:
 * Latency measurement [-c latency]
     - Measures the time consumed from the first enqueue until the first
       appearance of a dequeued result
-    - This measurement represents the full latency of a bbdev operation
+    - This measurment represents the full latency of a bbdev operation
       (encode or decode) to execute
 
 * Poll-mode Throughput measurement [-c throughput]
@@ -170,49 +169,66 @@ It runs all tests with following vectors:
 
 - ``bbdev_null.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
 
-- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+
+- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data``
+
+- ``turbo_enc_c1_k40_r0_e1194_rm.data``
 
 - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
 
-- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+- ``turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
+
+- ``turbo_enc_c1_k40_r0_e1196_rm.data``
+
+- ``turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data``
+
+- ``turbo_dec_c1_k160_r0_e23040_teq_posllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
 
 - ``turbo_enc_c1_k40_r0_e272_rm.data``
 
 - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
 
+- ``turbo_dec_c1_k40_r0_e17280_sbd_negllr.data``
+
+- ``turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data``
+
+- ``turbo_enc_c1_k456_r0_e1380_scatter.data``
+
+- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
 
 - ``turbo_enc_c1_k6144_r0_e120_rm_rvidx.data``
 
-- ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
-
 - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
 
 - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18444.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+- ``turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data``
 
-- ``turbo_enc_c1_k40_r0_e1190_rm.data``
+- ``turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data``
 
 - ``turbo_enc_c1_k6144_r0_e18448_crc24a.data``
 
-- ``turbo_dec_c1_k6144_r0_e34560_posllr.data``
-
-- ``turbo_enc_c1_k40_r0_e1194_rm.data``
-
-- ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
 
 .. code-block:: console
 
-  ./test-bbdev.py -v app/test-bbdev/turbo_*_default.data
+  ./test-bbdev.py -v app/test-bbdev/test_vectors/turbo_*_default.data
 
 It runs all tests with "default" vectors.
 
@@ -227,36 +243,44 @@ Running Tests
 -------------
 
 Shortened tree of isg_cid-wireless_dpdk_ae with dpdk compiled for
-x86_64-native-linux-icc target:
+x86_64-native-linuxapp-icc target:
 
 ::
 
  |-- app
      |-- test-bbdev
          |-- test_vectors
-             |-- bbdev_null.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
+             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
+             |-- turbo_enc_c1_k40_r0_e1194_rm.data
              |-- turbo_enc_c2_k5952_r0_e17868_crc24b.data
-             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
-             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
+             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
+             |-- turbo_enc_c1_k40_r0_e1196_rm.data
+             |-- turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data
+             |-- turbo_dec_c1_k160_r0_e23040_teq_posllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data
              |-- turbo_enc_c1_k40_r0_e272_rm.data
              |-- turbo_enc_c3_k4800_r2_e14412_crc24b.data
+             |-- turbo_dec_c1_k40_r0_e17280_sbd_negllr.data
+             |-- turbo_dec_c1_k6144_r0_e34560_sbd_posllr.data
+             |-- turbo_enc_c1_k456_r0_e1380_scatter.data
+             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data
              |-- turbo_enc_c1_k6144_r0_e120_rm_rvidx.data
-             |-- turbo_enc_c4_k4800_r2_e14412_crc24b.data
              |-- turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data
              |-- turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18444.data
-             |-- turbo_dec_c1_k6144_r0_e34560_negllr.data
-             |-- turbo_enc_c1_k40_r0_e1190_rm.data
+             |-- turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
+             |-- turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
              |-- turbo_enc_c1_k6144_r0_e18448_crc24a.data
-             |-- turbo_dec_c1_k6144_r0_e34560_posllr.data
-             |-- turbo_enc_c1_k40_r0_e1194_rm.data
-             |-- turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
 
- |-- x86_64-native-linux-icc
+
+ |-- x86_64-native-linuxapp-icc
      |-- app
          |-- testbbdev
 
@@ -265,7 +289,7 @@ All bbdev devices
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -v turbo_dec_default.data
 
 It runs all available tests using the test vector filled based on
@@ -279,7 +303,7 @@ baseband turbo_sw device
 
 .. code-block:: console
 
-  ./test-bbdev.py -p ../../x86_64-native-linux-icc/app/testbbdev
+  ./test-bbdev.py -p ../../x86_64-native-linuxapp-icc/app/testbbdev
   -e="--vdev=baseband_turbo_sw" -t 120 -c validation
   -v ./test_vectors/turbo_* -n 64 -b 8 32
 
@@ -307,16 +331,39 @@ baseband_null device does not have to be defined explicitly as it is created by
 
 
 Test Vector files
------------------
+=================
 
 Test Vector files contain the data which is used to set turbo decoder/encoder
 parameters and buffers for validation purpose. New test vector files should be
 stored in ``app/test-bbdev/test_vectors/`` directory. Detailed description of
 the syntax of the test vector files is in the following section.
 
+Naming convention for test vector files
+---------------------------------------
+
+The TV file name should follow this syntax:
+
+``turbo_<enc/dec>_c<c>_k<k>_r<r>_e<e>_<extra-info>``
+
+- ``<k>`` is k_pos in case of c > 1
+- ``<r>`` can be 0
+- ``<e>`` is the eb in case of c > 1
+- Remember to put the letters (c,k,r,e) before the nummber to help the reader to
+  know what the following number represents
+- ``<extra-info>`` should be pretty much based on op_flags, sperated by underscore
+  "_", and should be from this list and in the exact order as follows:
+
+  #. ``crc24a/crc24b`` : based on type of crc perfomed, remove if not crc is performed
+  #. ``sbd`` : in case that rate subblock deinterleave is not bypassed
+  #. ``rm`` : in case that rate matching is not bypassed
+  #. ``teq`` : when performing turbo equalizer
+  #. ``rvidx`` : in case that rv_idx is bypassed
+  #. ``negllr/posllr`` : for type of LLR used, remove if not soft out enabled
+  #. ``scatter`` : in case the buffer is scattered (split)
+
 
 Basic principles for test vector files
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------
 Line started with ``#`` is treated as a comment and is ignored.
 
 If variable is a chain of values, values should be separated by a comma. If
@@ -351,7 +398,7 @@ documented in *rte_bbdev_op.h*
 
 
 Turbo decoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo decoder it has to be always set to ``RTE_BBDEV_OP_TURBO_DEC``
 
@@ -528,7 +575,7 @@ Following statuses can be used:
 
 
 Turbo encoder test vectors template
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 For turbo encoder it has to be always set to ``RTE_BBDEV_OP_TURBO_ENC``
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 5/5] usertools: update to usertool for baseband device
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
                     ` (4 preceding siblings ...)
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 4/5] test-bbdev: update of bbdev test-app Nicolas Chautru
@ 2019-05-14 19:45   ` Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
  2019-05-14 20:54   ` [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08 Thomas Monjalon
  6 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Allows binding of baseband devices

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 usertools/dpdk-devbind.py | 10 +++++++++-
 usertools/dpdk-setup.sh   |  6 +++---
 2 files changed, 12 insertions(+), 4 deletions(-)
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

diff --git a/usertools/dpdk-devbind.py b/usertools/dpdk-devbind.py
old mode 100755
new mode 100644
index 9e79f0d..a6ee8f9
--- a/usertools/dpdk-devbind.py
+++ b/usertools/dpdk-devbind.py
@@ -18,6 +18,8 @@
                    'SVendor': None, 'SDevice': None}
 intel_processor_class = {'Class': '0b', 'Vendor': '8086', 'Device': None,
                    'SVendor': None, 'SDevice': None}
+acceleration_class = {'Class': '12', 'Vendor': None, 'Device': None,
+               'SVendor': None, 'SDevice': None}
 cavium_sso = {'Class': '08', 'Vendor': '177d', 'Device': 'a04b,a04d',
               'SVendor': None, 'SDevice': None}
 cavium_fpa = {'Class': '08', 'Vendor': '177d', 'Device': 'a053',
@@ -40,6 +42,7 @@
 crypto_devices = [encryption_class, intel_processor_class]
 eventdev_devices = [cavium_sso, cavium_tim, octeontx2_sso]
 mempool_devices = [cavium_fpa, octeontx2_npa]
+baseband_devices = [acceleration_class]
 compress_devices = [cavium_zip]
 
 # global dict ethernet devices present. Dictionary indexed by PCI address.
@@ -89,7 +92,7 @@ def usage():
 
     --status-dev:
         Print the status of given device group. Supported device groups are:
-        "net", "crypto", "event", "mempool" and "compress"
+        "net", "crypto", "baseband", "event", "mempool" and "compress"
 
     -b driver, --bind=driver:
         Select the driver to use or \"none\" to unbind the device
@@ -586,6 +589,9 @@ def show_status():
     if status_dev == "crypto" or status_dev == "all":
         show_device_status(crypto_devices, "Crypto")
 
+    if status_dev == "baseband" or status_dev == "all":
+        show_device_status(baseband_devices, "Baseband")
+
     if status_dev == "event" or status_dev == "all":
         show_device_status(eventdev_devices, "Eventdev")
 
@@ -667,6 +673,7 @@ def do_arg_actions():
             # refresh if we have changed anything
             get_device_details(network_devices)
             get_device_details(crypto_devices)
+            get_device_details(baseband_devices)
             get_device_details(eventdev_devices)
             get_device_details(mempool_devices)
             get_device_details(compress_devices)
@@ -688,6 +695,7 @@ def main():
     get_device_details(network_devices)
     get_device_details(crypto_devices)
     get_device_details(eventdev_devices)
+    get_device_details(baseband_devices)
     get_device_details(mempool_devices)
     get_device_details(compress_devices)
     do_arg_actions()
diff --git a/usertools/dpdk-setup.sh b/usertools/dpdk-setup.sh
old mode 100755
new mode 100644
index d008074..15f91b8
--- a/usertools/dpdk-setup.sh
+++ b/usertools/dpdk-setup.sh
@@ -496,13 +496,13 @@ step2_func()
 	TEXT[5]="Setup hugepage mappings for NUMA systems"
 	FUNC[5]="set_numa_pages"
 
-	TEXT[6]="Display current Ethernet/Crypto device settings"
+	TEXT[6]="Display current Ethernet/Crypto/Baseband device settings"
 	FUNC[6]="show_devices"
 
-	TEXT[7]="Bind Ethernet/Crypto device to IGB UIO module"
+	TEXT[7]="Bind Ethernet/Crypto/Baseband device to IGB UIO module"
 	FUNC[7]="bind_devices_to_igb_uio"
 
-	TEXT[8]="Bind Ethernet/Crypto device to VFIO module"
+	TEXT[8]="Bind Ethernet/Crypto/Baseband device to VFIO module"
 	FUNC[8]="bind_devices_to_vfio"
 
 	TEXT[9]="Setup VFIO permissions"
-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v2 5/5] usertools: update to usertool for baseband device
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 5/5] usertools: update to usertool for baseband device Nicolas Chautru
@ 2019-05-14 19:45     ` Nicolas Chautru
  0 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-05-14 19:45 UTC (permalink / raw)
  Cc: dev, Nicolas Chautru

Allows binding of baseband devices

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 usertools/dpdk-devbind.py | 10 +++++++++-
 usertools/dpdk-setup.sh   |  6 +++---
 2 files changed, 12 insertions(+), 4 deletions(-)
 mode change 100755 => 100644 usertools/dpdk-devbind.py
 mode change 100755 => 100644 usertools/dpdk-setup.sh

diff --git a/usertools/dpdk-devbind.py b/usertools/dpdk-devbind.py
old mode 100755
new mode 100644
index 9e79f0d..a6ee8f9
--- a/usertools/dpdk-devbind.py
+++ b/usertools/dpdk-devbind.py
@@ -18,6 +18,8 @@
                    'SVendor': None, 'SDevice': None}
 intel_processor_class = {'Class': '0b', 'Vendor': '8086', 'Device': None,
                    'SVendor': None, 'SDevice': None}
+acceleration_class = {'Class': '12', 'Vendor': None, 'Device': None,
+               'SVendor': None, 'SDevice': None}
 cavium_sso = {'Class': '08', 'Vendor': '177d', 'Device': 'a04b,a04d',
               'SVendor': None, 'SDevice': None}
 cavium_fpa = {'Class': '08', 'Vendor': '177d', 'Device': 'a053',
@@ -40,6 +42,7 @@
 crypto_devices = [encryption_class, intel_processor_class]
 eventdev_devices = [cavium_sso, cavium_tim, octeontx2_sso]
 mempool_devices = [cavium_fpa, octeontx2_npa]
+baseband_devices = [acceleration_class]
 compress_devices = [cavium_zip]
 
 # global dict ethernet devices present. Dictionary indexed by PCI address.
@@ -89,7 +92,7 @@ def usage():
 
     --status-dev:
         Print the status of given device group. Supported device groups are:
-        "net", "crypto", "event", "mempool" and "compress"
+        "net", "crypto", "baseband", "event", "mempool" and "compress"
 
     -b driver, --bind=driver:
         Select the driver to use or \"none\" to unbind the device
@@ -586,6 +589,9 @@ def show_status():
     if status_dev == "crypto" or status_dev == "all":
         show_device_status(crypto_devices, "Crypto")
 
+    if status_dev == "baseband" or status_dev == "all":
+        show_device_status(baseband_devices, "Baseband")
+
     if status_dev == "event" or status_dev == "all":
         show_device_status(eventdev_devices, "Eventdev")
 
@@ -667,6 +673,7 @@ def do_arg_actions():
             # refresh if we have changed anything
             get_device_details(network_devices)
             get_device_details(crypto_devices)
+            get_device_details(baseband_devices)
             get_device_details(eventdev_devices)
             get_device_details(mempool_devices)
             get_device_details(compress_devices)
@@ -688,6 +695,7 @@ def main():
     get_device_details(network_devices)
     get_device_details(crypto_devices)
     get_device_details(eventdev_devices)
+    get_device_details(baseband_devices)
     get_device_details(mempool_devices)
     get_device_details(compress_devices)
     do_arg_actions()
diff --git a/usertools/dpdk-setup.sh b/usertools/dpdk-setup.sh
old mode 100755
new mode 100644
index d008074..15f91b8
--- a/usertools/dpdk-setup.sh
+++ b/usertools/dpdk-setup.sh
@@ -496,13 +496,13 @@ step2_func()
 	TEXT[5]="Setup hugepage mappings for NUMA systems"
 	FUNC[5]="set_numa_pages"
 
-	TEXT[6]="Display current Ethernet/Crypto device settings"
+	TEXT[6]="Display current Ethernet/Crypto/Baseband device settings"
 	FUNC[6]="show_devices"
 
-	TEXT[7]="Bind Ethernet/Crypto device to IGB UIO module"
+	TEXT[7]="Bind Ethernet/Crypto/Baseband device to IGB UIO module"
 	FUNC[7]="bind_devices_to_igb_uio"
 
-	TEXT[8]="Bind Ethernet/Crypto device to VFIO module"
+	TEXT[8]="Bind Ethernet/Crypto/Baseband device to VFIO module"
 	FUNC[8]="bind_devices_to_vfio"
 
 	TEXT[9]="Setup VFIO permissions"
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-14  0:07   ` Chautru, Nicolas
  2019-05-14  0:07     ` Chautru, Nicolas
@ 2019-05-14 20:44     ` Thomas Monjalon
  2019-05-14 20:44       ` Thomas Monjalon
  1 sibling, 1 reply; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-14 20:44 UTC (permalink / raw)
  To: Chautru, Nicolas; +Cc: dev, Luca Boccassi, Scheidecker, Nicolas

Hi,

14/05/2019 02:07, Chautru, Nicolas:
> Hi Luca, 
> 
> Is that fair to consider  support meson build in a separate patchset once this one is applied? 

No, any new code must support meson now.

> 	- Currently even on 19.05 there is no meson build support for the existing baseband driver ("turbo_sw"). 

Yes this driver is a problem.
It is still waiting for a freely downloadable dependency,
or pending for complete removal.
I don't want to consider any new bbdev code until this issue is solved.

> 	- I believe that meson build is still experimental. Default build framework still meant to be make. 

No, it is changing. Meson is going to be the default.


PS: please do not top-post.


> From: Luca Boccassi [mailto:bluca@debian.org] 
> Please add support for building this with Meson. Thanks!

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-14 20:44     ` Thomas Monjalon
@ 2019-05-14 20:44       ` Thomas Monjalon
  0 siblings, 0 replies; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-14 20:44 UTC (permalink / raw)
  To: Chautru, Nicolas; +Cc: dev, Luca Boccassi, Scheidecker, Nicolas

Hi,

14/05/2019 02:07, Chautru, Nicolas:
> Hi Luca, 
> 
> Is that fair to consider  support meson build in a separate patchset once this one is applied? 

No, any new code must support meson now.

> 	- Currently even on 19.05 there is no meson build support for the existing baseband driver ("turbo_sw"). 

Yes this driver is a problem.
It is still waiting for a freely downloadable dependency,
or pending for complete removal.
I don't want to consider any new bbdev code until this issue is solved.

> 	- I believe that meson build is still experimental. Default build framework still meant to be make. 

No, it is changing. Meson is going to be the default.


PS: please do not top-post.


> From: Luca Boccassi [mailto:bluca@debian.org] 
> Please add support for building this with Meson. Thanks!




^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
                     ` (5 preceding siblings ...)
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 5/5] usertools: update to usertool for baseband device Nicolas Chautru
@ 2019-05-14 20:54   ` Thomas Monjalon
  2019-05-14 20:54     ` Thomas Monjalon
  6 siblings, 1 reply; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-14 20:54 UTC (permalink / raw)
  To: Nicolas Chautru; +Cc: dev

14/05/2019 21:45, Nicolas Chautru:
> This was deferred from 19.05 due to time running out.

No it is deferred because I am against new bbdev code in DPDK.
We cannot compile the first PMD "turbo_sw", so it might be removed.

> Addition of a PMD for 4G FEC encoding and decoding functions for Intel PAC N300 FPGA. 
> Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
> The HW dependency is available now.

Where is the software dependency?

>  create mode 100644 app/test-bbdev/ldpc_dec_default.data
>  create mode 100644 app/test-bbdev/ldpc_enc_default.data
>  mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data

We cannot merge so much big data files.
I cannot even open the patch because it is too big.
You should had a hint when you received automatic replies because
the patch number 4 is too big, isn't it?

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08
  2019-05-14 20:54   ` [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08 Thomas Monjalon
@ 2019-05-14 20:54     ` Thomas Monjalon
  0 siblings, 0 replies; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-14 20:54 UTC (permalink / raw)
  To: Nicolas Chautru; +Cc: dev

14/05/2019 21:45, Nicolas Chautru:
> This was deferred from 19.05 due to time running out.

No it is deferred because I am against new bbdev code in DPDK.
We cannot compile the first PMD "turbo_sw", so it might be removed.

> Addition of a PMD for 4G FEC encoding and decoding functions for Intel PAC N300 FPGA. 
> Extension of PMD based on Intel optimised SW libraries for 5G FEC. 
> The HW dependency is available now.

Where is the software dependency?

>  create mode 100644 app/test-bbdev/ldpc_dec_default.data
>  create mode 100644 app/test-bbdev/ldpc_enc_default.data
>  mode change 100755 => 100644 app/test-bbdev/test-bbdev.py
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_3.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v14298.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568_low.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_vcrc_fail.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k1144_r0_e1380_rm_crc24b.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k330_r0_e360_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e832_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k720_r0_e864_rm_crc24b.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_c1_k8148_r0_e9372_rm.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v3964_rv1.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568_crc24a.data
>  create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k160_r0_e23040_teq_posllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k3136_r0_e4914_sbd_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e12248_crc24b_sbd_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c1_k6144_r0_e34560_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c2_k3136_r0_e4920_sbd_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_dec_c6_k5888_r3_e6912_sbd_teq_negllr_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c1_k456_r0_e1380_scatter.data
>  create mode 100644 app/test-bbdev/test_vectors/turbo_enc_c3_k4352_r0_e13068_crc24b_scatter.data

We cannot merge so much big data files.
I cannot even open the patch because it is too big.
You should had a hint when you received automatic replies because
the patch number 4 is too big, isn't it?



^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
@ 2019-05-15  8:28     ` Thomas Monjalon
  2019-05-15  8:28       ` Thomas Monjalon
  2019-05-20 13:44       ` Ferruh Yigit
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2 siblings, 2 replies; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-15  8:28 UTC (permalink / raw)
  To: Nicolas Chautru; +Cc: dev

14/05/2019 21:45, Nicolas Chautru:
> +Installation
> +--------------
> +
> +Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
> +default set of bbdev compile flags may be found in config/common_base, where for example
> +the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
> +set. It is assumed DPDK has been compiled for an icc 64-bit target using:
> +
> +.. code-block:: console
> +
> +  make install T=x86_64-native-linuxapp-icc

I already said (2 months ago) that requiring icc is not acceptable,
but I got no reply:
	http://mails.dpdk.org/archives/dev/2019-March/126161.html

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA
  2019-05-15  8:28     ` Thomas Monjalon
@ 2019-05-15  8:28       ` Thomas Monjalon
  2019-05-20 13:44       ` Ferruh Yigit
  1 sibling, 0 replies; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-15  8:28 UTC (permalink / raw)
  To: Nicolas Chautru; +Cc: dev

14/05/2019 21:45, Nicolas Chautru:
> +Installation
> +--------------
> +
> +Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
> +default set of bbdev compile flags may be found in config/common_base, where for example
> +the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
> +set. It is assumed DPDK has been compiled for an icc 64-bit target using:
> +
> +.. code-block:: console
> +
> +  make install T=x86_64-native-linuxapp-icc

I already said (2 months ago) that requiring icc is not acceptable,
but I got no reply:
	http://mails.dpdk.org/archives/dev/2019-March/126161.html




^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA
  2019-05-15  8:28     ` Thomas Monjalon
  2019-05-15  8:28       ` Thomas Monjalon
@ 2019-05-20 13:44       ` Ferruh Yigit
  2019-05-20 13:48         ` Thomas Monjalon
  1 sibling, 1 reply; 95+ messages in thread
From: Ferruh Yigit @ 2019-05-20 13:44 UTC (permalink / raw)
  To: Thomas Monjalon, Nicolas Chautru; +Cc: dev

On 5/15/2019 9:28 AM, Thomas Monjalon wrote:
> 14/05/2019 21:45, Nicolas Chautru:
>> +Installation
>> +--------------
>> +
>> +Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
>> +default set of bbdev compile flags may be found in config/common_base, where for example
>> +the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
>> +set. It is assumed DPDK has been compiled for an icc 64-bit target using:
>> +
>> +.. code-block:: console
>> +
>> +  make install T=x86_64-native-linuxapp-icc
> 
> I already said (2 months ago) that requiring icc is not acceptable,
> but I got no reply:
> 	http://mails.dpdk.org/archives/dev/2019-March/126161.html
> 

This PMD doesn't have any dependency to ICC, gcc or clang is as good as any.

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA
  2019-05-20 13:44       ` Ferruh Yigit
@ 2019-05-20 13:48         ` Thomas Monjalon
  0 siblings, 0 replies; 95+ messages in thread
From: Thomas Monjalon @ 2019-05-20 13:48 UTC (permalink / raw)
  To: Ferruh Yigit, Nicolas Chautru; +Cc: dev

20/05/2019 15:44, Ferruh Yigit:
> On 5/15/2019 9:28 AM, Thomas Monjalon wrote:
> > 14/05/2019 21:45, Nicolas Chautru:
> >> +Installation
> >> +--------------
> >> +
> >> +Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
> >> +default set of bbdev compile flags may be found in config/common_base, where for example
> >> +the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
> >> +set. It is assumed DPDK has been compiled for an icc 64-bit target using:
> >> +
> >> +.. code-block:: console
> >> +
> >> +  make install T=x86_64-native-linuxapp-icc
> > 
> > I already said (2 months ago) that requiring icc is not acceptable,
> > but I got no reply:
> > 	http://mails.dpdk.org/archives/dev/2019-March/126161.html
> > 
> 
> This PMD doesn't have any dependency to ICC, gcc or clang is as good as any.

Good news, so please don't use icc in your example.
And you should remove
	"It is assumed DPDK has been compiled for an icc 64-bit target"



^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC
  2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA Nicolas Chautru
  2019-05-14 19:45     ` Nicolas Chautru
  2019-05-15  8:28     ` Thomas Monjalon
@ 2019-06-21 16:59     ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
                         ` (9 more replies)
  2 siblings, 10 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

This set is v3 of the serie shared weeks few ago covering BBDEV related new features for 19.08 https://patches.dpdk.org/project/dpdk/list/?series=4657&state=*

Since that, it was suggested with maintainer to have part of that contribution shared as 2 standalone series. They are pending being applied here :
https://patches.dpdk.org/project/dpdk/list/?series=5017
https://patches.dpdk.org/project/dpdk/list/?series=5093

The remaining of that contribution is now being shared on this new serie. 
Since this new serie rely on the 2 series above to apply the patch, I kept this dependency formally as the first 2 squashed commits (1/10 and 2/10) so that not to break CI, but really only the last 8 commits of this serie are specifically requiring review and to be applied on top of the 2 series as flagged to Akhil. 

This set enables specifically bbdev to support 5GNR operations (previously only LTE specific) and to add the related support to turbo_sw PMD driver, test framework and documentation. 

Nicolas Chautru (10):
  baseband/turbo_sw: baseband/turbo_sw: dependency patch
  baseband/fpga_lte_fec: dependency patch
  bbdev: renaming non-generic LTE specific structure
  bbdev: extension of BBDEV API for 5G FEC
  docs/guides: updating bbdev API for 5GNR operations
  baseband/turbo_sw: extension of turbosw PMD for 5G
  docs/guides: updating building steps for BBDEV PMD
  test-bbdev: update of bbdev test-app for 5GNR
  test-bbdev: test vectors for 5GNR verification
  doc: announce bbdev changes

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    3 +
 app/test-bbdev/test-bbdev.py                       |    7 +
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1233 ++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  521 +++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 +++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 ++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    9 +-
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |  105 +-
 doc/guides/prog_guide/bbdev.rst                    |  505 +++-
 doc/guides/rel_notes/release_19_08.rst             |   15 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2675 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 drivers/baseband/fpga_lte_fec/meson.build          |    7 +
 .../rte_pmd_bbdev_fpga_lte_fec_version.map         |    3 +
 drivers/baseband/meson.build                       |    2 +-
 drivers/baseband/turbo_sw/Makefile                 |   28 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  765 +++++-
 drivers/baseband/turbo_sw/meson.build              |   40 +
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  135 +-
 lib/librte_bbdev/rte_bbdev_op.h                    |  585 ++++-
 meson_options.txt                                  |    2 +
 mk/rte.app.mk                                      |   12 +-
 47 files changed, 12376 insertions(+), 386 deletions(-)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/meson.build
 create mode 100644 drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map
 create mode 100644 drivers/baseband/turbo_sw/meson.build

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
                         ` (8 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Not meant for review, purely for dependency for CI.
This is a squash of the related serie which
is not applied yet:
option to build turbosw PMD without SDK
https://patches.dpdk.org/project/dpdk/list/?series=5093

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                               |  3 +-
 doc/guides/bbdevs/turbo_sw.rst                   | 81 +++++++++++++-----------
 drivers/baseband/meson.build                     |  2 +-
 drivers/baseband/turbo_sw/Makefile               | 13 ++--
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 51 ++++++++++++++-
 drivers/baseband/turbo_sw/meson.build            | 30 +++++++++
 meson_options.txt                                |  2 +
 mk/rte.app.mk                                    |  3 +
 8 files changed, 138 insertions(+), 47 deletions(-)
 create mode 100644 drivers/baseband/turbo_sw/meson.build

diff --git a/config/common_base b/config/common_base
index e406e78..21ab606 100644
--- a/config/common_base
+++ b/config/common_base
@@ -528,6 +528,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 CONFIG_RTE_LIBRTE_BBDEV=y
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
+CONFIG_RTE_BBDEV_SDK_AVX2=n
 
 #
 # Compile PMD for NULL bbdev device
@@ -537,7 +538,7 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 #
 # Compile PMD for turbo software bbdev device
 #
-CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
+CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y
 
 #
 # Compile generic crypto device library
diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 29f7ec9..455fa1d 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -4,23 +4,39 @@
 SW Turbo Poll Mode Driver
 =========================
 
-The SW Turbo PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
-Intel optimized libraries for LTE Layer 1 workloads acceleration. This PMD
-supports the functions: Turbo FEC, Rate Matching and CRC functions.
+The SW Turbo PMD (**baseband_turbo_sw**) provides a software only poll mode bbdev
+driver that can optionally utilize Intel optimized libraries for LTE Layer 1
+workloads acceleration.
+
+Note that the driver can also be built without any dependency with reduced
+functionality for maintenance purpose.
+
+To enable linking to the SDK libraries see detailed installation section below.
+One flag can be enabled depending on whether the target machine can support
+AVX2 instructions sets and the related SDK libraries for vectorized
+signal processing functions are installed :
+- CONFIG_RTE_BBDEV_SDK_AVX2
+
+By default this flag is disabled. For AVX2 machine and SDK
+library installed then this flag can be enabled.
+
+This PMD supports the functions: FEC, Rate Matching and CRC functions detailed
+in the Features section.
 
 Features
 --------
 
-SW Turbo PMD has support for the following capabilities:
+SW Turbo PMD can support for the following capabilities when the SDK libraries
+are used:
 
-For the encode operation:
+For the LTE encode operation:
 
 * ``RTE_BBDEV_TURBO_CRC_24A_ATTACH``
 * ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 * ``RTE_BBDEV_TURBO_RATE_MATCH``
 * ``RTE_BBDEV_TURBO_RV_INDEX_BYPASS``
 
-For the decode operation:
+For the LTE decode operation:
 
 * ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE``
 * ``RTE_BBDEV_TURBO_CRC_TYPE_24B``
@@ -41,14 +57,10 @@ Installation
 FlexRAN SDK Download
 ~~~~~~~~~~~~~~~~~~~~
 
-To build DPDK with the *baseband_turbo_sw* PMD the user is required to download
-the export controlled ``FlexRAN SDK`` Libraries. An account at `Intel Resource
-Design Center <https://www.intel.com/content/www/us/en/design/resource-design-center.html>`_
-needs to be registered.
+As an option it is possible to link this driver with FleXRAN SDK libraries
+which can enable real time signal processing using AVX instructions.
 
-Once registered, the user needs to log in, and look for
-*Intel FlexRAN Software Release Package -18-09* to download or directly through
-this `link <https://cdrdv2.intel.com/v1/dl/getContent/605167>`_.
+These libraries are available through this link `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
 
 After download is complete, the user needs to unpack and compile on their
 system before building DPDK.
@@ -57,24 +69,24 @@ The following table maps DPDK versions with past FlexRAN SDK releases:
 
 .. _table_flexran_releases:
 
-.. table:: DPDK and FlexRAN SDK releases compliance
+.. table:: DPDK and FlexRAN FEC SDK releases compliance
 
    =====================  ============================
-   DPDK version           FlexRAN SDK release
+   DPDK version           FlexRAN FEC SDK release
    =====================  ============================
-   18.02                  1.3.0
-   18.05                  1.4.0
-   18.08                  1.6.0
-   19.02                  18.09
+   19.08                  19.04
    =====================  ============================
 
 FlexRAN SDK Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
+Note that the installation of these libraries is optional.
+
 The following are pre-requisites for building FlexRAN SDK Libraries:
- (a) An AVX2 supporting machine
- (b) CentOS Linux release 7.2.1511 (Core) operating system
- (c) Intel ICC 18.0.1 20171018 compiler installed
+ (a) An AVX2 or AVX512 supporting machine
+ (b) CentOS Linux release 7.2.1511 (Core) operating system is advised
+ (c) Intel ICC 18.0.1 20171018 compiler or more recent and related libraries
+     ICC is available with a free community license `link <https://software.intel.com/en-us/system-studio/choose-download#technical>`_.
 
 The following instructions should be followed in this exact order:
 
@@ -84,25 +96,18 @@ The following instructions should be followed in this exact order:
 
         source <path-to-icc-compiler-install-folder>/linux/bin/compilervars.sh intel64 -platform linux
 
-#. Extract the ``605167-flexran-18-09-tar.gz`` package:
-
-    .. code-block:: console
-
-        mkdir FlexRAN-18.09
-        tar xvzf 605167-flexran-18-09-tar.gz -C FlexRAN-18.09/
-
 #. Run the SDK extractor script and accept the license:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/
-        ./SDK-18.09.sh
+        cd <path-to-workspace>
+        ./FlexRAN-FEC-SDK-19-04.sh
 
 #. Generate makefiles based on system configuration:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
+        cd <path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/
         ./create-makefiles-linux.sh
 
 #. A build folder is generated in this form ``build-<ISA>-<CC>``, enter that
@@ -129,12 +134,14 @@ Example:
 
 .. code-block:: console
 
-    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/build-avx2-icc/install
-    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
-
+    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/install
+    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/
 
-* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` in DPDK common configuration
-  file ``config/common_base``.
+* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y``
+  in DPDK common configuration file ``config/common_base`` to be able to use
+  the SDK libraries as mentioned above.
+  If no flag are set the PMD driver will still build but its capabilities
+  will be limited accordingly.
 
 To use the PMD in an application, user must:
 
diff --git a/drivers/baseband/meson.build b/drivers/baseband/meson.build
index 52489df..40a87d2 100644
--- a/drivers/baseband/meson.build
+++ b/drivers/baseband/meson.build
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
 
-drivers = ['null']
+drivers = ['null', 'turbo_sw']
 
 config_flag_fmt = 'RTE_LIBRTE_@0@_PMD'
 driver_name_fmt = 'rte_pmd_@0@'
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index d364677..414d0d9 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -3,9 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-ifeq ($(FLEXRAN_SDK),)
-$(error "Please define FLEXRAN_SDK environment variable")
-endif
 
 # library name
 LIB = librte_pmd_bbdev_turbo_sw.a
@@ -21,17 +18,21 @@ LDLIBS += -lrte_bus_vdev
 # versioning export map
 EXPORT_MAP := rte_pmd_bbdev_turbo_sw_version.map
 
-# external library dependencies
+# external library dependencies if available
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),y)
+ifeq ($(FLEXRAN_SDK),)
+$(error "Please define FLEXRAN_SDK environment variable")
+endif
 CFLAGS += -I$(FLEXRAN_SDK)/lib_common
 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
-
 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
-LDLIBS += -lstdc++ -lirc -limf -lipps
+LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
+endif
 
 # library version
 LIBABIVER := 1
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5204a77..94aa536 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,10 +14,11 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#ifdef RTE_BBDEV_SDK_AVX2
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
-#include <divide.h>
+#endif
 
 #define DRIVER_NAME baseband_turbo_sw
 
@@ -83,6 +84,7 @@ struct turbo_sw_queue {
 	enum rte_bbdev_op_type type;
 } __rte_cache_aligned;
 
+#ifdef RTE_BBDEV_SDK_AVX2
 static inline char *
 mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
 {
@@ -128,6 +130,7 @@ struct turbo_sw_queue {
 
 	return result;
 }
+#endif
 
 /* Read flag value 0/1 from bitmap */
 static inline bool
@@ -143,6 +146,7 @@ struct turbo_sw_queue {
 	struct bbdev_private *internals = dev->data->dev_private;
 
 	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+#ifdef RTE_BBDEV_SDK_AVX2
 		{
 			.type = RTE_BBDEV_OP_TURBO_DEC,
 			.cap.turbo_dec = {
@@ -172,6 +176,7 @@ struct turbo_sw_queue {
 				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
 			}
 		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
@@ -179,7 +184,12 @@ struct turbo_sw_queue {
 		.queue_size = RTE_BBDEV_QUEUE_SIZE_LIMIT,
 	};
 
+#ifdef RTE_BBDEV_SDK_AVX2
 	static const enum rte_cpu_flag_t cpu_flag = RTE_CPUFLAG_SSE4_2;
+	dev_info->cpu_flag_reqs = &cpu_flag;
+#else
+	dev_info->cpu_flag_reqs = NULL;
+#endif
 
 	default_queue_conf.socket = dev->data->socket_id;
 
@@ -191,7 +201,6 @@ struct turbo_sw_queue {
 	dev_info->max_ul_queue_priority = 0;
 	dev_info->default_queue_conf = default_queue_conf;
 	dev_info->capabilities = bbdev_capabilities;
-	dev_info->cpu_flag_reqs = &cpu_flag;
 	dev_info->min_alignment = 64;
 
 	rte_bbdev_log_debug("got device info from %u\n", dev->data->dev_id);
@@ -410,6 +419,7 @@ struct turbo_sw_queue {
 	.queue_release = q_release
 };
 
+#ifdef RTE_BBDEV_SDK_AVX2
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -464,6 +474,7 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
@@ -472,6 +483,7 @@ struct turbo_sw_queue {
 		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_BBDEV_SDK_AVX2
 	int ret;
 	int16_t k_idx;
 	uint16_t m;
@@ -724,6 +736,22 @@ struct turbo_sw_queue {
 		}
 		*tmp_out = 0;
 	}
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(r);
+	RTE_SET_USED(c);
+	RTE_SET_USED(k);
+	RTE_SET_USED(ncb);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
 }
 
 static inline void
@@ -835,6 +863,7 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+#ifdef RTE_BBDEV_SDK_AVX2
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
 		uint16_t ncb)
@@ -847,6 +876,7 @@ struct turbo_sw_queue {
 	rte_memcpy(&out[nd + kpi + 64], &in[kpi], d);
 	rte_memcpy(&out[(nd - 1) + 2 * (kpi + 64)], &in[2 * kpi], d);
 }
+#endif
 
 static inline void
 process_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
@@ -856,6 +886,7 @@ struct turbo_sw_queue {
 		uint16_t crc24_overlap, uint16_t in_length,
 		struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_BBDEV_SDK_AVX2
 	int ret;
 	int32_t k_idx;
 	int32_t iter_cnt;
@@ -972,6 +1003,22 @@ struct turbo_sw_queue {
 		rte_bbdev_log(ERR, "Turbo Decoder failed");
 		return;
 	}
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(k);
+	RTE_SET_USED(kw);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
 }
 
 static inline void
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
new file mode 100644
index 0000000..438b5a7
--- /dev/null
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -0,0 +1,30 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+path = get_option('flexran_sdk')
+
+if dpdk_conf.has('RTE_BBDEV_SDK_AVX2')
+	lib = cc.find_library('libturbo', dirs: [path + '/lib_turbo'], required: false)
+	if not lib.found()
+		build = false
+	else
+		ext_deps += cc.find_library('libturbo', dirs: [path + '/lib_turbo'], required: true)
+		ext_deps += cc.find_library('libcrc', dirs: [path + '/lib_crc'], required: true)
+		ext_deps += cc.find_library('librate_matching', dirs: [path + '/lib_rate_matching'], required: true)
+		ext_deps += cc.find_library('libcommon', dirs: [path + '/lib_common'], required: true)
+		ext_deps += cc.find_library('libstdc++', required: true)
+		ext_deps += cc.find_library('libirc', required: true)
+		ext_deps += cc.find_library('libimf', required: true)
+		ext_deps += cc.find_library('libipps', required: true)
+		ext_deps += cc.find_library('libsvml', required: true)
+		includes += include_directories(path + '/lib_turbo')
+		includes += include_directories(path + '/lib_crc')
+		includes += include_directories(path + '/lib_rate_matching')
+		includes += include_directories(path + '/lib_common')
+	endif
+endif
+
+deps += ['bbdev', 'bus_vdev', 'ring']
+name = 'bbdev_turbo_sw'
+allow_experimental_apis = true
+sources = files('bbdev_turbo_software.c')
diff --git a/meson_options.txt b/meson_options.txt
index 16d9f92..92d3e97 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -10,6 +10,8 @@ option('enable_kmods', type: 'boolean', value: true,
 	description: 'build kernel modules')
 option('examples', type: 'string', value: '',
 	description: 'Comma-separated list of examples to build by default')
+option('flexran_sdk', type: 'string', value: '',
+	description: 'Path to FlexRAN SDK optional Libraries for BBDEV device')
 option('ibverbs_link', type: 'combo', choices : ['shared', 'dlopen'], value: 'shared',
 	description: 'Linkage method (shared/dlopen) for Mellanox PMDs with ibverbs dependencies.')
 option('include_subdir_arch', type: 'string', value: '',
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index d0df0b0..2c3d07a 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -219,11 +219,14 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),y)
+# Dependency on the FLEXRAN SDK library if available
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+endif # CONFIG_RTE_BBDEV_SDK_AVX2
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 02/10] baseband/fpga_lte_fec: dependency patch
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
                         ` (7 subsequent siblings)
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Not meant for review, purely for dependency for CI.
This is a squash of the related serie which
is not applied yet:
adding driver for FEC on FPGA
https://patches.dpdk.org/project/dpdk/list/?series=5017

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                                 |    5 +
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2674 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 drivers/baseband/fpga_lte_fec/meson.build          |    7 +
 .../rte_pmd_bbdev_fpga_lte_fec_version.map         |    3 +
 drivers/baseband/meson.build                       |    2 +-
 mk/rte.app.mk                                      |    1 +
 11 files changed, 3114 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/meson.build
 create mode 100644 drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map

diff --git a/config/common_base b/config/common_base
index 21ab606..cc13025 100644
--- a/config/common_base
+++ b/config/common_base
@@ -526,6 +526,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 # EXPERIMENTAL: API may change without prior notice
 #
 CONFIG_RTE_LIBRTE_BBDEV=y
+CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 CONFIG_RTE_BBDEV_SDK_AVX2=n
@@ -540,6 +541,10 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 #
 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y
 
+# Compile PMD for Intel FPGA LTE FEC bbdev device
+#
+CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC=y
+
 #
 # Compile generic crypto device library
 #
diff --git a/doc/guides/bbdevs/fpga_lte_fec.rst b/doc/guides/bbdevs/fpga_lte_fec.rst
new file mode 100644
index 0000000..71b058c
--- /dev/null
+++ b/doc/guides/bbdevs/fpga_lte_fec.rst
@@ -0,0 +1,318 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation
+
+Intel(R) FPGA LTE FEC Poll Mode Driver
+======================================
+
+The BBDEV FPGA LTE FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
+Turbo Encode / Decode LTE wireless acceleration function, using Intel's PCI-e and FPGA
+based Vista Creek device.
+
+Features
+--------
+
+FPGA LTE FEC PMD supports the following features:
+
+- Turbo Encode in the DL with total throughput of 4.5 Gbits/s
+- Turbo Decode in the UL with total throughput of 1.5 Gbits/s assuming 8 decoder iterations
+- 8 VFs per PF (physical device)
+- Maximum of 32 UL queues per VF
+- Maximum of 32 DL queues per VF
+- PCIe Gen-3 x8 Interface
+- MSI-X
+- SR-IOV
+
+
+FPGA LTE FEC PMD supports the following BBDEV capabilities:
+
+* For the turbo encode operation:
+   - ``RTE_BBDEV_TURBO_CRC_24B_ATTACH`` :  set to attach CRC24B to CB(s)
+   - ``RTE_BBDEV_TURBO_RATE_MATCH`` :  if set then do not do Rate Match bypass
+   - ``RTE_BBDEV_TURBO_ENC_INTERRUPTS`` :  set for encoder dequeue interrupts
+
+
+* For the turbo decode operation:
+   - ``RTE_BBDEV_TURBO_CRC_TYPE_24B`` :  check CRC24B from CB(s)
+   - ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE`` :  perform subblock de-interleave
+   - ``RTE_BBDEV_TURBO_DEC_INTERRUPTS`` :  set for decoder dequeue interrupts
+   - ``RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN`` :  set if negative LLR encoder i/p is supported
+   - ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP`` :  keep CRC24B bits appended while decoding
+
+
+Limitations
+-----------
+
+FPGA LTE FEC does not support the following:
+
+- Scatter-Gather function
+
+
+Installation
+--------------
+
+Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
+default set of bbdev compile flags may be found in config/common_base, where for example
+the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
+set. It is assumed DPDK has been compiled using for instance:
+
+.. code-block:: console
+
+  make install T=x86_64-native-linuxapp-gcc
+
+
+DPDK requires hugepages to be configured as detailed in section 2 of the DPDK manual.
+The bbdev test application has been tested with a configuration 40 x 1GB hugepages. The
+hugepage configuration of a server may be examined using:
+
+.. code-block:: console
+
+   grep Huge* /proc/meminfo
+
+
+Initialization
+--------------
+
+When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
+
+.. code-block:: console
+
+  sudo lspci -vd1172:5052
+
+The physical and virtual functions are compatible with Linux UIO drivers:
+``vfio`` and ``igb_uio``. However, in order to work the FPGA LTE FEC device firstly needs
+to be bound to one of these linux drivers through DPDK.
+
+
+Bind PF UIO driver(s)
+~~~~~~~~~~~~~~~~~~~~~
+
+Install the DPDK igb_uio driver, bind it with the PF PCI device ID and use
+``lspci`` to confirm the PF device is under use by ``igb_uio`` DPDK UIO driver.
+
+The igb_uio driver may be bound to the PF PCI device using one of three methods:
+
+
+1. PCI functions (physical or virtual, depending on the use case) can be bound to
+the UIO driver by repeating this command for every function.
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  insmod ./build/kmod/igb_uio.ko
+  echo "1172 5052" > /sys/bus/pci/drivers/igb_uio/new_id
+  lspci -vd1172:
+
+
+2. Another way to bind PF with DPDK UIO driver is by using the ``dpdk-devbind.py`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-devbind.py -b igb_uio 0000:06:00.0
+
+where the PCI device ID (example: 0000:06:00.0) is obtained using lspci -vd1172:
+
+
+3. A third way to bind is to use ``dpdk-setup.sh`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-setup.sh
+
+  select 'Bind Ethernet/Crypto/Baseband device to IGB UIO module'
+  or
+  select 'Bind Ethernet/Crypto/Baseband device to VFIO module' depending on driver required
+  enter PCI device ID
+  select 'Display current Ethernet/Crypto/Baseband device settings' to confirm binding
+
+
+In the same way the FPGA LTE FEC PF can be bound with vfio, but vfio driver does not
+support SR-IOV configuration right out of the box, so it will need to be patched.
+
+
+Enable Virtual Functions
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+Now, it should be visible in the printouts that PCI PF is under igb_uio control
+"``Kernel driver in use: igb_uio``"
+
+To show the number of available VFs on the device, read ``sriov_totalvfs`` file..
+
+.. code-block:: console
+
+  cat /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_totalvfs
+
+  where 0000\:<b>\:<d>.<f> is the PCI device ID
+
+
+To enable VFs via igb_uio, echo the number of virtual functions intended to
+enable to ``max_vfs`` file..
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/max_vfs
+
+
+Afterwards, all VFs must be bound to appropriate UIO drivers as required, same
+way it was done with the physical function previously.
+
+Enabling SR-IOV via vfio driver is pretty much the same, except that the file
+name is different:
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_numvfs
+
+
+Configure the VFs through PF
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The PCI virtual functions must be configured before working or getting assigned
+to VMs/Containers. The configuration involves allocating the number of hardware
+queues, priorities, load balance, bandwidth and other settings necessary for the
+device to perform FEC functions.
+
+This configuration needs to be executed at least once after reboot or PCI FLR and can
+be achieved by using the function ``fpga_lte_fec_configure()``, which sets up the
+parameters defined in ``fpga_lte_fec_conf`` structure:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf {
+      bool pf_mode_en;
+      uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t ul_bandwidth;
+      uint8_t dl_bandwidth;
+      uint8_t ul_load_balance;
+      uint8_t dl_load_balance;
+      uint16_t flr_time_out;
+  };
+
+- ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
+  VFs are mutually exclusive and cannot run simultaneously.
+  Set to 1 for PF mode enabled.
+  If PF mode is enabled all queues available in the device are assigned
+  exclusively to PF and 0 queues given to VFs.
+
+- ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
+
+- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
+  allocates different bandwidth to UL and DL. The weight is configured by this
+  setting. The unit of weight is 3 code blocks. For example, if the code block
+  cbps (code block per second) ratio between UL and DL is 12:1, then the
+  configuration value should be set to 36:3. The schedule algorithm is based
+  on code block regardless the length of each block.
+
+- ``*l_load_balance``: hardware queues are load-balanced in a round-robin
+  fashion. Queues get filled first-in first-out until they reach a pre-defined
+  watermark level, if exceeded, they won't get assigned new code blocks..
+  This watermark is defined by this setting.
+
+  If all hardware queues exceeds the watermark, no code blocks will be
+  streamed in from UL/DL code block FIFO.
+
+- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
+  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
+  the FLR time out then set this setting to 0x262=610.
+
+
+An example configuration code calling the function ``fpga_lte_fec_configure()`` is shown
+below:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf conf;
+  unsigned int i;
+
+  memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+  conf.pf_mode_en = 1;
+
+  for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+      conf.vf_ul_queues_number[i] = 4;
+      conf.vf_dl_queues_number[i] = 4;
+  }
+  conf.ul_bandwidth = 12;
+  conf.dl_bandwidth = 5;
+  conf.dl_load_balance = 64;
+  conf.ul_load_balance = 64;
+
+  /* setup FPGA PF */
+  ret = fpga_lte_fec_configure(info->dev_name, &conf);
+  TEST_ASSERT_SUCCESS(ret,
+      "Failed to configure 4G FPGA PF for bbdev %s",
+      info->dev_name);
+
+
+Test Application
+----------------
+
+BBDEV provides a test application, ``test-bbdev.py`` and range of test data for testing
+the functionality of FPGA LTE FEC turbo encode and turbo decode, depending on the device's
+capabilities. The test application is located under app->test-bbdev folder and has the
+following options:
+
+.. code-block:: console
+
+  "-p", "--testapp-path": specifies path to the bbdev test app.
+  "-e", "--eal-params"	: EAL arguments which are passed to the test app.
+  "-t", "--timeout"	: Timeout in seconds (default=300).
+  "-c", "--test-cases"	: Defines test cases to run. Run all if not specified.
+  "-v", "--test-vector"	: Test vector path (default=dpdk_path+/app/test-bbdev/test_vectors/bbdev_null.data).
+  "-n", "--num-ops"	: Number of operations to process on device (default=32).
+  "-b", "--burst-size"	: Operations enqueue/dequeue burst size (default=32).
+  "-l", "--num-lcores"	: Number of lcores to run (default=16).
+  "-i", "--init-device" : Initialise PF device with default values.
+
+
+To execute the test application tool using simple turbo decode or turbo encode data,
+type one of the following:
+
+.. code-block:: console
+
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_dec_default.data
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_enc_default.data
+
+
+The test application ``test-bbdev.py``, supports the ability to configure the PF device with
+a default set of values, if the "-i" or "- -init-device" option is included. The default values
+are defined in test_bbdev_perf.c as:
+
+- VF_UL_QUEUE_VALUE 4
+- VF_DL_QUEUE_VALUE 4
+- UL_BANDWIDTH 3
+- DL_BANDWIDTH 3
+- UL_LOAD_BALANCE 128
+- DL_LOAD_BALANCE 128
+- FLR_TIMEOUT 610
+
+
+Test Vectors
+~~~~~~~~~~~~
+
+In addition to the simple turbo decoder and turbo encoder tests, bbdev also provides
+a range of additional tests under the test_vectors folder, which may be useful. The results
+of these tests will depend on the FPGA LTE FEC capabilities:
+
+* turbo decoder tests:
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
+
+
+* turbo encoder tests:
+   - ``turbo_enc_c1_k40_r0_e1190_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1194_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1196_rm.data``
+   - ``turbo_enc_c1_k40_r0_e272_rm.data``
+   - ``turbo_enc_c1_k6144_r0_e18444.data``
+   - ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+   - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
+   - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
+   - ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
+
diff --git a/doc/guides/bbdevs/index.rst b/doc/guides/bbdevs/index.rst
index 93276ed..005b95e 100644
--- a/doc/guides/bbdevs/index.rst
+++ b/doc/guides/bbdevs/index.rst
@@ -10,3 +10,4 @@ Baseband Device Drivers
 
     null
     turbo_sw
+    fpga_lte_fec
diff --git a/drivers/baseband/Makefile b/drivers/baseband/Makefile
index 4ec83b0..ceffc7d 100644
--- a/drivers/baseband/Makefile
+++ b/drivers/baseband/Makefile
@@ -10,5 +10,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL) += null
 DEPDIRS-null = $(core-libs)
 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += turbo_sw
 DEPDIRS-turbo_sw = $(core-libs)
+DIRS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec
+DEPDIRS-fpga_lte_fec = $(core-libs)
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/baseband/fpga_lte_fec/Makefile b/drivers/baseband/fpga_lte_fec/Makefile
new file mode 100644
index 0000000..a38a396
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/Makefile
@@ -0,0 +1,29 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_pmd_fpga_lte_fec.a
+
+# build flags
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_bbdev
+LDLIBS += -lrte_pci -lrte_bus_pci
+
+# versioning export map
+EXPORT_MAP := rte_pmd_bbdev_fpga_lte_fec_version.map
+
+# library version
+LIBABIVER := 1
+
+# library source files
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec.c
+
+# export include files
+SYMLINK-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC)-include += fpga_lte_fec.h
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
new file mode 100644
index 0000000..19e7689
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -0,0 +1,2674 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2019 Intel Corporation
+ */
+
+#include <unistd.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_dev.h>
+#include <rte_malloc.h>
+#include <rte_mempool.h>
+#include <rte_errno.h>
+#include <rte_pci.h>
+#include <rte_bus_pci.h>
+#include <rte_byteorder.h>
+#ifdef RTE_BBDEV_OFFLOAD_COST
+#include <rte_cycles.h>
+#endif
+
+#include <rte_bbdev.h>
+#include <rte_bbdev_pmd.h>
+
+#include "fpga_lte_fec.h"
+
+/* Turbo SW PMD logging ID */
+static int fpga_lte_fec_logtype;
+
+/* Helper macro for logging */
+#define rte_bbdev_log(level, fmt, ...) \
+	rte_log(RTE_LOG_ ## level, fpga_lte_fec_logtype, fmt "\n", \
+		##__VA_ARGS__)
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+#define rte_bbdev_log_debug(fmt, ...) \
+		rte_bbdev_log(DEBUG, "fpga_lte_fec: " fmt, \
+		##__VA_ARGS__)
+#else
+#define rte_bbdev_log_debug(fmt, ...)
+#endif
+
+/* FPGA LTE FEC driver names */
+#define FPGA_LTE_FEC_PF_DRIVER_NAME intel_fpga_lte_fec_pf
+#define FPGA_LTE_FEC_VF_DRIVER_NAME intel_fpga_lte_fec_vf
+
+/* FPGA LTE FEC PCI vendor & device IDs */
+#define FPGA_LTE_FEC_VENDOR_ID (0x1172)
+#define FPGA_LTE_FEC_PF_DEVICE_ID (0x5052)
+#define FPGA_LTE_FEC_VF_DEVICE_ID (0x5050)
+
+/* Align DMA descriptors to 256 bytes - cache-aligned */
+#define FPGA_RING_DESC_ENTRY_LENGTH (8)
+/* Ring size is in 256 bits (32 bytes) units */
+#define FPGA_RING_DESC_LEN_UNIT_BYTES (32)
+/* Maximum size of queue */
+#define FPGA_RING_MAX_SIZE (1024)
+#define FPGA_FLR_TIMEOUT_UNIT (16.384)
+
+#define FPGA_NUM_UL_QUEUES (32)
+#define FPGA_NUM_DL_QUEUES (32)
+#define FPGA_TOTAL_NUM_QUEUES (FPGA_NUM_UL_QUEUES + FPGA_NUM_DL_QUEUES)
+#define FPGA_NUM_INTR_VEC (FPGA_TOTAL_NUM_QUEUES - RTE_INTR_VEC_RXTX_OFFSET)
+
+#define FPGA_INVALID_HW_QUEUE_ID (0xFFFFFFFF)
+
+#define FPGA_QUEUE_FLUSH_TIMEOUT_US (1000)
+#define FPGA_TIMEOUT_CHECK_INTERVAL (5)
+
+/* FPGA LTE FEC Register mapping on BAR0 */
+enum {
+	FPGA_LTE_FEC_VERSION_ID = 0x00000000, /* len: 4B */
+	FPGA_LTE_FEC_CONFIGURATION = 0x00000004, /* len: 2B */
+	FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE = 0x00000008, /* len: 1B */
+	FPGA_LTE_FEC_LOAD_BALANCE_FACTOR = 0x0000000a, /* len: 2B */
+	FPGA_LTE_FEC_RING_DESC_LEN = 0x0000000c, /* len: 2B */
+	FPGA_LTE_FEC_FLR_TIME_OUT = 0x0000000e, /* len: 2B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW = 0x00000018, /* len: 4B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI = 0x0000001c, /* len: 4B */
+	FPGA_LTE_FEC_VF0_DEBUG = 0x00000020, /* len: 4B */
+	FPGA_LTE_FEC_VF1_DEBUG = 0x00000024, /* len: 4B */
+	FPGA_LTE_FEC_VF2_DEBUG = 0x00000028, /* len: 4B */
+	FPGA_LTE_FEC_VF3_DEBUG = 0x0000002c, /* len: 4B */
+	FPGA_LTE_FEC_VF4_DEBUG = 0x00000030, /* len: 4B */
+	FPGA_LTE_FEC_VF5_DEBUG = 0x00000034, /* len: 4B */
+	FPGA_LTE_FEC_VF6_DEBUG = 0x00000038, /* len: 4B */
+	FPGA_LTE_FEC_VF7_DEBUG = 0x0000003c, /* len: 4B */
+	FPGA_LTE_FEC_QUEUE_MAP = 0x00000040, /* len: 256B */
+	FPGA_LTE_FEC_RING_CTRL_REGS = 0x00000200  /* len: 2048B */
+};
+
+/* FPGA LTE FEC Ring Control Registers */
+enum {
+	FPGA_LTE_FEC_RING_HEAD_ADDR = 0x00000008,
+	FPGA_LTE_FEC_RING_SIZE = 0x00000010,
+	FPGA_LTE_FEC_RING_MISC = 0x00000014,
+	FPGA_LTE_FEC_RING_ENABLE = 0x00000015,
+	FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN = 0x00000016,
+	FPGA_LTE_FEC_RING_SHADOW_TAIL = 0x00000018,
+	FPGA_LTE_FEC_RING_HEAD_POINT = 0x0000001C
+};
+
+/* FPGA LTE FEC DESCRIPTOR ERROR */
+enum {
+	DESC_ERR_NO_ERR = 0x0,
+	DESC_ERR_K_OUT_OF_RANGE = 0x1,
+	DESC_ERR_K_NOT_NORMAL = 0x2,
+	DESC_ERR_KPAI_NOT_NORMAL = 0x3,
+	DESC_ERR_DESC_OFFSET_ERR = 0x4,
+	DESC_ERR_DESC_READ_FAIL = 0x8,
+	DESC_ERR_DESC_READ_TIMEOUT = 0x9,
+	DESC_ERR_DESC_READ_TLP_POISONED = 0xA,
+	DESC_ERR_CB_READ_FAIL = 0xC,
+	DESC_ERR_CB_READ_TIMEOUT = 0xD,
+	DESC_ERR_CB_READ_TLP_POISONED = 0xE
+};
+
+/* FPGA LTE FEC DMA Encoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_enc_desc {
+	uint32_t done:1,
+		rsrvd0:11,
+		error:4,
+		rsrvd1:16;
+	uint32_t ncb:16,
+		rsrvd2:14,
+		rv:2;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		crc_en:1,
+		rsrvd3:13,
+		offset:10,
+		rsrvd4:6;
+	uint16_t e;
+	uint16_t k;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint64_t cbs_in_op;
+		};
+
+		uint8_t sw_ctxt[FPGA_RING_DESC_LEN_UNIT_BYTES *
+					(FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE FEC DMA Decoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_dec_desc {
+	uint32_t done:1,
+		iter:5,
+		rsrvd0:2,
+		crc_pass:1,
+		rsrvd1:3,
+		error:4,
+		crc_type:1,
+		rsrvd2:7,
+		max_iter:5,
+		rsrvd3:3;
+	uint32_t rsrvd4;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		drop_crc:1,
+		rsrvd5:13,
+		offset:10,
+		rsrvd6:6;
+	uint16_t k;
+	uint16_t in_len;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint8_t cbs_in_op;
+		};
+
+		uint32_t sw_ctxt[8 * (FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE DMA Descriptor */
+union fpga_dma_desc {
+	struct fpga_dma_enc_desc enc_req;
+	struct fpga_dma_dec_desc dec_req;
+};
+
+/* FPGA LTE FEC Ring Control Register */
+struct __attribute__((__packed__)) fpga_ring_ctrl_reg {
+	uint64_t ring_base_addr;
+	uint64_t ring_head_addr;
+	uint16_t ring_size:11;
+	uint16_t rsrvd0;
+	union { /* Miscellaneous register */
+		uint8_t misc;
+		uint8_t max_ul_dec:5,
+			max_ul_dec_en:1,
+			rsrvd1:2;
+	};
+	uint8_t enable;
+	uint8_t flush_queue_en;
+	uint8_t rsrvd2;
+	uint16_t shadow_tail;
+	uint16_t rsrvd3;
+	uint16_t head_point;
+	uint16_t rsrvd4;
+
+};
+
+/* Private data structure for each FPGA FEC device */
+struct fpga_lte_fec_device {
+	/** Base address of MMIO registers (BAR0) */
+	void *mmio_base;
+	/** Base address of memory for sw rings */
+	void *sw_rings;
+	/** Physical address of sw_rings */
+	rte_iova_t sw_rings_phys;
+	/** Number of bytes available for each queue in device. */
+	uint32_t sw_ring_size;
+	/** Max number of entries available for each queue in device */
+	uint32_t sw_ring_max_depth;
+	/** Base address of response tail pointer buffer */
+	uint32_t *tail_ptrs;
+	/** Physical address of tail pointers */
+	rte_iova_t tail_ptr_phys;
+	/** Queues flush completion flag */
+	uint64_t *flush_queue_status;
+	/* Bitmap capturing which Queues are bound to the PF/VF */
+	uint64_t q_bound_bit_map;
+	/* Bitmap capturing which Queues have already been assigned */
+	uint64_t q_assigned_bit_map;
+	/** True if this is a PF FPGA FEC device */
+	bool pf_device;
+};
+
+/* Structure associated with each queue. */
+struct __rte_cache_aligned fpga_queue {
+	struct fpga_ring_ctrl_reg ring_ctrl_reg;  /* Ring Control Register */
+	union fpga_dma_desc *ring_addr;  /* Virtual address of software ring */
+	uint64_t *ring_head_addr;  /* Virtual address of completion_head */
+	uint64_t shadow_completion_head; /* Shadow completion head value */
+	uint16_t head_free_desc;  /* Ring head */
+	uint16_t tail;  /* Ring tail */
+	/* Mask used to wrap enqueued descriptors on the sw ring */
+	uint32_t sw_ring_wrap_mask;
+	uint32_t irq_enable;  /* Enable ops dequeue interrupts if set to 1 */
+	uint8_t q_idx;  /* Queue index */
+	struct fpga_lte_fec_device *d;
+	/* MMIO register of shadow_tail used to enqueue descriptors */
+	void *shadow_tail_addr;
+};
+
+/* Write to 16 bit MMIO register address */
+static inline void
+mmio_write_16(void *addr, uint16_t value)
+{
+	*((volatile uint16_t *)(addr)) = rte_cpu_to_le_16(value);
+}
+
+/* Write to 32 bit MMIO register address */
+static inline void
+mmio_write_32(void *addr, uint32_t value)
+{
+	*((volatile uint32_t *)(addr)) = rte_cpu_to_le_32(value);
+}
+
+/* Write to 64 bit MMIO register address */
+static inline void
+mmio_write_64(void *addr, uint64_t value)
+{
+	*((volatile uint64_t *)(addr)) = rte_cpu_to_le_64(value);
+}
+
+/* Write a 8 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_8(void *mmio_base, uint32_t offset, uint8_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	*((volatile uint8_t *)(reg_addr)) = payload;
+}
+
+/* Write a 16 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_16(void *mmio_base, uint32_t offset, uint16_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_16(reg_addr, payload);
+}
+
+/* Write a 32 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_32(void *mmio_base, uint32_t offset, uint32_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_32(reg_addr, payload);
+}
+
+/* Write a 64 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_64(void *mmio_base, uint32_t offset, uint64_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_64(reg_addr, payload);
+}
+
+/* Write a ring control register of a FPGA LTE FEC device */
+static inline void
+fpga_ring_reg_write(void *mmio_base, uint32_t offset,
+		struct fpga_ring_ctrl_reg payload)
+{
+	fpga_reg_write_64(mmio_base, offset, payload.ring_base_addr);
+	fpga_reg_write_64(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_ADDR,
+			payload.ring_head_addr);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SIZE,
+			payload.ring_size);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			payload.head_point);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN,
+			payload.flush_queue_en);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			payload.shadow_tail);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_MISC,
+			payload.misc);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload.enable);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint32_t
+fpga_reg_read_32(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint32_t ret = *((volatile uint32_t *)(reg_addr));
+	return rte_le_to_cpu_32(ret);
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Read a register of FPGA LTE FEC device */
+static uint8_t
+fpga_reg_read_8(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	return *((volatile uint8_t *)(reg_addr));
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint16_t
+fpga_reg_read_16(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint16_t ret = *((volatile uint16_t *)(reg_addr));
+	return rte_le_to_cpu_16(ret);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint64_t
+fpga_reg_read_64(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint64_t ret = *((volatile uint64_t *)(reg_addr));
+	return rte_le_to_cpu_64(ret);
+}
+
+/* Read Ring Control Register of FPGA LTE FEC device */
+static inline void
+print_ring_reg_debug_info(void *mmio_base, uint32_t offset)
+{
+	rte_bbdev_log_debug(
+		"FPGA MMIO base address @ %p | Ring Control Register @ offset = 0x%08"
+		PRIx32, mmio_base, offset);
+	rte_bbdev_log_debug(
+		"RING_BASE_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset));
+	rte_bbdev_log_debug(
+		"RING_HEAD_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_ADDR));
+	rte_bbdev_log_debug(
+		"RING_SIZE = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SIZE));
+	rte_bbdev_log_debug(
+		"RING_MISC = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_MISC));
+	rte_bbdev_log_debug(
+		"RING_ENABLE = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_ENABLE));
+	rte_bbdev_log_debug(
+		"RING_FLUSH_QUEUE_EN = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN));
+	rte_bbdev_log_debug(
+		"RING_SHADOW_TAIL = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SHADOW_TAIL));
+	rte_bbdev_log_debug(
+		"RING_HEAD_POINT = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_POINT));
+}
+
+/* Read Static Register of FPGA LTE FEC device */
+static inline void
+print_static_reg_debug_info(void *mmio_base)
+{
+	uint16_t config = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_CONFIGURATION);
+	uint8_t qmap_done = fpga_reg_read_8(mmio_base,
+			FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE);
+	uint16_t lb_factor = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_LOAD_BALANCE_FACTOR);
+	uint16_t ring_desc_len = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_RING_DESC_LEN);
+	uint16_t flr_time_out = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_FLR_TIME_OUT);
+
+	rte_bbdev_log_debug("UL.DL Weights = %u.%u",
+			((uint8_t)config), ((uint8_t)(config >> 8)));
+	rte_bbdev_log_debug("UL.DL Load Balance = %u.%u",
+			((uint8_t)lb_factor), ((uint8_t)(lb_factor >> 8)));
+	rte_bbdev_log_debug("Queue-PF/VF Mapping Table = %s",
+			(qmap_done > 0) ? "READY" : "NOT-READY");
+	rte_bbdev_log_debug("Ring Descriptor Size = %u bytes",
+			ring_desc_len*FPGA_RING_DESC_LEN_UNIT_BYTES);
+	rte_bbdev_log_debug("FLR Timeout = %f usec",
+			(float)flr_time_out*FPGA_FLR_TIMEOUT_UNIT);
+}
+
+/* Print decode DMA Descriptor of FPGA LTE FEC device */
+static void
+print_dma_dec_desc_debug_info(union fpga_dma_desc *desc)
+{
+	rte_bbdev_log_debug("DMA response desc %p\n"
+		"\t-- done(%"PRIu32") | iter(%"PRIu32") | crc_pass(%"PRIu32")"
+		" | error (%"PRIu32") | crc_type(%"PRIu32")\n"
+		"\t-- max_iter(%"PRIu32") | bypass_rm(%"PRIu32") | "
+		"irq_en (%"PRIu32") | drop_crc(%"PRIu32") | offset(%"PRIu32")\n"
+		"\t-- k(%"PRIu32") | in_len (%"PRIu16") | op_add(%p)\n"
+		"\t-- cbs_in_op(%"PRIu32") | in_add (0x%08"PRIx32"%08"PRIx32") | "
+		"out_add (0x%08"PRIx32"%08"PRIx32")",
+		desc,
+		(uint32_t)desc->dec_req.done,
+		(uint32_t)desc->dec_req.iter,
+		(uint32_t)desc->dec_req.crc_pass,
+		(uint32_t)desc->dec_req.error,
+		(uint32_t)desc->dec_req.crc_type,
+		(uint32_t)desc->dec_req.max_iter,
+		(uint32_t)desc->dec_req.bypass_rm,
+		(uint32_t)desc->dec_req.irq_en,
+		(uint32_t)desc->dec_req.drop_crc,
+		(uint32_t)desc->dec_req.offset,
+		(uint32_t)desc->dec_req.k,
+		(uint16_t)desc->dec_req.in_len,
+		desc->dec_req.op_addr,
+		(uint32_t)desc->dec_req.cbs_in_op,
+		(uint32_t)desc->dec_req.in_addr_hi,
+		(uint32_t)desc->dec_req.in_addr_lw,
+		(uint32_t)desc->dec_req.out_addr_hi,
+		(uint32_t)desc->dec_req.out_addr_lw);
+}
+#endif
+
+static int
+fpga_setup_queues(struct rte_bbdev *dev, uint16_t num_queues, int socket_id)
+{
+	/* Number of queues bound to a PF/VF */
+	uint32_t hw_q_num = 0;
+	uint32_t ring_size, payload, address, q_id, offset;
+	rte_iova_t phys_addr;
+	struct fpga_ring_ctrl_reg ring_reg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	if (!(fpga_reg_read_32(fpga_dev->mmio_base, address) & 0x1)) {
+		rte_bbdev_log(ERR,
+				"Queue-PF/VF mapping is not set! Was PF configured for device (%s) ?",
+				dev->data->name);
+		return -EPERM;
+	}
+
+	/* Clear queue registers structure */
+	memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+
+	/* Scan queue map.
+	 * If a queue is valid and mapped to a calling PF/VF the read value is
+	 * replaced with a queue ID and if it's not then
+	 * FPGA_INVALID_HW_QUEUE_ID is returned.
+	 */
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(fpga_dev->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+
+		rte_bbdev_log_debug("%s: queue ID: %u, registry queue ID: %u",
+				dev->device->name, q_id, hw_q_id);
+
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID) {
+			fpga_dev->q_bound_bit_map |= (1ULL << q_id);
+			/* Clear queue register of found queue */
+			offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+				(sizeof(struct fpga_ring_ctrl_reg) * q_id);
+			fpga_ring_reg_write(fpga_dev->mmio_base,
+					offset, ring_reg);
+			++hw_q_num;
+		}
+	}
+	if (hw_q_num == 0) {
+		rte_bbdev_log(ERR,
+			"No HW queues assigned to this device. Probably this is a VF configured for PF mode. Check device configuration!");
+		return -ENODEV;
+	}
+
+	if (num_queues > hw_q_num) {
+		rte_bbdev_log(ERR,
+			"Not enough queues for device %s! Requested: %u, available: %u",
+			dev->device->name, num_queues, hw_q_num);
+		return -EINVAL;
+	}
+
+	ring_size = FPGA_RING_MAX_SIZE * sizeof(struct fpga_dma_dec_desc);
+
+	/* Enforce 32 byte alignment */
+	RTE_BUILD_BUG_ON((RTE_CACHE_LINE_SIZE % 32) != 0);
+
+	/* Allocate memory for SW descriptor rings */
+	fpga_dev->sw_rings = rte_zmalloc_socket(dev->device->driver->name,
+			num_queues * ring_size, RTE_CACHE_LINE_SIZE,
+			socket_id);
+	if (fpga_dev->sw_rings == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u sw_rings",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	fpga_dev->sw_rings_phys = rte_malloc_virt2iova(fpga_dev->sw_rings);
+	fpga_dev->sw_ring_size = ring_size;
+	fpga_dev->sw_ring_max_depth = FPGA_RING_MAX_SIZE;
+
+	/* Allocate memory for ring flush status */
+	fpga_dev->flush_queue_status = rte_zmalloc_socket(NULL,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, socket_id);
+	if (fpga_dev->flush_queue_status == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u flush_queue_status",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	/* Set the flush status address registers */
+	phys_addr = rte_malloc_virt2iova(fpga_dev->flush_queue_status);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW;
+	payload = (uint32_t)(phys_addr);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI;
+	payload = (uint32_t)(phys_addr >> 32);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	return 0;
+}
+
+static int
+fpga_dev_close(struct rte_bbdev *dev)
+{
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	rte_free(fpga_dev->sw_rings);
+	rte_free(fpga_dev->flush_queue_status);
+
+	return 0;
+}
+
+static void
+fpga_dev_info_get(struct rte_bbdev *dev,
+		struct rte_bbdev_driver_info *dev_info)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint32_t q_id = 0;
+
+	/* TODO RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN and numbers of buffers are set
+	 * to temporary values as they are required by test application while
+	 * validation phase.
+	 */
+	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+		{
+			.type = RTE_BBDEV_OP_TURBO_DEC,
+			.cap.turbo_dec = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_TYPE_24B |
+					RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE |
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS |
+					RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN |
+					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
+				.max_llr_modulus = INT8_MAX,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_hard_out =
+					RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_soft_out = 0
+			}
+		},
+		{
+			.type = RTE_BBDEV_OP_TURBO_ENC,
+			.cap.turbo_enc = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_24B_ATTACH |
+					RTE_BBDEV_TURBO_RATE_MATCH |
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_MAX_CODE_BLOCKS
+			}
+		},
+		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
+	};
+
+	static struct rte_bbdev_queue_conf default_queue_conf;
+	default_queue_conf.socket = dev->data->socket_id;
+	default_queue_conf.queue_size = FPGA_RING_MAX_SIZE;
+
+
+	dev_info->driver_name = dev->device->driver->name;
+	dev_info->queue_size_lim = FPGA_RING_MAX_SIZE;
+	dev_info->hardware_accelerated = true;
+	dev_info->min_alignment = 64;
+	dev_info->default_queue_conf = default_queue_conf;
+	dev_info->capabilities = bbdev_capabilities;
+	dev_info->cpu_flag_reqs = NULL;
+
+	/* Calculates number of queues assigned to device */
+	dev_info->max_num_queues = 0;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(d->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID)
+			dev_info->max_num_queues++;
+	}
+}
+
+/**
+ * Find index of queue bound to current PF/VF which is unassigned. Return -1
+ * when there is no available queue
+ */
+static int
+fpga_find_free_queue_idx(struct rte_bbdev *dev,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint64_t q_idx;
+	uint8_t i = 0;
+	uint8_t range = FPGA_TOTAL_NUM_QUEUES >> 1;
+
+	if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC) {
+		i = FPGA_NUM_DL_QUEUES;
+		range = FPGA_TOTAL_NUM_QUEUES;
+	}
+
+	for (; i < range; ++i) {
+		q_idx = 1ULL << i;
+		/* Check if index of queue is bound to current PF/VF */
+		if (d->q_bound_bit_map & q_idx)
+			/* Check if found queue was not already assigned */
+			if (!(d->q_assigned_bit_map & q_idx)) {
+				d->q_assigned_bit_map |= q_idx;
+				return i;
+			}
+	}
+
+	rte_bbdev_log(INFO, "Failed to find free queue on %s", dev->data->name);
+
+	return -1;
+}
+
+static int
+fpga_queue_setup(struct rte_bbdev *dev, uint16_t queue_id,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	uint32_t address, ring_offset;
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q;
+	int8_t q_idx;
+
+	/* Check if there is a free queue to assign */
+	q_idx = fpga_find_free_queue_idx(dev, conf);
+	if (q_idx == -1)
+		return -1;
+
+	/* Allocate the queue data structure. */
+	q = rte_zmalloc_socket(dev->device->driver->name, sizeof(*q),
+			RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_bbdev_log(ERR, "Failed to allocate queue memory");
+		return -ENOMEM;
+	}
+
+	q->d = d;
+	q->q_idx = q_idx;
+
+	/* Set ring_base_addr */
+	q->ring_addr = RTE_PTR_ADD(d->sw_rings, (d->sw_ring_size * queue_id));
+	q->ring_ctrl_reg.ring_base_addr = d->sw_rings_phys +
+			(d->sw_ring_size * queue_id);
+
+	/* Allocate memory for Completion Head variable*/
+	q->ring_head_addr = rte_zmalloc_socket(dev->device->driver->name,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q->ring_head_addr == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u completion_head",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+	/* Set ring_head_addr */
+	q->ring_ctrl_reg.ring_head_addr =
+			rte_malloc_virt2iova(q->ring_head_addr);
+
+	/* Clear shadow_completion_head */
+	q->shadow_completion_head = 0;
+
+	/* Set ring_size */
+	if (conf->queue_size > FPGA_RING_MAX_SIZE) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Size of queue is too big %d (MAX: %d ) for %s:%u",
+				conf->queue_size, FPGA_RING_MAX_SIZE,
+				dev->device->driver->name, dev->data->dev_id);
+		return -EINVAL;
+	}
+	q->ring_ctrl_reg.ring_size = conf->queue_size;
+
+	/* Set Miscellaneous FPGA register*/
+	/* Max iteration number for TTI mitigation - todo */
+	q->ring_ctrl_reg.max_ul_dec = 0;
+	/* Enable max iteration number for TTI - todo */
+	q->ring_ctrl_reg.max_ul_dec_en = 0;
+
+	/* Enable the ring */
+	q->ring_ctrl_reg.enable = 1;
+
+	/* Set FPGA head_point and tail registers */
+	q->ring_ctrl_reg.head_point = q->tail = 0;
+
+	/* Set FPGA shadow_tail register */
+	q->ring_ctrl_reg.shadow_tail = q->tail;
+
+	/* Calculates the ring offset for found queue */
+	ring_offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q_idx);
+
+	/* Set FPGA Ring Control Registers */
+	fpga_ring_reg_write(d->mmio_base, ring_offset, q->ring_ctrl_reg);
+
+	/* Store MMIO register of shadow_tail */
+	address = ring_offset + FPGA_LTE_FEC_RING_SHADOW_TAIL;
+	q->shadow_tail_addr = RTE_PTR_ADD(d->mmio_base, address);
+
+	q->head_free_desc = q->tail;
+
+	/* Set wrap mask */
+	q->sw_ring_wrap_mask = conf->queue_size - 1;
+
+	rte_bbdev_log_debug("Setup dev%u q%u: queue_idx=%u",
+			dev->data->dev_id, queue_id, q->q_idx);
+
+	dev->data->queues[queue_id].queue_private = q;
+
+	rte_bbdev_log_debug("BBDEV queue[%d] set up for FPGA queue[%d]",
+			queue_id, q_idx);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Read FPGA Ring Control Registers after configuration*/
+	print_ring_reg_debug_info(d->mmio_base, ring_offset);
+#endif
+	return 0;
+}
+
+static int
+fpga_queue_release(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	struct fpga_ring_ctrl_reg ring_reg;
+	uint32_t offset;
+
+	rte_bbdev_log_debug("FPGA Queue[%d] released", queue_id);
+
+	if (q != NULL) {
+		memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+		offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+		/* Disable queue */
+		fpga_reg_write_8(d->mmio_base,
+				offset + FPGA_LTE_FEC_RING_ENABLE, 0x00);
+		/* Clear queue registers */
+		fpga_ring_reg_write(d->mmio_base, offset, ring_reg);
+
+		/* Mark the Queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q->q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		dev->data->queues[queue_id].queue_private = NULL;
+	}
+
+	return 0;
+}
+
+/* Function starts a device queue. */
+static int
+fpga_queue_start(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t enable = 0x01;
+	uint16_t zero = 0x0000;
+
+	/* Clear queue head and tail variables */
+	q->tail = q->head_free_desc = 0;
+
+	/* Clear FPGA head_point and tail registers */
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			zero);
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			zero);
+
+	/* Enable queue */
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			enable);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] started", queue_id);
+	return 0;
+}
+
+/* Function stops a device queue. */
+static int
+fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t payload = 0x01;
+	uint8_t counter = 0;
+	uint8_t timeout = FPGA_QUEUE_FLUSH_TIMEOUT_US /
+			FPGA_TIMEOUT_CHECK_INTERVAL;
+
+	/* Set flush_queue_en bit to trigger queue flushing */
+	fpga_reg_write_8(d->mmio_base,
+			offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN, payload);
+
+	/** Check if queue flush is completed.
+	 * FPGA will update the completion flag after queue flushing is
+	 * completed. If completion flag is not updated within 1ms it is
+	 * considered as a failure.
+	 */
+	while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) {
+		if (counter > timeout) {
+			rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d",
+					queue_id);
+			return -1;
+		}
+		usleep(FPGA_TIMEOUT_CHECK_INTERVAL);
+		counter++;
+	}
+
+	/* Disable queue */
+	payload = 0x00;
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] stopped", queue_id);
+	return 0;
+}
+
+static inline uint16_t
+get_queue_id(struct rte_bbdev_data *data, uint8_t q_idx)
+{
+	uint16_t queue_id;
+
+	for (queue_id = 0; queue_id < data->num_queues; ++queue_id) {
+		struct fpga_queue *q = data->queues[queue_id].queue_private;
+		if (q != NULL && q->q_idx == q_idx)
+			return queue_id;
+	}
+
+	return -1;
+}
+
+/* Interrupt handler triggered by FPGA dev for handling specific interrupt */
+static void
+fpga_dev_interrupt_handler(void *cb_arg)
+{
+	struct rte_bbdev *dev = cb_arg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+	struct fpga_queue *q;
+	uint64_t ring_head;
+	uint64_t q_idx;
+	uint16_t queue_id;
+	uint8_t i;
+
+	/* Scan queue assigned to this device */
+	for (i = 0; i < FPGA_TOTAL_NUM_QUEUES; ++i) {
+		q_idx = 1ULL << i;
+		if (fpga_dev->q_bound_bit_map & q_idx) {
+			queue_id = get_queue_id(dev->data, i);
+			if (queue_id == (uint16_t) -1)
+				continue;
+
+			/* Check if completion head was changed */
+			q = dev->data->queues[queue_id].queue_private;
+			ring_head = *q->ring_head_addr;
+			if (q->shadow_completion_head != ring_head &&
+				q->irq_enable == 1) {
+				q->shadow_completion_head = ring_head;
+				rte_bbdev_pmd_callback_process(
+						dev,
+						RTE_BBDEV_EVENT_DEQUEUE,
+						&queue_id);
+			}
+		}
+	}
+}
+
+static int
+fpga_queue_intr_enable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle))
+		return -ENOTSUP;
+
+	q->irq_enable = 1;
+
+	return 0;
+}
+
+static int
+fpga_queue_intr_disable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	q->irq_enable = 0;
+
+	return 0;
+}
+
+static int
+fpga_intr_enable(struct rte_bbdev *dev)
+{
+	int ret;
+	uint8_t i;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle)) {
+		rte_bbdev_log(ERR, "Multiple intr vector is not supported by FPGA (%s)",
+				dev->data->name);
+		return -ENOTSUP;
+	}
+
+	/* Create event file descriptors for each of 64 queue. Event fds will be
+	 * mapped to FPGA IRQs in rte_intr_enable(). This is a 1:1 mapping where
+	 * the IRQ number is a direct translation to the queue number.
+	 *
+	 * 63 (FPGA_NUM_INTR_VEC) event fds are created as rte_intr_enable()
+	 * mapped the first IRQ to already created interrupt event file
+	 * descriptor (intr_handle->fd).
+	 */
+	if (rte_intr_efd_enable(dev->intr_handle, FPGA_NUM_INTR_VEC)) {
+		rte_bbdev_log(ERR, "Failed to create fds for %u queues",
+				dev->data->num_queues);
+		return -1;
+	}
+
+	/* TODO Each event file descriptor is overwritten by interrupt event
+	 * file descriptor. That descriptor is added to epoll observed list.
+	 * It ensures that callback function assigned to that descriptor will
+	 * invoked when any FPGA queue issues interrupt.
+	 */
+	for (i = 0; i < FPGA_NUM_INTR_VEC; ++i)
+		dev->intr_handle->efds[i] = dev->intr_handle->fd;
+
+	if (!dev->intr_handle->intr_vec) {
+		dev->intr_handle->intr_vec = rte_zmalloc("intr_vec",
+				dev->data->num_queues * sizeof(int), 0);
+		if (!dev->intr_handle->intr_vec) {
+			rte_bbdev_log(ERR, "Failed to allocate %u vectors",
+					dev->data->num_queues);
+			return -ENOMEM;
+		}
+	}
+
+	ret = rte_intr_enable(dev->intr_handle);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't enable interrupts for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	ret = rte_intr_callback_register(dev->intr_handle,
+			fpga_dev_interrupt_handler, dev);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't register interrupt callback for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct rte_bbdev_ops fpga_ops = {
+	.setup_queues = fpga_setup_queues,
+	.intr_enable = fpga_intr_enable,
+	.close = fpga_dev_close,
+	.info_get = fpga_dev_info_get,
+	.queue_setup = fpga_queue_setup,
+	.queue_stop = fpga_queue_stop,
+	.queue_start = fpga_queue_start,
+	.queue_release = fpga_queue_release,
+	.queue_intr_enable = fpga_queue_intr_enable,
+	.queue_intr_disable = fpga_queue_intr_disable
+};
+
+static inline void
+fpga_dma_enqueue(struct fpga_queue *q, uint16_t num_desc,
+		struct rte_bbdev_stats *queue_stats)
+{
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = 0;
+	queue_stats->acc_offload_cycles = 0;
+#else
+	RTE_SET_USED(queue_stats);
+#endif
+
+	/* Update tail and shadow_tail register */
+	q->tail = (q->tail + num_desc) & q->sw_ring_wrap_mask;
+
+	rte_wmb();
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	/* Start time measurement for enqueue function offload. */
+	start_time = rte_rdtsc_precise();
+#endif
+	mmio_write_16(q->shadow_tail_addr, q->tail);
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	rte_wmb();
+	queue_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+}
+
+/* Calculates number of CBs in processed encoder TB based on 'r' and input
+ * length.
+ */
+static inline uint8_t
+get_num_cbs_in_op_enc(struct rte_bbdev_op_turbo_enc *turbo_enc)
+{
+	uint8_t c, c_neg, r, crc24_bits = 0;
+	uint16_t k, k_neg, k_pos;
+	uint8_t cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_enc->input.length;
+	r = turbo_enc->tb_params.r;
+	c = turbo_enc->tb_params.c;
+	c_neg = turbo_enc->tb_params.c_neg;
+	k_neg = turbo_enc->tb_params.k_neg;
+	k_pos = turbo_enc->tb_params.k_pos;
+	crc24_bits = 24;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		length -= (k - crc24_bits) >> 3;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Calculates number of CBs in processed decoder TB based on 'r' and input
+ * length.
+ */
+static inline uint16_t
+get_num_cbs_in_op_dec(struct rte_bbdev_op_turbo_dec *turbo_dec)
+{
+	uint8_t c, c_neg, r = 0;
+	uint16_t kw, k, k_neg, k_pos, cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_dec->input.length;
+	r = turbo_dec->tb_params.r;
+	c = turbo_dec->tb_params.c;
+	c_neg = turbo_dec->tb_params.c_neg;
+	k_neg = turbo_dec->tb_params.k_neg;
+	k_pos = turbo_dec->tb_params.k_pos;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+		length -= kw;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Read flag value 0/1/ from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
+/* Print an error if a descriptor error has occurred.
+ *  Return 0 on success, 1 on failure
+ */
+static inline int
+check_desc_error(uint32_t error_code) {
+	switch (error_code) {
+	case DESC_ERR_NO_ERR:
+		return 0;
+	case DESC_ERR_K_OUT_OF_RANGE:
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144)");
+		break;
+	case DESC_ERR_K_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range");
+		break;
+	case DESC_ERR_KPAI_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only");
+		break;
+	case DESC_ERR_DESC_OFFSET_ERR:
+		rte_bbdev_log(ERR, "Queue offset does not meet the expectation in the FPGA");
+		break;
+	case (DESC_ERR_K_OUT_OF_RANGE | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144) and queue offset error");
+		break;
+	case (DESC_ERR_K_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range and queue offset error");
+		break;
+	case (DESC_ERR_KPAI_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only and queue offset error");
+		break;
+	case DESC_ERR_DESC_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for descriptor read");
+		break;
+	case DESC_ERR_DESC_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Descriptor read time-out");
+		break;
+	case DESC_ERR_DESC_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Descriptor read TLP poisoned");
+		break;
+	case DESC_ERR_CB_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for code block");
+		break;
+	case DESC_ERR_CB_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Code block read time-out");
+		break;
+	case DESC_ERR_CB_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Code block read TLP poisoned");
+		break;
+	default:
+		rte_bbdev_log(ERR, "Descriptor error unknown error code %u",
+				error_code);
+		break;
+	}
+	return 1;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param k
+ *   K value (length of input in bits).
+ * @param e
+ *   E value (length of output in bits).
+ * @param ncb
+ *   Ncb value (size of the soft buffer).
+ * @param out_length
+ *   Length of output buffer
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_te_fill(struct rte_bbdev_enc_op *op,
+		struct fpga_dma_enc_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t k, uint16_t e, uint16_t ncb,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+
+{
+	/* reset */
+	desc->done = 0;
+	desc->crc_en = check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_CRC_24B_ATTACH);
+	desc->bypass_rm = !check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_RATE_MATCH);
+	desc->k = k;
+	desc->e = e;
+	desc->ncb = ncb;
+	desc->rv = op->turbo_enc.rv_index;
+	desc->offset = desc_offset;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param in_length
+ *   Length of an input.
+ * @param k
+ *   K value (length of an output in bits).
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_td_fill(struct rte_bbdev_dec_op *op,
+		struct fpga_dma_dec_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t in_length, uint16_t k,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+{
+	/* reset */
+	desc->done = 0;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+	desc->in_len = in_length;
+	desc->k = k;
+	desc->crc_type = !check_bit(op->turbo_dec.op_flags,
+			RTE_BBDEV_TURBO_CRC_TYPE_24B);
+	if ((op->turbo_dec.code_block_mode == 0)
+		&& !check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		desc->drop_crc = 1;
+	desc->max_iter = op->turbo_dec.iter_max * 2;
+	desc->offset = desc_offset;
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo encoder parameters */
+static int
+validate_enc_op(struct rte_bbdev_enc_op *op)
+{
+	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
+	struct rte_bbdev_op_enc_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_tb_params *tb = NULL;
+	uint16_t kw, kw_neg, kw_pos;
+
+	if (turbo_enc->input.length >
+			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return -1;
+	}
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_enc->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_enc->output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid output pointer");
+		return -1;
+	}
+	if (turbo_enc->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_enc->rv_index);
+		return -1;
+	}
+	if (turbo_enc->code_block_mode != 0 &&
+			turbo_enc->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_enc->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_enc->code_block_mode == 0) {
+		tb = &turbo_enc->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+				&& tb->r < tb->cab) {
+			rte_bbdev_log(ERR,
+					"ea (%u) is less than %u or it is not even",
+					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+				&& tb->c > tb->cab) {
+			rte_bbdev_log(ERR,
+					"eb (%u) is less than %u or it is not even",
+					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
+					RTE_BBDEV_C_SUBBLOCK);
+		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
+			rte_bbdev_log(ERR,
+					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
+					tb->ncb_neg, tb->k_neg, kw_neg);
+			return -1;
+		}
+
+		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
+					RTE_BBDEV_C_SUBBLOCK);
+		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
+			rte_bbdev_log(ERR,
+					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
+					tb->ncb_pos, tb->k_pos, kw_pos);
+			return -1;
+		}
+		if (tb->r > (tb->c - 1)) {
+			rte_bbdev_log(ERR,
+					"r (%u) is greater than c - 1 (%u)",
+					tb->r, tb->c - 1);
+			return -1;
+		}
+	} else {
+		cb = &turbo_enc->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+
+		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+			rte_bbdev_log(ERR,
+					"e (%u) is less than %u or it is not even",
+					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		if (cb->ncb < cb->k || cb->ncb > kw) {
+			rte_bbdev_log(ERR,
+					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
+					cb->ncb, cb->k, kw);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline char *
+mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
+{
+	if (unlikely(len > rte_pktmbuf_tailroom(m)))
+		return NULL;
+
+	char *tail = (char *)m->buf_addr + m->data_off + m->data_len;
+	m->data_len = (uint16_t)(m->data_len + len);
+	m_head->pkt_len  = (m_head->pkt_len + len);
+	return tail;
+}
+
+static inline int
+enqueue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	total_left = op->turbo_enc.input.length;
+	k = op->turbo_enc.cb_params.k;
+	e = op->turbo_enc.cb_params.e;
+	ncb = op->turbo_enc.cb_params.ncb;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		in_length = ((k - 24) >> 3);
+	else
+		in_length = k >> 3;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_RATE_MATCH))
+		out_length = (e + 7) >> 3;
+	else
+		out_length = (k >> 3) * 3 + 2;
+
+	mbuf_append(output, output, out_length);
+
+	/* Offset into the ring */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	/* Setup DMA Descriptor */
+	desc = q->ring_addr + ring_offset;
+
+	ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output, k, e,
+			ncb, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_enc.output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+			"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+static inline int
+enqueue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c, crc24_bits = 0;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t mbuf_total_left, in_length, out_length, in_offset, out_offset;
+	uint32_t seg_total_left;
+	uint16_t current_enqueued_cbs = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output_head = output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	mbuf_total_left = op->turbo_enc.input.length;
+
+	c = op->turbo_enc.tb_params.c;
+	r = op->turbo_enc.tb_params.r;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		crc24_bits = 24;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+
+		e = (r < op->turbo_enc.tb_params.cab) ?
+				op->turbo_enc.tb_params.ea :
+				op->turbo_enc.tb_params.eb;
+		k = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.k_neg :
+				op->turbo_enc.tb_params.k_pos;
+		ncb = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.ncb_neg :
+				op->turbo_enc.tb_params.ncb_pos;
+
+		in_length = ((k - crc24_bits) >> 3);
+
+		if (check_bit(op->turbo_enc.op_flags,
+			RTE_BBDEV_TURBO_RATE_MATCH))
+			out_length = (e + 7) >> 3;
+		else
+			out_length = (k >> 3) * 3 + 2;
+
+		mbuf_append(output_head, output, out_length);
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output,
+				k, e, ncb, in_offset, out_offset, ring_offset,
+				cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		rte_bbdev_log_debug("DMA request desc %p", desc);
+
+		/* Update lengths */
+		op->turbo_enc.output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo decoder parameters */
+static int
+validate_dec_op(struct rte_bbdev_dec_op *op)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
+	struct rte_bbdev_op_dec_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_tb_params *tb = NULL;
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_dec->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_dec->hard_output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid hard_output pointer");
+		return -1;
+	}
+	if (turbo_dec->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_dec->rv_index);
+		return -1;
+	}
+	if (turbo_dec->iter_min < 1) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is less than 1",
+				turbo_dec->iter_min);
+		return -1;
+	}
+	if (turbo_dec->iter_max <= 2) {
+		rte_bbdev_log(ERR,
+				"iter_max (%u) is less than or equal to 2",
+				turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->iter_min > turbo_dec->iter_max) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is greater than iter_max (%u)",
+				turbo_dec->iter_min, turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->code_block_mode != 0 &&
+			turbo_dec->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_dec->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_dec->code_block_mode == 0) {
+
+		if ((turbo_dec->op_flags &
+			RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+			!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+			rte_bbdev_log(ERR,
+				"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP should accompany RTE_BBDEV_TURBO_CRC_TYPE_24B");
+			return -1;
+		}
+
+		tb = &turbo_dec->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c > tb->c_neg) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+	} else {
+
+		if (turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) {
+			rte_bbdev_log(ERR,
+					"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP is invalid in CB-mode");
+			return -1;
+		}
+
+		cb = &turbo_dec->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline int
+enqueue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, kw, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output = op->turbo_dec.hard_output.data;
+	total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	k = op->turbo_dec.cb_params.k;
+	kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+	in_length = kw;
+	out_length = k >> 3;
+
+	mbuf_append(output, output, out_length);
+
+	/* Setup DMA Descriptor */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	desc = q->ring_addr + ring_offset;
+	ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+			in_length, k, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+#endif
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_dec.hard_output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+
+static inline int
+enqueue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c;
+	uint16_t k, kw, in_length, out_length, ring_offset;
+	uint32_t mbuf_total_left, seg_total_left, in_offset, out_offset;
+	uint16_t current_enqueued_cbs = 0;
+	uint16_t crc24_overlap = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output_head = output = op->turbo_dec.hard_output.data;
+	mbuf_total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	if (!check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		crc24_overlap = 24;
+
+	c = op->turbo_dec.tb_params.c;
+	r = op->turbo_dec.tb_params.r;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+		k = (r < op->turbo_dec.tb_params.c_neg) ?
+				op->turbo_dec.tb_params.k_neg :
+				op->turbo_dec.tb_params.k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+
+		in_length = kw;
+		out_length = (k - crc24_overlap) >> 3;
+
+		mbuf_append(output_head, output, out_length);
+
+		if (seg_total_left < in_length) {
+			rte_bbdev_log(ERR,
+					"Partial CB found in a TB. FPGA Driver doesn't support scatter-gather operations!");
+			return -1;
+		}
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+				in_length, k, in_offset, out_offset,
+				ring_offset, cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		/* Update lengths */
+		ret = rte_pktmbuf_trim(op->turbo_dec.hard_output.data,
+				(crc24_overlap >> 3));
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		if (ret < 0) {
+			rte_bbdev_log(ERR,
+					"The length to remove is greater than the length of the last segment");
+			return -EINVAL;
+		}
+#endif
+		op->turbo_dec.hard_output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+static uint16_t
+fpga_enqueue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_enc.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_enc(&ops[i]->turbo_enc);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_enc_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_enc_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing enc ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->enc_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static uint16_t
+fpga_enqueue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_dec.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_dec(&ops[i]->turbo_dec);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_dec_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_dec_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing dec ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->dec_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static inline int
+dequeue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+
+	/* Set current desc */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/*check if done */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+	rte_bbdev_log_debug("DMA response desc %p", desc);
+
+	*op = desc->enc_req.op_addr;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status = desc_error << RTE_BBDEV_DATA_ERROR;
+
+	return 1;
+}
+
+static inline int
+dequeue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx;
+	int desc_error = 0;
+	int status = 0;
+
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->enc_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->enc_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |=  desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->enc_req.op_addr;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static inline int
+dequeue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+
+#endif
+
+	*op = desc->dec_req.op_addr;
+	/* FPGA reports in half-iterations, from 0 to 31. get ceiling */
+	(*op)->turbo_dec.iter_count = (desc->dec_req.iter + 2) >> 1;
+	/* crc_pass = 0 when decoder fails */
+	(*op)->status = !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status |= desc_error << RTE_BBDEV_DATA_ERROR;
+	return 1;
+}
+
+static inline int
+dequeue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx, iter_count = 0;
+	int status = 0;
+	int  desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->dec_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->dec_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* get max iter_count for all CBs in op */
+		iter_count = RTE_MAX(iter_count, (uint8_t) desc->dec_req.iter);
+		/* crc_pass = 0 when decoder fails, one fails all */
+		status |= !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |= desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->dec_req.op_addr;
+
+	/* FPGA reports in half-iterations, get ceiling */
+	(*op)->turbo_dec.iter_count = (iter_count + 2) >> 1;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static uint16_t
+fpga_dequeue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_enc_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->enc_req.op_addr;
+		if (op->turbo_enc.code_block_mode == 0)
+			ret = dequeue_enc_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_enc_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing enc ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+static uint16_t
+fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_dec_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->dec_req.op_addr;
+		if (op->turbo_dec.code_block_mode == 0)
+			ret = dequeue_dec_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_dec_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing dec ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+/* Initialization Function */
+static void
+fpga_lte_fec_init(struct rte_bbdev *dev)
+{
+	struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+
+	dev->dev_ops = &fpga_ops;
+	dev->enqueue_enc_ops = fpga_enqueue_enc;
+	dev->enqueue_dec_ops = fpga_enqueue_dec;
+	dev->dequeue_enc_ops = fpga_dequeue_enc;
+	dev->dequeue_dec_ops = fpga_dequeue_dec;
+
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device =
+			!strcmp(dev->device->driver->name,
+					RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME));
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base =
+			pci_dev->mem_resource[0].addr;
+
+	rte_bbdev_log_debug(
+			"Init device %s [%s] @ virtaddr %p phyaddr %#"PRIx64,
+			dev->device->driver->name, dev->data->name,
+			(void *)pci_dev->mem_resource[0].addr,
+			pci_dev->mem_resource[0].phys_addr);
+}
+
+static int
+fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev = NULL;
+	char dev_name[RTE_BBDEV_NAME_MAX_LEN];
+
+	if (pci_dev == NULL) {
+		rte_bbdev_log(ERR, "NULL PCI device");
+		return -EINVAL;
+	}
+
+	rte_pci_device_name(&pci_dev->addr, dev_name, sizeof(dev_name));
+
+	/* Allocate memory to be used privately by drivers */
+	bbdev = rte_bbdev_allocate(pci_dev->device.name);
+	if (bbdev == NULL)
+		return -ENODEV;
+
+	/* allocate device private memory */
+	bbdev->data->dev_private = rte_zmalloc_socket(dev_name,
+			sizeof(struct fpga_lte_fec_device), RTE_CACHE_LINE_SIZE,
+			pci_dev->device.numa_node);
+
+	if (bbdev->data->dev_private == NULL) {
+		rte_bbdev_log(CRIT,
+				"Allocate of %zu bytes for device \"%s\" failed",
+				sizeof(struct fpga_lte_fec_device), dev_name);
+				rte_bbdev_release(bbdev);
+			return -ENOMEM;
+	}
+
+	/* Fill HW specific part of device structure */
+	bbdev->device = &pci_dev->device;
+	bbdev->intr_handle = &pci_dev->intr_handle;
+	bbdev->data->socket_id = pci_dev->device.numa_node;
+
+	/* Invoke FEC FPGA device initialization function */
+	fpga_lte_fec_init(bbdev);
+
+	rte_bbdev_log_debug("bbdev id = %u [%s]",
+			bbdev->data->dev_id, dev_name);
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+	uint32_t version_id = fpga_reg_read_32(d->mmio_base,
+			FPGA_LTE_FEC_VERSION_ID);
+	rte_bbdev_log(INFO, "FEC FPGA RTL v%u.%u",
+		((uint16_t)(version_id >> 16)), ((uint16_t)version_id));
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (!strcmp(bbdev->device->driver->name,
+			RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)))
+		print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+static int
+fpga_lte_fec_remove(struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev;
+	int ret;
+	uint8_t dev_id;
+
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* Find device */
+	bbdev = rte_bbdev_get_named_dev(pci_dev->device.name);
+	if (bbdev == NULL) {
+		rte_bbdev_log(CRIT,
+				"Couldn't find HW dev \"%s\" to uninitialise it",
+				pci_dev->device.name);
+		return -ENODEV;
+	}
+	dev_id = bbdev->data->dev_id;
+
+	/* free device private memory before close */
+	rte_free(bbdev->data->dev_private);
+
+	/* Close device */
+	ret = rte_bbdev_close(dev_id);
+	if (ret < 0)
+		rte_bbdev_log(ERR,
+				"Device %i failed to close during uninit: %i",
+				dev_id, ret);
+
+	/* release bbdev from library */
+	ret = rte_bbdev_release(bbdev);
+	if (ret)
+		rte_bbdev_log(ERR, "Device %i failed to uninit: %i", dev_id,
+				ret);
+
+	rte_bbdev_log_debug("Destroyed bbdev = %u", dev_id);
+
+	return 0;
+}
+
+static inline void
+set_default_fpga_conf(struct fpga_lte_fec_conf *def_conf)
+{
+	/* clear default configuration before initialization */
+	memset(def_conf, 0, sizeof(struct fpga_lte_fec_conf));
+	/* Set pf mode to true */
+	def_conf->pf_mode_en = true;
+
+	/* Set ratio between UL and DL to 1:1 (unit of weight is 3 CBs) */
+	def_conf->ul_bandwidth = 3;
+	def_conf->dl_bandwidth = 3;
+
+	/* Set Load Balance Factor to 64 */
+	def_conf->dl_load_balance = 64;
+	def_conf->ul_load_balance = 64;
+}
+
+/* Initial configuration of FPGA LTE FEC device */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf)
+{
+	uint32_t payload_32, address;
+	uint16_t payload_16;
+	uint8_t payload_8;
+	uint16_t q_id, vf_id, total_q_id, total_ul_q_id, total_dl_q_id;
+	struct rte_bbdev *bbdev = rte_bbdev_get_named_dev(dev_name);
+	struct fpga_lte_fec_conf def_conf;
+
+	if (bbdev == NULL) {
+		rte_bbdev_log(ERR,
+				"Invalid dev_name (%s), or device is not yet initialised",
+				dev_name);
+		return -ENODEV;
+	}
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+
+	if (conf == NULL) {
+		rte_bbdev_log(ERR,
+				"FPGA Configuration was not provided. Default configuration will be loaded.");
+		set_default_fpga_conf(&def_conf);
+		conf = &def_conf;
+	}
+
+	/*
+	 * Configure UL:DL ratio.
+	 * [7:0]: UL weight
+	 * [15:8]: DL weight
+	 */
+	payload_16 = (conf->dl_bandwidth << 8) | conf->ul_bandwidth;
+	address = FPGA_LTE_FEC_CONFIGURATION;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Clear all queues registers */
+	payload_32 = FPGA_INVALID_HW_QUEUE_ID;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+		fpga_reg_write_32(d->mmio_base, address, payload_32);
+	}
+
+	/*
+	 * If PF mode is enabled allocate all queues for PF only.
+	 *
+	 * For VF mode each VF can have different number of UL and DL queues.
+	 * Total number of queues to configure cannot exceed FPGA
+	 * capabilities - 64 queues - 32 queues for UL and 32 queues for DL.
+	 * Queues mapping is done according to configuration:
+	 *
+	 * UL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 0                |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_dl_queues_number[0] - 1 |   0   |
+	 * | conf->vf_dl_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_dl_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_dl_queues_number[7] - 1 |   7   |
+	 *
+	 * DL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 32               |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_ul_queues_number[0] - 1 |   0   |
+	 * | conf->vf_ul_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_ul_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_ul_queues_number[7] - 1 |   7   |
+	 *
+	 * Example of configuration:
+	 * conf->vf_ul_queues_number[0] = 4;  -> 4 UL queues for VF0
+	 * conf->vf_dl_queues_number[0] = 4;  -> 4 DL queues for VF0
+	 * conf->vf_ul_queues_number[1] = 2;  -> 2 UL queues for VF1
+	 * conf->vf_dl_queues_number[1] = 2;  -> 2 DL queues for VF1
+	 *
+	 * UL:
+	 * | Q_ID | VF_ID |
+	 * |   0  |   0   |
+	 * |   1  |   0   |
+	 * |   2  |   0   |
+	 * |   3  |   0   |
+	 * |   4  |   1   |
+	 * |   5  |   1   |
+	 *
+	 * DL:
+	 * | Q_ID | VF_ID |
+	 * |  32  |   0   |
+	 * |  33  |   0   |
+	 * |  34  |   0   |
+	 * |  35  |   0   |
+	 * |  36  |   1   |
+	 * |  37  |   1   |
+	 */
+	if (conf->pf_mode_en) {
+		payload_32 = 0x1;
+		for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+			address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+			fpga_reg_write_32(d->mmio_base, address, payload_32);
+		}
+	} else {
+		/* Calculate total number of UL and DL queues to configure */
+		total_ul_q_id = total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			total_ul_q_id += conf->vf_ul_queues_number[vf_id];
+			total_dl_q_id += conf->vf_dl_queues_number[vf_id];
+		}
+		total_q_id = total_dl_q_id + total_ul_q_id;
+		/*
+		 * Check if total number of queues to configure does not exceed
+		 * FPGA capabilities (64 queues - 32 UL and 32 DL queues)
+		 */
+		if ((total_ul_q_id > FPGA_NUM_UL_QUEUES) ||
+			(total_dl_q_id > FPGA_NUM_DL_QUEUES) ||
+			(total_q_id > FPGA_TOTAL_NUM_QUEUES)) {
+			rte_bbdev_log(ERR,
+					"FPGA Configuration failed. Too many queues to configure: UL_Q %u, DL_Q %u, FPGA_Q %u",
+					total_ul_q_id, total_dl_q_id,
+					FPGA_TOTAL_NUM_QUEUES);
+			return -EINVAL;
+		}
+		total_ul_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_ul_queues_number[vf_id];
+					++q_id, ++total_ul_q_id) {
+				address = (total_ul_q_id << 2) +
+						FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+		total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_dl_queues_number[vf_id];
+					++q_id, ++total_dl_q_id) {
+				address = ((total_dl_q_id + FPGA_NUM_UL_QUEUES)
+						<< 2) + FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+	}
+
+	/* Setting Load Balance Factor */
+	payload_16 = (conf->dl_load_balance << 8) | (conf->ul_load_balance);
+	address = FPGA_LTE_FEC_LOAD_BALANCE_FACTOR;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting length of ring descriptor entry */
+	payload_16 = FPGA_RING_DESC_ENTRY_LENGTH;
+	address = FPGA_LTE_FEC_RING_DESC_LEN;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting FLR timeout value */
+	payload_16 = conf->flr_time_out;
+	address = FPGA_LTE_FEC_FLR_TIME_OUT;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Queue PF/VF mapping table is ready */
+	payload_8 = 0x1;
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	fpga_reg_write_8(d->mmio_base, address, payload_8);
+
+	rte_bbdev_log_debug("PF FPGA LTE FEC configuration complete for %s",
+			dev_name);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+/* FPGA LTE FEC PCI PF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_pf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_PF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_pf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_pf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+/* FPGA LTE FEC PCI VF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_vf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_VF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_vf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_vf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_PF_DRIVER_NAME, fpga_lte_fec_pci_pf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_pf_map);
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_vf_map);
+
+RTE_INIT(fpga_lte_fec_init_log)
+{
+	fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec");
+	if (fpga_lte_fec_logtype >= 0)
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG);
+#else
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE);
+#endif
+}
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
new file mode 100644
index 0000000..9ae8b12
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2019 Intel Corporation
+ */
+
+#ifndef _FPGA_LTE_FEC_H_
+#define _FPGA_LTE_FEC_H_
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/**
+ * @file fpga_lte_fec.h
+ *
+ * Interface for Intel(R) FGPA LTE FEC device configuration at the host level,
+ * directly accessible by the application.
+ * Configuration related to LTE Turbo coding functionality is done through
+ * librte_bbdev library.
+ *
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**< Number of Virtual Functions FGPA 4G FEC supports */
+#define FPGA_LTE_FEC_NUM_VFS 8
+
+/**
+ * Structure to pass FPGA 4G FEC configuration.
+ */
+struct fpga_lte_fec_conf {
+	/**< 1 if PF is used for dataplane, 0 for VFs */
+	bool pf_mode_en;
+	/**< Number of UL queues per VF */
+	uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< Number of DL queues per VF */
+	uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< UL bandwidth. Needed for schedule algorithm */
+	uint8_t ul_bandwidth;
+	/**< DL bandwidth. Needed for schedule algorithm */
+	uint8_t dl_bandwidth;
+	/**< UL Load Balance */
+	uint8_t ul_load_balance;
+	/**< DL Load Balance */
+	uint8_t dl_load_balance;
+	/**< FLR timeout value */
+	uint16_t flr_time_out;
+};
+
+/**
+ * Configure Intel(R) FPGA LTE FEC device
+ *
+ * @param dev_name
+ *   The name of the device. This is the short form of PCI BDF, e.g. 00:01.0.
+ *   It can also be retrieved for a bbdev device from the dev_name field in the
+ *   rte_bbdev_info structure returned by rte_bbdev_info_get().
+ * @param conf
+ *   Configuration to apply to FPGA 4G FEC.
+ *
+ * @return
+ *   Zero on success, negative value on failure.
+ */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FPGA_LTE_FEC_H_ */
diff --git a/drivers/baseband/fpga_lte_fec/meson.build b/drivers/baseband/fpga_lte_fec/meson.build
new file mode 100644
index 0000000..bf44e6b
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/meson.build
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+deps += ['bbdev', 'bus_vdev', 'ring', 'pci', 'bus_pci']
+name = 'bbdev_fpga_lte_fec'
+allow_experimental_apis = true
+sources = files('fpga_lte_fec.c')
diff --git a/drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map b/drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map
new file mode 100644
index 0000000..e923270
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map
@@ -0,0 +1,3 @@
+DPDK_19.08 {
+    local: *;
+};
diff --git a/drivers/baseband/meson.build b/drivers/baseband/meson.build
index 40a87d2..391bd51 100644
--- a/drivers/baseband/meson.build
+++ b/drivers/baseband/meson.build
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
 
-drivers = ['null', 'turbo_sw']
+drivers = ['null', 'turbo_sw', 'fpga_lte_fec']
 
 config_flag_fmt = 'RTE_LIBRTE_@0@_PMD'
 driver_name_fmt = 'rte_pmd_@0@'
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 2c3d07a..cdd6073 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -216,6 +216,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_NETVSC_PMD)     += -lrte_pmd_netvsc
 
 ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += -lrte_pmd_fpga_lte_fec
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 03/10] bbdev: renaming non-generic LTE specific structure
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
                         ` (6 subsequent siblings)
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Renaming of the enums and structure which were LTE specific to
allow for extension and support for 5GNR operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     | 103 ++++++++++++-----------
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  36 ++++----
 lib/librte_bbdev/rte_bbdev_op.h                  |  26 +++---
 5 files changed, 86 insertions(+), 85 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index 19e7689..7e05b94 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -607,9 +607,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -621,9 +621,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1332,14 +1332,15 @@ struct __rte_cache_aligned fpga_queue {
 validate_enc_op(struct rte_bbdev_enc_op *op)
 {
 	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
-	struct rte_bbdev_op_enc_cb_params *cb = NULL;
-	struct rte_bbdev_op_enc_tb_params *tb = NULL;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
 	uint16_t kw, kw_neg, kw_pos;
 
 	if (turbo_enc->input.length >
-			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+			RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+				turbo_enc->input.length,
+				RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return -1;
 	}
@@ -1372,32 +1373,32 @@ struct __rte_cache_aligned fpga_queue {
 
 	if (turbo_enc->code_block_mode == 0) {
 		tb = &turbo_enc->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+		if (tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1406,23 +1407,23 @@ struct __rte_cache_aligned fpga_queue {
 					tb->cab, tb->c);
 			return -1;
 		}
-		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+		if ((tb->ea < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->ea % 2))
 				&& tb->r < tb->cab) {
 			rte_bbdev_log(ERR,
 					"ea (%u) is less than %u or it is not even",
-					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+					tb->ea, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
-		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+		if ((tb->eb < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->eb % 2))
 				&& tb->c > tb->cab) {
 			rte_bbdev_log(ERR,
 					"eb (%u) is less than %u or it is not even",
-					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+					tb->eb, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
 		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
 			rte_bbdev_log(ERR,
 					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
@@ -1431,7 +1432,7 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
 			rte_bbdev_log(ERR,
 					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
@@ -1446,23 +1447,23 @@ struct __rte_cache_aligned fpga_queue {
 		}
 	} else {
 		cb = &turbo_enc->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 
-		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+		if (cb->e < RTE_BBDEV_TURBO_MIN_CB_SIZE || (cb->e % 2)) {
 			rte_bbdev_log(ERR,
 					"e (%u) is less than %u or it is not even",
-					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+					cb->e, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
-		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 		if (cb->ncb < cb->k || cb->ncb > kw) {
 			rte_bbdev_log(ERR,
 					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
@@ -1655,8 +1656,8 @@ struct __rte_cache_aligned fpga_queue {
 validate_dec_op(struct rte_bbdev_dec_op *op)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
-	struct rte_bbdev_op_dec_cb_params *cb = NULL;
-	struct rte_bbdev_op_dec_tb_params *tb = NULL;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
 
 	if (op->mempool == NULL) {
 		rte_bbdev_log(ERR, "Invalid mempool pointer");
@@ -1713,33 +1714,33 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		tb = &turbo_dec->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c > tb->c_neg) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1757,12 +1758,12 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		cb = &turbo_dec->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 	}
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 94aa536..374d177 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -34,9 +34,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -103,7 +103,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -158,9 +158,9 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -172,8 +172,8 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 #endif
@@ -257,7 +257,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -277,7 +277,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -295,7 +295,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -313,7 +313,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -439,9 +439,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -466,9 +466,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -773,9 +773,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1074,7 +1074,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index 6be53f5..f61c115 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,22 +26,22 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
  * Maximum number of Code Blocks in Transport Block. It is calculated based on
  * maximum size of one Code Block and one Transport Block (considering CRC24A
  * and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
@@ -133,7 +133,7 @@ struct rte_bbdev_op_data {
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -204,7 +204,7 @@ struct rte_bbdev_op_dec_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -288,7 +288,7 @@ struct rte_bbdev_op_turbo_dec {
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
+struct rte_bbdev_op_enc_turbo_cb_params {
 	/**< The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
@@ -305,7 +305,7 @@ struct rte_bbdev_op_enc_cb_params {
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
+struct rte_bbdev_op_enc_turbo_tb_params {
 	/**< The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
@@ -320,7 +320,7 @@ struct rte_bbdev_op_enc_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -375,9 +375,9 @@ struct rte_bbdev_op_turbo_enc {
 	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 04/10] bbdev: extension of BBDEV API for 5G FEC
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (2 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
                         ` (5 subsequent siblings)
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=:\b, Size: 44397 bytes --]

Extension to BBDEV operations to support 5G
on top of existing 4G operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 lib/librte_bbdev/rte_bbdev.c    |  22 +-
 lib/librte_bbdev/rte_bbdev.h    | 135 +++++++++-
 lib/librte_bbdev/rte_bbdev_op.h | 567 ++++++++++++++++++++++++++++++++--------
 3 files changed, 602 insertions(+), 122 deletions(-)

diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index a3ab5d9..7e4acfc 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev * __rte_experimental
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev * __rte_experimental
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev * __rte_experimental
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev * __rte_experimental
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool * __rte_experimental
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index d131692..a0e9b1a 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -161,7 +161,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -313,7 +313,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -433,6 +433,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -506,6 +514,67 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -566,6 +635,68 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index f61c115..992391a 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -31,57 +31,61 @@
 #define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
 #define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
 #define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,114 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16),
+	/** Set if a device supports loop-back access to
+	 *  HARQ internal memory. Intended for troubleshooting.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK = (1ULL << 17)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +220,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +232,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +240,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +255,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +356,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
+	};
+};
+
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	* per bit of the original CB.
+	*/
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {1,2,4,6,8}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
 	};
 };
 
+/** Turbo encode code block parameters */
 struct rte_bbdev_op_enc_turbo_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
+/** Turbo encode transport block parameters */
 struct rte_bbdev_op_enc_turbo_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +549,38 @@ struct rte_bbdev_op_enc_turbo_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +597,131 @@ struct rte_bbdev_op_enc_turbo_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched CB or TB output buffer */
 	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
+		/** Struct which stores Code Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
+		/** Struct which stores Transport Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched TB or CB output buffer */
+	struct rte_bbdev_op_data output;
+
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+	};
+};
+
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Amount of memory for HARQ in external DDR in MB */
+	uint16_t harq_memory_size;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +729,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -513,7 +852,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -548,7 +888,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 05/10] docs/guides: updating bbdev API for 5GNR operations
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (3 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
                         ` (4 subsequent siblings)
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

The documentation captures the related change in
BBDEV API to support 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/prog_guide/bbdev.rst | 505 ++++++++++++++++++++++++++++++++++++----
 1 file changed, 458 insertions(+), 47 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 038bc6e..3858daf 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -166,9 +166,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +220,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +234,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +266,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +336,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +406,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +455,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +525,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +552,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +627,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +658,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +679,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +710,376 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK                        |
+| Set if a device supports loopback access to HARQ internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {1,2,4,6,8} from pi/2-BPSK to 256QAM           |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (4 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
                         ` (3 subsequent siblings)
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Implementation still based on Intel SDK libraries
optimized for AVX512 instructions set and 5GNR.
This can be also build for AVX2 for 4G capability or
without SDK dependency for maintainance.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                               |   1 +
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 686 ++++++++++++++++++++++-
 drivers/baseband/turbo_sw/meson.build            |  10 +
 mk/rte.app.mk                                    |   8 +-
 5 files changed, 707 insertions(+), 13 deletions(-)

diff --git a/config/common_base b/config/common_base
index cc13025..67e1cc6 100644
--- a/config/common_base
+++ b/config/common_base
@@ -530,6 +530,7 @@ CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 CONFIG_RTE_BBDEV_SDK_AVX2=n
+CONFIG_RTE_BBDEV_SDK_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index 414d0d9..4aa05d2 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -3,7 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-
 # library name
 LIB = librte_pmd_bbdev_turbo_sw.a
 
@@ -34,6 +33,20 @@ LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
 LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 endif
 
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),n)
+$(error "CONFIG_RTE_BBDEV_SDK_AVX512 requires CONFIG_RTE_BBDEV_SDK_AVX2 set")
+endif
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
 # library version
 LIBABIVER := 1
 
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 374d177..2f06369 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,11 +14,24 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
 #ifdef RTE_BBDEV_SDK_AVX2
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
 
 #define DRIVER_NAME baseband_turbo_sw
 
@@ -84,6 +97,7 @@ struct turbo_sw_queue {
 	enum rte_bbdev_op_type type;
 } __rte_cache_aligned;
 
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline char *
 mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
@@ -158,7 +172,8 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
 						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
@@ -172,25 +187,60 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			}
+		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.harq_memory_size = 0,
+			.num_buffers_src =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
 	static struct rte_bbdev_queue_conf default_queue_conf = {
 		.queue_size = RTE_BBDEV_QUEUE_SIZE_LIMIT,
 	};
-
 #ifdef RTE_BBDEV_SDK_AVX2
 	static const enum rte_cpu_flag_t cpu_flag = RTE_CPUFLAG_SSE4_2;
 	dev_info->cpu_flag_reqs = &cpu_flag;
 #else
 	dev_info->cpu_flag_reqs = NULL;
 #endif
-
 	default_queue_conf.socket = dev->data->socket_id;
 
 	dev_info->driver_name = RTE_STR(DRIVER_NAME);
@@ -277,7 +327,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -285,7 +335,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -420,6 +470,7 @@ struct turbo_sw_queue {
 };
 
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -475,16 +526,21 @@ struct turbo_sw_queue {
 	return 0;
 }
 #endif
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -508,11 +564,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -541,11 +600,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -572,13 +634,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -754,6 +819,143 @@ struct turbo_sw_queue {
 #endif
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -847,6 +1049,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -863,6 +1152,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
@@ -887,7 +1193,11 @@ struct turbo_sw_queue {
 		struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -905,11 +1215,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -925,11 +1237,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -1022,6 +1335,202 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in LDPC decoder output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		harq_out = NULL;
+		if (m_harq_out != NULL) {
+			/* Initialize HARQ data length since we overwrite */
+			m_harq_out->data_len = 0;
+			/* Check there is enough space
+			 * in the HARQ outbound buffer
+			 */
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		}
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in HARQ output mbuf");
+			return;
+		}
+		/* get output data starting address and overwrite the data */
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1080,6 +1589,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1101,6 +1611,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1124,6 +1731,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1143,6 +1767,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1158,6 +1800,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1270,6 +1930,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
index 438b5a7..33345aa 100644
--- a/drivers/baseband/turbo_sw/meson.build
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -23,6 +23,16 @@ if dpdk_conf.has('RTE_BBDEV_SDK_AVX2')
 		includes += include_directories(path + '/lib_common')
 	endif
 endif
+if dpdk_conf.has('RTE_BBDEV_SDK_AVX512')
+	ext_deps += cc.find_library('libldpc_encoder_5gnr', dirs: [path + '/lib_ldpc_encoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libldpc_decoder_5gnr', dirs: [path + '/lib_ldpc_decoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libLDPC_ratematch_5gnr', dirs: [path + '/lib_LDPC_ratematch_5gnr'], required: true)
+	ext_deps += cc.find_library('librate_dematching_5gnr', dirs: [path + '/lib_rate_dematching_5gnr'], required: true)
+	includes += include_directories(path + '/lib_ldpc_encoder_5gnr')
+	includes += include_directories(path + '/lib_ldpc_decoder_5gnr')
+	includes += include_directories(path + '/lib_LDPC_ratematch_5gnr')
+	includes += include_directories(path + '/lib_rate_dematching_5gnr')
+endif
 
 deps += ['bbdev', 'bus_vdev', 'ring']
 name = 'bbdev_turbo_sw'
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index cdd6073..a586388 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -226,7 +226,13 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcr
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif # CONFIG_RTE_BBDEV_SDK_AVX512
 endif # CONFIG_RTE_BBDEV_SDK_AVX2
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 07/10] docs/guides: updating building steps for BBDEV PMD
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (5 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
                         ` (2 subsequent siblings)
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

This now includes steps to build with either
libraries for AVX2, or AVX512 or no dependency.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/bbdevs/turbo_sw.rst | 42 +++++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 455fa1d..2785a50 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -5,20 +5,21 @@ SW Turbo Poll Mode Driver
 =========================
 
 The SW Turbo PMD (**baseband_turbo_sw**) provides a software only poll mode bbdev
-driver that can optionally utilize Intel optimized libraries for LTE Layer 1
-workloads acceleration.
+driver that can optionally utilize Intel optimized libraries for LTE and 5GNR
+Layer 1 workloads acceleration.
 
 Note that the driver can also be built without any dependency with reduced
 functionality for maintenance purpose.
 
 To enable linking to the SDK libraries see detailed installation section below.
-One flag can be enabled depending on whether the target machine can support
-AVX2 instructions sets and the related SDK libraries for vectorized
+Two flags can be enabled depending on whether the target machine can support
+AVX2 and AVX512 instructions sets and the related SDK libraries for vectorized
 signal processing functions are installed :
 - CONFIG_RTE_BBDEV_SDK_AVX2
-
-By default this flag is disabled. For AVX2 machine and SDK
-library installed then this flag can be enabled.
+- CONFIG_RTE_BBDEV_SDK_AVX512
+By default these 2 flags are disabled by default. For AVX2 machine and SDK
+library installed then the first flag can be enabled. For AVX512 machine and
+SDK library installed then both flags can be enabled for full real time capability.
 
 This PMD supports the functions: FEC, Rate Matching and CRC functions detailed
 in the Features section.
@@ -45,11 +46,25 @@ For the LTE decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the 5G NR LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the 5G NR LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -60,7 +75,7 @@ FlexRAN SDK Download
 As an option it is possible to link this driver with FleXRAN SDK libraries
 which can enable real time signal processing using AVX instructions.
 
-These libraries are available through this link `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
+These libraries are available through this `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
 
 After download is complete, the user needs to unpack and compile on their
 system before building DPDK.
@@ -115,14 +130,13 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
-
 Initialization
 --------------
 
-In order to enable this virtual bbdev PMD, the user must:
+In order to enable this virtual bbdev PMD, the user may:
 
 * Build the ``FLEXRAN SDK`` libraries (explained in Installation section).
 
@@ -137,9 +151,11 @@ Example:
     export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/install
     export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/
 
-* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y``
+* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y`` and ``CONFIG_RTE_BBDEV_SDK_AVX512=y``
   in DPDK common configuration file ``config/common_base`` to be able to use
   the SDK libraries as mentioned above.
+  For AVX2 machine it is possible to only enable CONFIG_RTE_BBDEV_SDK_AVX2
+  for limited 4G functionality.
   If no flag are set the PMD driver will still build but its capabilities
   will be limited accordingly.
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 08/10] test-bbdev: update of bbdev test-app for 5GNR
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (6 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 10/10] doc: announce bbdev changes Nicolas Chautru
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Extending test framework for FEC 5GNR operations
for UT verification and profiling.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/main.c                 |   48 +-
 app/test-bbdev/main.h                 |    6 +-
 app/test-bbdev/meson.build            |    3 +
 app/test-bbdev/test-bbdev.py          |    7 +
 app/test-bbdev/test_bbdev.c           |   12 +-
 app/test-bbdev/test_bbdev_perf.c      | 1233 ++++++++++++++++++++++++++++++---
 app/test-bbdev/test_bbdev_vector.c    |  517 +++++++++++++-
 app/test-bbdev/test_bbdev_vector.h    |   14 +-
 app/test-bbdev/turbo_enc_default.data |    2 +-
 9 files changed, 1715 insertions(+), 127 deletions(-)

diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..d3f2b77 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -7,3 +7,6 @@ sources = files('main.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
 deps += ['bbdev', 'bus_vdev']
+if dpdk_conf.has('RTE_LIBRTE_PMD_FPGA_LTE_FEC')
+	deps += ['bbdev_fpga_lte_fec']
+endif
\ No newline at end of file
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
index 25340ec..0194be0 100755
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..19585b7 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,58 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifndef RTE_BUILD_SHARED_LIB 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set PF mode :
+		 * true if PF is used for data plane
+		 * false for VFs
+		 */
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+#endif
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +784,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +823,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +869,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +888,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +943,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +977,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +998,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1107,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1306,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1387,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1424,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1457,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1490,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1527,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1554,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1569,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1620,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
-		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
 
-		create_reference_dec_op(op_params->ref_dec_op);
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
+		}
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
+
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
+		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1707,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1731,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1776,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1799,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1884,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1899,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1988,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2099,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2286,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2299,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2452,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, itr mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2475,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2495,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2543,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1841,7 +2566,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	tp->ops_per_sec /= TEST_REPETITIONS;
 	tp->mbps /= TEST_REPETITIONS;
-	ret |= rte_atomic16_read(&tp->processing_status);
+	ret |= (int)rte_atomic16_read(&tp->processing_status);
 
 	/* Wait for slave lcores operations */
 	for (used_cores = 1; used_cores < num_lcores; used_cores++) {
@@ -1855,14 +2580,16 @@ typedef int (test_case_function)(struct active_device *ad,
 
 		tp->ops_per_sec /= TEST_REPETITIONS;
 		tp->mbps /= TEST_REPETITIONS;
-		ret |= rte_atomic16_read(&tp->processing_status);
+		ret |= (int)rte_atomic16_read(&tp->processing_status);
 	}
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2667,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2805,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2908,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2917,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2996,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3030,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3061,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3163,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3196,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3224,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3342,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3370,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3396,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3502,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3518,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..d478d76 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -2,7 +2,7 @@
  * Copyright(c) 2017 Intel Corporation
  */
 
-#ifdef RTE_EXEC_ENV_FREEBSD
+#ifdef RTE_EXEC_ENV_BSDAPP
 	#define _WITH_GETLINE
 #endif
 #include <stdio.h>
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 09/10] test-bbdev: test vectors for 5GNR verification
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (7 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 10/10] doc: announce bbdev changes Nicolas Chautru
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Adding LDPC vectors for UT verification, coverage,
and profiling for 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 ++
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 +++++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 ++++++++++++++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 +++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 ++
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++++
 17 files changed, 5581 insertions(+)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 120000
index 0000000..3058cc0
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_v2342.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 120000
index 0000000..371cbc6
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..c8d38e3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,354 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..19a1537
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,685 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..d1f8f45
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,903 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..12c05d0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..3143fa0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..2ea2b8d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..63bc8da
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..aaa3c98
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..03422fb
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..f6de8db
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..bc84e55
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_DL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v2342.data b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
new file mode 100644
index 0000000..233d7a9
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
@@ -0,0 +1,150 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+output0 =
+0xADE67AA9, 0x1CB4EBDD, 0x74E76684, 0xE3941FC7, 0x48DAC304, 0x1E2C198D, 0xFE88B908, 0xEC21A3DE,
+0xBF314AB7, 0x634E3DCB, 0x0DA84E23, 0x58B1B22B, 0x02B837A0, 0x8B04BF38, 0xFB8DB526, 0x1BFF82E9,
+0x4226C4D0, 0xF7A9950E, 0x6DA4D0B2, 0x38E15395, 0x94C1A379, 0x243ED666, 0x3E7255B3, 0x7DB378DB,
+0xA3CE1377, 0xE0137291, 0x42DB50AC, 0xEB2D0A13, 0xCA55944A, 0x223DF8E0, 0xB800D1CF, 0xAA2E7577,
+0x50153EC5, 0x5E3C8557, 0x63DDEC8F, 0x49A256F8, 0x41ABFD56, 0xEB76A4D7, 0x4F4E9C7C, 0x3508DA39,
+0x530F9DA0, 0xFFD20E32, 0x395F7963, 0x1C48B3F7, 0xD3BC29C7, 0x4D6ED90F, 0xC1C9EF58, 0x9B9D4A13,
+0x417BF36E, 0x1BB5FDD8, 0x72793F28, 0x2F297FA5, 0x204AA988, 0x28317636, 0x87878EC8, 0x33024F9D,
+0xE651388E, 0x560ACA6E, 0xEC3D0B64, 0xCB515AAE, 0xE42B9ECD, 0x2AE2B0D1, 0xCD659A28, 0x8BD5E4D8,
+0x0D618DD6, 0x14CF8DB1, 0xE9F82BB6, 0x558C50A4, 0xA9809F8C, 0x15646823, 0x6037DB27, 0x26A0ABAA,
+0xF8DC4AC6, 0x533494C9, 0x7BF60155, 0x7BB16D05, 0x89F7A1BA, 0xCB069606, 0x6572D71A, 0x001917EB,
+0xD353913B, 0x128F78BD, 0x83BCE2A3, 0xE0065266, 0x9E7E608F, 0x25889472, 0x184ADD42, 0xD42B429B,
+0x7A8D861F, 0x54C97AB8, 0xB8B04229, 0xDF3DE03A, 0xB97E311E, 0xBB2A1FF8, 0x53AC8D5B, 0x1825B5DC,
+0x9843DD95, 0x0214EAA6, 0x3B1CF504, 0xD3BE316F, 0x9B1D3C64, 0x8EF4A268, 0xFACBC9AD, 0xDCC6033F,
+0xF801E3D1, 0x92F3E3A1, 0x1EC121AC, 0xA6747F20, 0x6ACC34EF, 0x0F641DC0, 0x42CAB9C3, 0xE04036DD,
+0x97739381, 0x9843A304, 0x929E9AB7, 0x600E057F, 0x892D5F1F, 0x0F718281, 0xD345AA58, 0xF39215C4,
+0xBCAB0B51, 0x1EBEA1B0, 0x68885471, 0xB39AD728, 0x2FF70470, 0x80D01FE5, 0xB41A95C0, 0x01DB8079,
+0xA4C9F364, 0x41860F1A, 0xEBE24F2B, 0x086BFFF0, 0x7B66DE40, 0xFFF665D6, 0x18324792, 0x1D253106,
+0xC41B9BF0, 0xC79347BA, 0x6949A396, 0x279E7A4A, 0x4029B533, 0xE8B382E2, 0x89783E24, 0x3D945C74,
+0x49BD75D8, 0xBAD731A0, 0x48B4AFAB, 0x4383B903, 0x8A6966A6, 0x170B9958, 0x58307AB6, 0x3B627463,
+0x0B981BEA, 0xD8E9A038, 0x723219E7, 0x4F6E5470, 0xE4F3CF92, 0x37AACC8A, 0xA4E46500, 0xE44DDA39,
+0x68690180, 0x33143C47, 0x9A6EE438, 0x5FA00F23, 0xD2CEE248, 0x46090D1A, 0xDE5491AE, 0x417D853E,
+0xC607B731, 0x79D7DCCF, 0x13200C03, 0x07CAB5E9, 0xB59525EA, 0xE47B66A5, 0xB125AAAB, 0x20CCFE07,
+0x82F1F4E8, 0xCF44BD2B, 0xC462D58D, 0x60A6A73B, 0x0D0CA712, 0xFE342922, 0x15123217, 0x7A02E89D,
+0x49B44659, 0xB9F3AE54, 0xAFC472BC, 0x79AF1A6D, 0x7430BA59, 0xEA13F81C, 0x33592D7D, 0x1EF1E1DC,
+0xF51FF0C8, 0x80F7B07E, 0xC1536EBB, 0x586CB41D, 0x10AF823C, 0x390EA571, 0x7D54C302, 0xA049ECBE,
+0x368C3981, 0x38B72BEE, 0x833C5F98, 0x2E18D066, 0x5742B0D2, 0xA8F5F0B8, 0x9144935D, 0x7392A908,
+0x3175DBC0, 0x29AA2F7C, 0xF53FED73, 0xFE41236B, 0x091E47EC, 0xD2195647, 0xCAAEA8B5, 0x0ED9750E,
+0xF5027456, 0xF1838780, 0x16FFE8EE, 0xA21568C6, 0xC5E4FCAF, 0x27C24C4B, 0x3DE89E8E, 0x5464ADC6,
+0x865C8493, 0x41032697, 0xD5F82075, 0x49167AF7, 0xED1AA45C, 0xA6B20018, 0xB1776BA9, 0x9F2129B6,
+0x611C417D, 0x3B72E8B6, 0x1AA7DB22, 0xF4ADF40E, 0xA24B8EFB, 0xF25C5F9D, 0xE52C047E, 0x3B8C9A26,
+0x4C0760E4, 0x73027C0E, 0x1F5977D8, 0x6CAF979D, 0xEF39719F, 0x70129F6A, 0x0CC821CD, 0x9853AE70,
+0xC3EB24E5, 0xE4EED628, 0x9F904579, 0xFD680398, 0x2C84DF92, 0xF92DA147, 0xB2F7C7C3, 0x59052EB6,
+0x4DF89375, 0x275D0C58, 0xBE32DA96, 0x7A3C4C7F, 0xC5C2B02F, 0x651B2665, 0x36E5DC9B, 0x98B1F08B,
+0x175A5AE0, 0xBEC258CA, 0xDDF6B687, 0x49E3DBE6, 0x07C1C780, 0x63E3B861, 0x05FDAAEC, 0xFA7C38A4,
+0x5EE93618, 0xF8B78C2B, 0xBB5035B7, 0x7E297AC8, 0x6CC27636, 0x30D44C50, 0xECB1065B, 0xB00AB96E,
+0x87B3C67E, 0x0AA61403, 0xF514C18B, 0xDBF3CEEB, 0x62ACA4C1, 0x9A0D1691, 0x07E3DF50, 0xC42070E8,
+0x98F349F7, 0xC1556162, 0x6F7D7109, 0xF6C7B215, 0x73748B4E, 0xAF9F5BFF, 0xDD1B8AE6, 0xA9C710AA,
+0x5965A4DA, 0x762A0F38, 0xD42C7578, 0xBA69C66D, 0x2CCABCB7, 0x932E7065, 0xD6F3F37E, 0x729F1412,
+0xE5EAEB07, 0x1C2D7291, 0x07E5E6C9, 0xCA16EED5, 0xD488558D, 0x235C11EB, 0x579B8BCA, 0xAC352250,
+0x858BD553, 0xECCBE50A, 0x370421F0, 0xA66CD423, 0x1424CB84, 0x286FBE65, 0xDFF5A1E9, 0x71ABB615,
+0xAE331217, 0xE8E333A5, 0x99044B7D, 0x26264E30, 0x35A7FEA1, 0x3E933B79, 0x4151D8A3, 0x672D78D6,
+0xC586C999, 0xEFFEFF6F, 0xD1EC082A, 0x0EB38797, 0x85F77710, 0x5FEAE876, 0x78FBE4E2, 0x6284663A,
+0x6E54B0AF, 0x5C107AF7, 0x24005DF7, 0xA994E2EC, 0xAFDDB6FF, 0x79019A53, 0xE1B8A123, 0x997B7B95,
+0x9BFC63E3, 0xEAEEB40C, 0x14AECFE6, 0xC29A3F38, 0x21833356, 0x6B65DAAC, 0x9AEADA3F, 0x16582D82,
+0xD6E7B8EC, 0xEE67A365, 0x3F33FD50, 0xABD603DC, 0x0DA08D72, 0x69E01AFD, 0x4862B58E, 0xE1DFCA98,
+0x5FE11079, 0x40992E48, 0x0589689B, 0xE836FACC, 0x87FFD4D6, 0x9F5DF070, 0x6BC69520, 0x5CF6F087,
+0x66523DC9, 0x54D0EEA3, 0xDD820FC2, 0x663BFA8E, 0x2561E952, 0xA82EDAB8, 0x3FC1092B, 0x8591A2C1,
+0x0E9E67EF, 0x4A334D9C, 0x867BB16F, 0xB6A1713F, 0xED8D7EFE, 0xF2926C44, 0xD2E97512, 0xE8301103,
+0x3DD30957, 0xEFB71B3F, 0x4AE801D5, 0x8F75F730, 0x0C34FBC9, 0x7A60C668, 0x77908ED9, 0x963C0DE4,
+0x5279E29C, 0x6759B153, 0x747E5E7B, 0x4C510BE5, 0x32BE2132, 0x54B361E0, 0xCB4D9616, 0x3C404BA4,
+0x4BA0E910, 0x05F06AD1, 0xAE3FBC5C, 0x82CB03B4, 0xF0EC45FF, 0x9888791B, 0xDE4B9813, 0xF83B4090,
+0x3CC4BA28, 0x7CFE8854, 0x9CA7BC9D, 0x0E41843E, 0xF92535F6, 0xF19CC699, 0x0821CBF4, 0xF15F3F82,
+0xCF6CC14C, 0xF27DA57E, 0xB8DB8982, 0xFC7E263D, 0x63C36111, 0x61587ABA, 0xB87CB18D, 0x2C806A64,
+0xD8DFFF2C, 0xC8540E77, 0x1A340B85, 0xB6FBA97F, 0x77A1958D, 0x419648E8, 0x80A65729, 0xC3EC1141,
+0x3909010F, 0x84F8C534, 0x2FEDE987, 0x83851AC8, 0xAE88B841, 0xE8284692, 0x3243F04B, 0x9C845E80,
+0x4A7FC52E, 0xF6B1035A, 0x59E1C576, 0x21620CB8, 0xF047E16D, 0x079284B7, 0x00B6C955, 0xA7B19103,
+0x7B9EB069, 0x733E2443, 0x489A6EAE, 0x7BB17B2C, 0x6AB4F848, 0xEFA299A2, 0xC464BE42, 0x36F27FC5,
+0xE70CEAB2, 0x6FCB4031, 0x9C0A14C0, 0x682AA1A3, 0x36E7032C, 0x57BA22A8, 0x085288CE, 0xDE62ADD4,
+0xC0138A07, 0x4A5576F5, 0xC0F33DE3, 0x919ECA7A, 0x14FFDE87, 0x362897AF, 0xD542F683, 0x86FBC0FC,
+0x8CD6DD3E, 0x25832EDF, 0xC2C9EE74, 0xB244A89B, 0xFEAF2F44, 0x1D631217, 0x80BA2267, 0x097D3F4D,
+0x406264AC, 0x0571B5FF, 0x55658770, 0xE12F6AA3, 0x666D9831, 0x37E17306, 0x88D926AB, 0xBB0CC6D9,
+0xA857A201, 0xB24E5A82, 0xF259D2AE, 0xD09D0FAE, 0x87363A50, 0x583F1CC9, 0x653F73F3, 0x0D04970B,
+0x64D1F222, 0xEF7E0E0B, 0x7F5D49DB, 0xAC4549D9, 0x707D1FCF, 0x3A151C06, 0xFE5DEC4A, 0xE3D6CCBA,
+0x0AA3DA9B, 0x4665CBC5, 0xDF7BCD0F, 0x63DD0FF5, 0xC9C2A642, 0xB40B516D, 0xE259A165, 0xE2E454E1,
+0x0A384EDD, 0x1287018F, 0x2A7A8DFD, 0xF854FCF1, 0x79CAA64E, 0x351AC522, 0xEE65C527, 0x7F160E51,
+0xF465AF5C, 0xE671974B, 0xAF75CA8D, 0x47A5EC29, 0x5F93C8AD, 0x6420D4E9, 0xA5CA4610, 0x265F0BF4,
+0x6622036C, 0xB542C8CB, 0xDFD1FA4F, 0x5869BE19, 0x14605EAE, 0xA438FEA7, 0x9523F5FA, 0xE18FCF2B,
+0x5F11F7B1, 0x7A790EBA, 0xDBDD0005, 0x024E0D8B, 0xC387778B, 0x3C0F1274, 0xA722512C, 0xEAB3C2F3,
+0x11B55F3A, 0x9C2DBBD6, 0xA76C80DC, 0xD63A5DD2, 0x320F7AF2, 0xA707544C, 0x889A3C58, 0x50CCA3B0,
+0xD54FE248, 0x22EF12A3, 0xF618F564, 0x1D9266C8, 0x4E08FB46, 0x6D1D41EB, 0x5CFF2094, 0x116ECB97,
+0x46FD4058, 0x38FBE5CC, 0xE008E8EF, 0x578FAF14, 0x3BEED1D9, 0x8C89B4CE, 0xFC0C33D7, 0x0913ECF8,
+0x498D47D1, 0x5644A9B3, 0x6EA66735, 0xA0F3BA09, 0x948B258F, 0xFA8DE3BE, 0x2FB03145, 0x8D0B61B3,
+0x42D6F53D, 0x031FD745, 0xFF86C938, 0xA32BB471, 0x50208969, 0x9F6909C9, 0x680C6D55, 0x13054044,
+0xDFDEBEF7, 0x35600E83, 0xAFB26C47, 0xCAA86F9F, 0x5B5B65A7, 0x599DA0C3, 0x789EC931, 0x0163D6D4,
+0xF7BBA271, 0x5A755052, 0xFA27CE77, 0xD66ED111, 0x7A5BD527, 0x1B26B948, 0xAA11725B, 0x4A6AC4AD,
+0xDD8EA8DF, 0xF0C618D3, 0xF97999E5, 0x00C42C38, 0x8465BE06, 0x7B6912C9, 0x4AF1F070, 0x4F93EEB0,
+0x19A400FC, 0x0F8A6744, 0x7FD642F2, 0x3AE8F32F, 0x84501DDA, 0xB39068C6, 0x2A5BE1A6, 0x08E231F0,
+0xD52F4D13, 0x89326BE0, 0x3981DD90, 0xA986F547, 0xADF1B2E8, 0x6337CFB6, 0x595FCBC0, 0x2D774749,
+0x1D6C5FF1, 0xF403CE90, 0x16792051, 0xCE248A7D, 0x43E76774, 0xA85ED14A, 0xCFBDEB69, 0xDF559AF6,
+0xC3BF33D1, 0xF03BB486, 0x107D04B0, 0x9B9E9432, 0xE4873EC4, 0xFD7C2E89, 0xFA69FD26, 0xD04F8825,
+0xB9C4FF1F, 0x30F0826C, 0x825A8A34, 0x5EBB4ADC, 0xA71C9FF5, 0xE90ECF8A, 0xFEF3270F, 0x25612AB6,
+0xF8560C1F, 0x625A9ECE, 0x12B9B123, 0xA281D55C, 0x276F3B4A, 0x6CDE95D8, 0x7EE9F866, 0xDC769A4F,
+0xC590E1F4, 0xEA845796, 0x013AFD9E, 0x6F8E1A4D, 0xBEDF18E1, 0x2CC567BD, 0x56CBAE9D, 0xF81716E8,
+0x88834AAE, 0x1C67A0AE, 0xDDB4EB33, 0xF0F874E6, 0x4DE9C550, 0xCEAC73AD, 0x5C800FD8, 0x6A31B61A,
+0xA8B3A501, 0x73639607, 0xC95BAE
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..79294ec
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..c72680b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v9503.data b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
new file mode 100644
index 0000000..1426872
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
@@ -0,0 +1,196 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C, 0xE1952001, 0xB77912DE, 0x52E8BA16,
+0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403, 0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC,
+0xA40F8094, 0xABF43E46, 0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8, 0xBC563FD5,
+0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E, 0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854,
+0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB, 0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3,
+0xB8E4AFE9, 0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87, 0x3E146A49, 0x0391D092,
+0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024, 0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1,
+0xDCD211C3, 0xBF6B0B87, 0xA1624F47, 0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795, 0xEB08B437, 0x1A9899A0, 0x26484B82,
+0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B, 0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B,
+0xC01C79FA, 0x622B9FD8, 0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x6F4B
+
+output0 =
+0x6ED462FE, 0x29726470, 0xE49C87C1, 0x6594725E, 0x64C81AE1, 0xA30C91C2, 0x5B4261AB, 0x7A44E3A4,
+ 0xACBD3DC8, 0x319AF530, 0xF3B21EC1, 0xAC180011, 0x26319FF9, 0x5946FBFD, 0x6F31959A, 0x571501D9,
+ 0xFB1F62B7, 0xF19F6C36, 0x43436C4A, 0x8CA5F436, 0x18AF91B4, 0xD86ED79F, 0x8732D29C, 0x6CE3B559,
+ 0x2DEA712F, 0x52C2E21A, 0x5C4E884C, 0xD2F50500, 0x2140E848, 0xABE47066, 0x8AE3FC46, 0xF0298999,
+ 0x829FE184, 0x51D53B6B, 0x7546D03C, 0xF1CB22DA, 0xB9D6F966, 0x85660A1F, 0xC1296566, 0xB2122E16,
+ 0x2AA38C25, 0xD7AF18FC, 0x489BDDC5, 0x93183097, 0x4C694A3C, 0x40B325F8, 0xEE05DAB2, 0xA6E0C990,
+ 0x839A7753, 0x0251D207, 0x5E1EC6B5, 0xED523076, 0xD985E23A, 0x8CA88259, 0xB0EFF6D4, 0xA9D7749B,
+ 0x32CA6F0E, 0xAAA84E97, 0x0F137B83, 0xE73C3175, 0xA3940FDA, 0xD878B121, 0xFFC8D2EC, 0x95CB65AC,
+ 0xB1CBE446, 0x73520449, 0x7D929F16, 0x69D1873C, 0x85640C01, 0xF2228024, 0x0A5E0461, 0x58B0933A,
+ 0xD37E2375, 0x36CEECEF, 0xE57A48F8, 0x4A35B5C9, 0x016A16A0, 0x6F9BCF30, 0xEB7C3BD0, 0xB1AF27FE,
+ 0x9C389360, 0xA91F2142, 0x51E618D3, 0x5F045697, 0x654C6A49, 0x2E38E30C, 0x9E8F1E63, 0xF1B25686,
+ 0xA0CDFB02, 0xDAEC605D, 0xED910B79, 0xA8E1A341, 0xAD6BD0A3, 0x03BABB0D, 0x4059355C, 0x5ECB8646,
+ 0xFDD9E0C6, 0x69106FD2, 0x47BF857E, 0x740F6313, 0xAB15E1FF, 0x94B21225, 0x600FEDF3, 0x1EF83A71,
+ 0xCE6956EE, 0xE538FC7D, 0x47520BE0, 0xA1A20CF2, 0xCB452B91, 0xEACB9E3C, 0xBA242A34, 0x13C81868,
+ 0xA58AB271, 0x724B350D, 0x95131286, 0xCF74DD61, 0x1D0CF41B, 0x38D046D2, 0xB709708D, 0x4D479AA8,
+ 0x3CBF6817, 0xDF115777, 0xBE69B850, 0x071A2B4C, 0xF3246B56, 0x2881CBA0, 0xAE158E87, 0x36538CB0,
+ 0xEF879197, 0xDBA9C1C7, 0x4EF7235A, 0x56120670, 0xC22DBEC7, 0x7071A05C, 0x376ADBD4, 0x5DD586FC,
+ 0xA638A621, 0x6D49A92A, 0x66F0C925, 0x023FC9DE, 0xF7CA1D36, 0xAF19A18B, 0x2A787792, 0x518938D7,
+ 0x25DE7B4A, 0xDEBD9010, 0x9683558D, 0x9C5694C7, 0x8B2558D0, 0x790CD121, 0x0A35C0D8, 0xCD4FBCED,
+ 0xB89F3275, 0x64A49655, 0xED7992A1, 0xAFB0A4D0, 0x29A9EB1B, 0x9244B2C0, 0x2CD88F45, 0x4AA1E98E,
+ 0x8E32CC3C, 0x8BE5DC7B, 0x759C8B24, 0x8AA119BE, 0x9CFEA065, 0x071F86FD, 0xB83F8181, 0x604FF2FB,
+ 0xAACDC394, 0x0BCC72F5, 0xE9C0CB19, 0x56EAE15F, 0xD33B8DEF, 0x01A1B007, 0xBED7C1A3, 0x18788E49,
+ 0xB565EA30, 0xC269F619, 0x1CF1B024, 0x067E9F59, 0x78E61AB4, 0x3D46CFBB, 0xE58E910B, 0x8E7ACF53,
+ 0x1EB9C15D, 0x4E3C43BF, 0xEF3D8F20, 0x5CC0A030, 0xE10AE4E7, 0xABE24941, 0x9A0C4046, 0x24E090CF,
+ 0x3248C414, 0xAF76560F, 0xCD1B106C, 0x70438AD4, 0x3463D8B0, 0xD85860FE, 0xFCDF0D57, 0xA2DBC09E,
+ 0x44C728C1, 0xD8FEE73E, 0xB1E6B4A5, 0xD0CC95CD, 0xCCEF186F, 0x70AC5D98, 0x57D21267, 0x8543F446,
+ 0x15C8EAA9, 0x0DD357D4, 0x4CE9C090, 0x4E91FADF, 0xE0658E27, 0xFF7AA5D6, 0x176ED723, 0x70D009CB,
+ 0x416ADBAA, 0x1C45865D, 0x105F3A0E, 0x14730450, 0xD0FA1AC9, 0xB76F268C, 0x7B075289, 0xA9455796,
+ 0x65E02F3E, 0xB74521F2, 0xF6CAA6C7, 0x94ABFDAD, 0x1E6D1087, 0xC25A9257, 0x87FAF9A4, 0x5184A0FA,
+ 0x240023D7, 0x7AE0ED45, 0x06E0A838, 0xBB018F31, 0x0FA836D5, 0x09CF6AEC, 0x9BC4F2B2, 0xAE92D5BA,
+ 0xE724036E, 0xE5606DDE, 0x631448F9, 0xFD59B782, 0xF17052E4, 0x66EA4C50, 0xF72C1768, 0x5C24ECEC,
+ 0x6B01B118, 0x89F8A3AB, 0x465FF462, 0xC3896A00, 0xFEC06004, 0xE2DFC70C, 0x3ACF338F, 0x1552E9D0,
+ 0x9F699B77, 0x60AC6D29, 0xBF47FD38, 0x826B0CA8, 0x0515A7AC, 0x1380A222, 0x7D054EA0, 0x3D1BCEC0,
+ 0x21AB6CF3, 0xA889E915, 0xF09D9756, 0x08BA519A, 0xCFFB6BD3, 0x7D5EF4F9, 0x34A0E942, 0x8569A327,
+ 0xFDDC5269, 0x60D8D543, 0x88B34B88, 0x50DEAA10, 0xD0563E1F, 0x80CD122B, 0xDC11607F, 0xCD9D7E05,
+ 0xC0F3510E, 0x414A7545, 0xB8211557, 0x103E6F53, 0x08A47672, 0x04D9C391, 0x3281F25C, 0x7526AAD2,
+ 0x3C89B43B, 0xBA767E59, 0xA2788EAC, 0x5EF9DF3D, 0x8F72BBE6, 0xC4B52A2B, 0xE81A80E9, 0xCD6B24D5,
+ 0x4F934751, 0xA3FCC2B5, 0x1C4FB12A, 0x7C363E45, 0x237CB63A, 0x1F26D6FD, 0xAAF3FE61, 0x48D3B3A8,
+ 0xA2A77A81, 0xADCF4AB4, 0xDF94F9B4, 0x465EA838, 0xCE4BA15C, 0x75826F5A, 0xD537E32C, 0x85F8FECD,
+ 0xD07CAB1C, 0x34F91310, 0xC40B36CA, 0xCCE0297E, 0xFB276610, 0x67DF82EC, 0x8BB58FAA, 0xCEA3BDC2,
+ 0x02B21D68, 0xCC1F8A6C, 0xF902AF4E, 0x271828EA, 0x9028298A, 0xB5BF0156, 0x5A3B3188, 0x6CCB6806,
+ 0xE2F3A4A2, 0x3B776BB9, 0x66D01790, 0x133F2414, 0x1445FE7D, 0x5CC79E5B, 0xB95FD30F, 0x50971FC5,
+ 0x8D6AFECA, 0x3FB2427C, 0xC1A980EC, 0x54C9F2AF, 0x0F509DF3, 0x1B950AA4, 0x1E5B1596, 0x93E974B9,
+ 0x71D51A0F, 0xC973F4DD, 0x79BF62A6, 0xC72F58F9, 0xCAD478D6, 0x0F7C36C7, 0x05D08481, 0x43958D67,
+ 0x93F11E1A, 0xDCDDCE62, 0xB457AC62, 0xD4A98268, 0xA793471A, 0x7AB637E0, 0x1B9BA86C, 0x456B5EF7,
+ 0xD2E75711, 0xF95E6BCD, 0xD3043467, 0x056F1621, 0x21D58D4E, 0x0C9EF57E, 0x96B645B1, 0xF5A80340,
+ 0xBD9A4C7A, 0x4D94A305, 0x59D0F9B4, 0x113F56F9, 0xE0A948B5, 0xBF982299, 0xA05D1EA1, 0xE9C50F8A,
+ 0xAF6B8F04, 0x6B05485E, 0x17DD458A, 0xFB819464, 0x5CE2F61F, 0xECF95F48, 0xA26CFBA2, 0x6A0FD00F,
+ 0xA7A2CB0F, 0xFE10768D, 0x4A258743, 0xBBF2C41A, 0xF519DBEE, 0x9DA676B6, 0xE89449C9, 0x3E13EBE5,
+ 0x4A4A42A5, 0x42663182, 0xDAAF85AB, 0xCC671BCB, 0x217491EE, 0xDCC9B6F2, 0xE1A3A7EA, 0x7B13F2F9,
+ 0xCFFCBC9F, 0x3D8FF387, 0x71ABA888, 0x2D3FE4C1, 0x081AB3DC, 0xBF21BA4B, 0x4ACE0F00, 0x6F5AB592,
+ 0xD328F08C, 0x542388E9, 0xE7A4157A, 0xE8532856, 0xE8DC528E, 0x3F2356AE, 0x76867882, 0xEC11E6D0,
+ 0x0C2DD257, 0x40A7C558, 0x354F885C, 0x2A2E0757, 0x6C0A6D95, 0xE0C23A09, 0xD1F32FF7, 0x7E27842E,
+ 0x3CDFD97E, 0x2F6807FB, 0xDBED07BD, 0xA039645B, 0x324B0955, 0x73620D27, 0x0C47D75F, 0x511BD37A,
+ 0xE80C4C44, 0xA3D77AFE, 0x058B503D, 0x391AC187, 0xD7425F0B, 0x93876765, 0x10CADF4C, 0xC4F3539A,
+ 0xF17B776C, 0x017BDEFA, 0x74F4651F, 0x65FBC1E5, 0xF55CC6B6, 0x1752401A, 0x85FB6434, 0xB8FD0F06,
+ 0x4D0D80FF, 0x0DD8438D, 0x1C5844B7, 0x31ECF66B, 0xF8A8B528, 0xA9BE0373, 0xC401C7FC, 0x3BA1FFF4,
+ 0x63946BBD, 0x82514893, 0x9CE303D6, 0x51EA2484, 0x054CACA2, 0x3F812B32, 0x0F3C603F, 0x4B3D86B6,
+ 0xD33F5950, 0x3340BFC0, 0x47CEB79D, 0x1CAB5D3C, 0x74897EB5, 0x1C320D6D, 0x8F0480D2, 0x1384331B,
+ 0x8363A7B3, 0xA5439504, 0x0E06AA80, 0x4BBFF55C, 0x470094F3, 0x8DE8E9AA, 0xABA72796, 0x4333B263,
+ 0x6FEF04EB, 0xF921C722, 0x9599B4C8, 0xBFEFF55A, 0xF89AA502, 0xDFE85218, 0x0EE15930, 0x8B2AA7F8,
+ 0xDDB03823, 0x7427A3C2, 0x8E4AF556, 0x66A9640E, 0x2EA271AE, 0xFC5BB50C, 0xDC50B432, 0xF78BB3D6,
+ 0xA06156DE, 0x5A7D7A40, 0x40BD74BF, 0x882CC19B, 0xDB2B6143, 0x5532686C, 0xA6D65320, 0x6AB5B32A,
+ 0x34129535, 0x9E41D92F, 0x3D86A085, 0xA27DE0C1, 0x6FFBEC11, 0x77A4BE81, 0xCE1DF886, 0x318E96BA,
+ 0x82C84B84, 0x40B9874F, 0x39F9F9A9, 0x21E0AACB, 0x237FC858, 0xFF700E2D, 0xA840518D, 0x5E5ED583,
+ 0x7B11CB4E, 0x99733B7F, 0xFFAAF7A9, 0xB8CB13B7, 0xE67AE45C, 0xFFDA2FC2, 0x47D08BD7, 0xD68BACF6,
+ 0xDAAE30ED, 0x95735CAF, 0xF896B165, 0x395BC94E, 0xADF803B0, 0x76B82F4D, 0xF312DD33, 0x0DD0A49D,
+ 0x0852B35E, 0x4DF14366, 0xBA01C779, 0x1415A8FA, 0xDC10F525, 0x1CE06D80, 0x953089E6, 0x933C3EE5,
+ 0xC18B1022, 0xFAD11D71, 0xA1EA92BF, 0x2AE61798, 0x63D0C0CF, 0x1CF8CA34, 0xDF748AFB, 0xF0FDE897,
+ 0x26FC4399, 0xE563FFC5, 0xE6AFE218, 0x5EE3254B, 0x76565E08, 0x70F5EFBE, 0xBD66AC9A, 0x90853CB1,
+ 0xA002CE55, 0xAFE263F4, 0x804DA5A5, 0xBB971F95, 0x775BDE46, 0xEDA15B5F, 0x3D5A2CFE, 0x6D9FE953,
+ 0xE84541F5, 0x6574FB29, 0xFD3ADC69, 0x1BAEDDED, 0xE3F810C2, 0x87CC8D7C, 0xDC23F894, 0x7635A6DC,
+ 0x294E131B, 0x62FA4471, 0x83D3870E, 0xF82B9324, 0x8A493E04, 0xA8FCDF75, 0x20583A80, 0x5A94424E,
+ 0x18CED906, 0xB417F24A, 0x47089341, 0x62A432C0, 0xFDC17DFD, 0x5B89C6D2, 0xC8C8ED37, 0xD44D38B1,
+ 0x9A6DFF2C, 0x7C5ECB65, 0x76814C50, 0xB3D56A33, 0x5DF124F8, 0xDB92A5D9, 0x210F2E0D, 0x50FFFF1B,
+ 0x1B7ECD90, 0x481ED2FE, 0x094DA8E8, 0xF111F8FA, 0xAC7872DF, 0x4B8FE240, 0xA7CF01FD, 0x72AFAF1B,
+ 0x27BE7F7E, 0xE5F42B34, 0x02807296, 0x325F9CF6, 0x97EE1C92, 0xD5E6F65C, 0x7EA2490F, 0x666E3451,
+ 0xB17E6A43, 0x1AFBE46E, 0x8D2B871B, 0xD52A1A9E, 0x41EBA711, 0x9D4B906B, 0xAEB5A2F6, 0x7EC530E7,
+ 0x063FC87E, 0x48830732, 0xE5EC2B25, 0xA17B0F26, 0x2C63A878, 0x7A1362A1, 0x68B4DE31, 0x6EC14B7E,
+ 0xE65C3B05, 0x8EB452EC, 0xB6DD94CA, 0x8DC592C5, 0x402EA8BE, 0x689F131B, 0xDA3A54D1, 0x41D264AC,
+ 0xAD150ECF, 0xD7750790, 0xBD46E2A0, 0x2DC97F87, 0x2476F6AE, 0x28F4778E, 0xB4B9E75A, 0xE5532AD6,
+ 0xE58A7485, 0xDFDD2553, 0x779D3F91, 0xD89F3033, 0x42BB4152, 0x2F6EFB01, 0xF72C43BB, 0xF1DB8663,
+ 0x5BA625E2, 0x17180017, 0x151F03B3, 0x7FDA9772, 0x1DEB2F8D, 0x178DE5EE, 0xDFF10ACA, 0x2DC29F2A,
+ 0xF2797346, 0xC298535D, 0xB56C1D35, 0x6389138B, 0x54B732AE, 0x3FAF9958, 0x3BFE3E52, 0xA311D83E,
+ 0x50E7B0BD, 0xC28F97B4, 0x8C1FAAB7, 0xD22BD453, 0x4E6A4D65, 0x626B6251, 0x1F547F6C, 0xEF8105A0,
+ 0xB7A062B6, 0xE1325CC7, 0x8207E7A2, 0xB0A9E0D6, 0x097B78C1, 0xC41D4176, 0x13DB573C, 0x5291E598,
+ 0xF4D1AFB4, 0xA93FE970, 0x673042D8, 0xCC98A35A, 0xCEBD4AE5, 0x47B8BB39, 0x5F8A294E, 0x37FDA881,
+ 0x9E81D5BD, 0x47691BD1, 0xFB92FBF8, 0x24AA898D, 0x0D0B5B29, 0xE5E11928, 0x7D356637, 0xC4525D0E,
+ 0x72AFE781, 0xEBE53FCD, 0xBCBB299C, 0xC40B26D3, 0x1C049A63, 0x4621C7F8, 0xD3337531, 0xF5CCAE80,
+ 0x5D3D0BB7, 0x2246BD17, 0xF158D4F9, 0xE5CB58A2, 0x07F5F1E1, 0x9D420346, 0x952C186B, 0x9DBB2227,
+ 0x203D1639, 0xC022D8AD, 0x7A91F3DD, 0x9326CB7B, 0x2971F3FA, 0x7EF8C14B, 0xB7B468DA, 0x840A9104,
+ 0x6F811C48, 0xC0DAC40B, 0x68D75281, 0xB7DCB2D8, 0x9A216C54, 0xEE710DB9, 0x54ADDAC6, 0xF6F71ECF,
+ 0x6F1E0D83, 0xDE5ECA0D, 0xEA40DE93, 0x962D60E7, 0x6B575E29, 0xFFCC6677, 0x0D879692, 0x728CBE24,
+ 0x9011B3F8, 0xAB260F9E, 0x5D71E2CA, 0x501F6613, 0x5F16EE75, 0x0D33E974, 0x8865BBE8, 0x10495EA6,
+ 0x393032AB, 0x6C7F4A61, 0xB685D152, 0x29D429A4, 0x24CA7E33, 0xCD26F3F2, 0x78D85078, 0x0BA90BA3,
+ 0x360CB744, 0xDF999168, 0xB60B3644, 0x39EED49A, 0x4A794E4A, 0x3B6715BF, 0x92D35DC9, 0xF640ADB6,
+ 0xFA96EF3D, 0x0DC22AD1, 0x48262E68, 0x6F620F37, 0x6B29E242, 0xC6FBEEB6, 0x3034A0D9, 0x122EF44F,
+ 0x7EEF61DF, 0xF3854D20, 0x0F84C1DB, 0x0DE504BF, 0x8AE763ED, 0x369AD35F, 0x8BA7B643, 0x44933BB5,
+ 0x49E96357, 0x4C7F9884, 0x2A5BF491, 0xBB8DCDC2, 0x3873C5F5, 0x0DB1AB26, 0x09FF188A, 0x93DE180D,
+ 0xBA757CAC, 0x06AFFBE6, 0x12B37F82, 0x150D3234, 0xC2C0AB1E, 0xC8B4D8F3, 0x65B7BB96, 0xBBF951B8,
+ 0xC4A03C44, 0x7E2FF9B6, 0x86592827, 0xECE0BE1B, 0x0DB32865, 0x5FC2CD73, 0x34AD2D16, 0x3B2057A7,
+ 0xC32C663F, 0xA85CD1EB, 0xEBD5BCF3, 0x439DC2FF, 0x93379CAE, 0x99273984, 0x3659A11F, 0xD5FF53BD,
+ 0x38704C43, 0x3D782532, 0xD7306729, 0x420E909F, 0x4840C5F3, 0xDA80DF8D, 0x53395E04, 0xEF690DCF,
+ 0xF9738931, 0xE91F7065, 0x5EB901A8, 0x176C6A2C, 0x25D062AE, 0xE4CCCB95, 0x93C87277, 0xF8FF911C,
+ 0xD7AE6706, 0xE704A40E, 0x38BCF64B, 0xDDFFF9FD, 0xD1BDE381, 0xA4313A0B, 0x48DDA520, 0xD064D1E3,
+ 0xDBFD61EC, 0x7EA87E9A, 0xF894AAFD, 0xB5565368, 0x2C34933D, 0xF0F50DE9, 0xF91EB25C, 0xE3EC3B8E,
+ 0x5E9409A7, 0xB2A9D39A, 0xB6B19F3F, 0xA6685DC9, 0xCAFC5B74, 0x4CC15F7F, 0x114E5709, 0x31B6E0EB,
+ 0x8CDAA5C4, 0xF5ABD631, 0x12A4A9C0, 0x969011BE, 0x9AB39E96, 0x0D406569, 0x8AE25103, 0x68474C26,
+ 0x9E8D006F, 0x9C8E4F0B, 0x314630FD, 0x2F30B254, 0xFE88FCF4, 0x941FBE2D, 0xC03B55A3, 0xEE474898,
+ 0xEC9B3BD2, 0xDDE00C4B, 0x7F192B54, 0xA25A0DC1, 0xDCF18F59, 0x55F674B4, 0xF6734A46, 0x92B7A7E2,
+ 0xCEDA18D8, 0x90EA738E, 0x7C98FEE8, 0xFC3DE7ED, 0x4075569F, 0x8989B676, 0x326B34DA, 0x52AC749C,
+ 0xAF71ACF8, 0xDC1F65F4, 0x408459F9, 0xD46B650F, 0xFAEDB779, 0xBC0C6EDB, 0xF68DB879, 0x40071FCD,
+ 0x2D01AC86, 0x7952D58A, 0x4F7A42BA, 0xD5C9306C, 0xFA7CC252, 0x48285F83, 0x51CD6BC3, 0x8212BC4D,
+ 0x53828B06, 0x8986B36F, 0x6E00951C, 0x6505074F, 0xAB3AF4CC, 0x12D92810, 0x44F4D0B5, 0x0D7DBCDD,
+ 0x152A5968, 0xA92C4ECA, 0x6795E17F, 0xD02C875E, 0xA4B5A04C, 0x2F0C4295, 0x72678451, 0x59B87A4C,
+ 0xB3AD2988, 0x7B717173, 0x6D0EC6EB, 0xF73B4FC7, 0x645D56E0, 0xBC73769E, 0x9A83ED5C, 0xCE5B332A,
+ 0x151A4D6C, 0xDEB26C33, 0xBA7CFEA9, 0x0FB2D875, 0xE0045E66, 0x9DB0072A, 0x5CFB3C42, 0x8C3FEFD5,
+ 0x4E7CB65C, 0x2905EC79, 0xA2F6C308, 0x296A6794, 0xB589571E, 0x4638BC8F, 0x964B8B40, 0xBE27615F,
+ 0x4E95C30C, 0x2B56A6A8, 0x4BC50BC3, 0x497BB78B, 0x8860A6CC, 0x80830DB7, 0x9D726E3A, 0xE63600FD,
+ 0x7A68F80B, 0x1C5CCCA0, 0x1784B6A4, 0xBCA7EF08, 0x425ABF74, 0x3663AD11, 0x72F2AEC0, 0xA4A940F0,
+ 0xBBC08817, 0x5C158691, 0x7C1ECC0E, 0x1818BB5B, 0x0DE17D9F, 0x350D4BB6, 0xAC21F0FB, 0xB913C7B0,
+ 0xE9DC26F6, 0x25B995C5, 0x0D2E9E6F, 0xD39C93A8, 0x1C775CED, 0xF1E69A7D, 0x0025310F, 0x782BBDF8,
+ 0xFD3E83E4, 0xB5DD602E, 0x1CD9044C, 0x2AFC3405, 0x79E32E1E, 0xB59B4A79, 0x4609271E, 0x1C5E4D7A,
+ 0xA74D0009, 0x319A07E9, 0xCAC3A6FF, 0x8B515C07, 0xE80FE11D, 0x1D59CF05, 0x38F946AE, 0x6324D94E,
+ 0x313D3FE8, 0x310AF64C, 0x3CDE2571, 0x0644DA97, 0xEADBF286, 0x7B5DACA1, 0x8D5D3A54, 0x1376A003,
+ 0x51774091, 0x562A7891, 0xC246A9FA, 0x82C1C05F, 0x0D662D24, 0xAEDDA534, 0x5A96ED06, 0x2C055326,
+ 0xB0F2F5B0, 0x21C1F0F6, 0x6C39F1DE, 0xDE48E8FE, 0xB5CD1538, 0xC4E356AC, 0x1B24FE63, 0xF36D1426,
+ 0xB8B827D2, 0x1576F620, 0x3F49589E, 0xC438975C, 0x64880EDA, 0x7C322884, 0xD3978FBD, 0x4787B61E,
+ 0x2E192772, 0x0584B589, 0x0EAAA684, 0x6D81DE51, 0x63717598, 0x08A48B4D, 0x2DF88EC5, 0xA647285C,
+ 0xFC81F7AE, 0x10E48D34, 0x963F5C91, 0x8F592492, 0xC79010B8, 0x8A6D4936, 0x4759E38B, 0xACFC5255,
+ 0x0C9D02B7, 0x1B52A34E, 0x3B0A60A1, 0x1DB4E220, 0x23DCD523, 0xEA42AD41, 0x9B3CB86B, 0x6C503824,
+ 0x41DC835D, 0x22A311A5, 0x7B7AD03E, 0x6AFA5972, 0x3E506D92, 0x04FED79C, 0xCE801EEF, 0x7BA17C52,
+ 0x3AFFBB6A, 0x96A23185, 0x74316B7B, 0x11D330F6, 0x8484E528, 0xB643261D, 0xCC076540, 0x9116E092,
+ 0x4B6D5634, 0xC9532DCB, 0x0CBBB981, 0xE8D8E41F, 0x7573408A, 0x684F202D, 0x9A92649E, 0xF2CF0C39,
+ 0xF6C540AE, 0x29368636, 0x6A5BD7FB, 0x5044B256, 0x35AEC028, 0x8C12E363, 0xE0A2FE6D, 0x9E8EB149,
+ 0x2ED1CF45, 0x54A9880B, 0x4E295354, 0x83730F2E, 0x279AD027, 0x7051921F, 0xC4E219AC, 0x8B540A9B,
+ 0x947E9DF5, 0x28B61847, 0xC4E32434, 0xF9227028, 0x3D489511, 0xD5A41195, 0xA03EE1BD, 0xD761441F,
+ 0x402F7502, 0x5AB68BEF, 0x5555B735, 0x5918623F, 0x983735E9, 0xE332F1B8, 0x48D83C28, 0x81318EE2,
+ 0xABB8AA53, 0x01F0C3CE, 0xB4291A62, 0x89344F27, 0x5FDEEA6C, 0xE6D22F86, 0x9988C7DC, 0x051A1432,
+ 0xE11867BC, 0xEFA49EEF, 0x48AADD79, 0x33633BF3, 0xA56B57B4, 0xA253AB9F, 0x7FC8340A, 0xAB73B132,
+ 0xF1DFB6CC, 0xC5F02EDA, 0x426782CD, 0xF6648D35, 0xB4AB88A0, 0x9BA7B785, 0x67C03341, 0x22612D33,
+ 0xD32ED490, 0xAAA56F6A, 0x37ECD8CD, 0x518E8140, 0x7390301C, 0xB33A9E62, 0x244220D4, 0xD88AE216,
+ 0x9752DEEA, 0xB8A22F50, 0xBFB221CB, 0xDB4D57A0, 0x02D39A0D, 0x8C311F00, 0x1192748C, 0xB9505446,
+ 0x469C1E7B, 0x3AEFF9A6, 0x7CD5ABE8, 0xD849E5F5, 0x1E2FB30A, 0x18879BD8, 0x6DDD966E, 0xC9BD4B8F,
+ 0xCEEBCCD9, 0x0D881346, 0x20
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v3 10/10] doc: announce bbdev changes
  2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                         ` (8 preceding siblings ...)
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
@ 2019-06-21 16:59       ` Nicolas Chautru
  9 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-21 16:59 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=:\b, Size: 1316 bytes --]

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/rel_notes/release_19_08.rst | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst
index 8c3932d..35d3a09 100644
--- a/doc/guides/rel_notes/release_19_08.rst
+++ b/doc/guides/rel_notes/release_19_08.rst
@@ -88,6 +88,19 @@ New Features
   * Added multi-queue support to allow one af_xdp vdev with multiple netdev
     queues
 
+* **Added a FPGA_LTE_FEC bbdev PMD.**
+
+  Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA PAC
+  (Programmable  Acceleration Card) N3000.  See the
+  :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver.
+  
+* **Updated TURBO_SW bbdev PMD.**
+
+  Updated the ``turbo_sw`` bbdev driver with changes including:
+
+  * Added option to build the driver with or without dependency of external
+    SDK libraries.
+  * Added support for 5GNR encode/decode operations.
 
 Removed Items
 -------------
@@ -140,6 +153,8 @@ ABI Changes
    Also, make sure to start the actual text at the margin.
    =========================================================
 
+* bbdev: New parameters added to support 5GNR operations.
+
 
 Shared Library Versions
 -----------------------
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC
  2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
@ 2019-06-24  2:52         ` Nicolas Chautru
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
                             ` (9 more replies)
  0 siblings, 10 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

v4 update: cosmetic changes reported by ci/checkpatch

This set enables specifically bbdev to support 5GNR operations (previously only LTE specific) and to add the related support to turbo_sw PMD driver, test framework and documentation.

This set is v3 of the serie shared weeks few ago covering BBDEV related new features for 19.08 https://patches.dpdk.org/project/dpdk/list/?series=4657&state=*

Since that, it was suggested with maintainer to have part of that contribution shared as 2 standalone series. They are pending being applied here :
https://patches.dpdk.org/project/dpdk/list/?series=5017
https://patches.dpdk.org/project/dpdk/list/?series=5093

The remaining of that contribution is now being shared on this new serie. 
Since this new serie rely on the 2 series above to apply the patch, I kept this dependency formally as the first 2 squashed commits (1/10 and 2/10) so that not to break CI, but really only the last 8 commits of this serie are specifically requiring review and to be applied on top of the 2 series as flagged to Akhil. 


Nicolas Chautru (10):
  baseband/turbo_sw: baseband/turbo_sw: dependency patch
  baseband/fpga_lte_fec: dependency patch
  bbdev: renaming non-generic LTE specific structure
  bbdev: extension of BBDEV API for 5G FEC
  docs/guides: updating bbdev API for 5GNR operations
  baseband/turbo_sw: extension of turbosw PMD for 5G
  docs/guides: updating building steps for BBDEV PMD
  test-bbdev: update of bbdev test-app for 5GNR
  test-bbdev: test vectors for 5GNR verification
  doc: announce bbdev changes

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    3 +
 app/test-bbdev/test-bbdev.py                       |    7 +
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1233 ++++++++-
 app/test-bbdev/test_bbdev_vector.c                 |  521 +++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 +++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 +
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 ++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 +++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 ++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 +
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    9 +-
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |  105 +-
 doc/guides/prog_guide/bbdev.rst                    |  505 +++-
 doc/guides/rel_notes/release_19_08.rst             |   15 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2675 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 drivers/baseband/fpga_lte_fec/meson.build          |    7 +
 .../rte_pmd_bbdev_fpga_lte_fec_version.map         |    3 +
 drivers/baseband/meson.build                       |    2 +-
 drivers/baseband/turbo_sw/Makefile                 |   28 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  765 +++++-
 drivers/baseband/turbo_sw/meson.build              |   40 +
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  135 +-
 lib/librte_bbdev/rte_bbdev_op.h                    |  585 ++++-
 meson_options.txt                                  |    2 +
 mk/rte.app.mk                                      |   12 +-
 47 files changed, 12376 insertions(+), 386 deletions(-)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/meson.build
 create mode 100644 drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map
 create mode 100644 drivers/baseband/turbo_sw/meson.build

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:31             ` Mokhtar, Amr
                               ` (2 more replies)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
                             ` (8 subsequent siblings)
  9 siblings, 3 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Not meant for review, purely for dependency for CI.
This is a squash of the related serie which
is not applied yet:
option to build turbosw PMD without SDK
https://patches.dpdk.org/project/dpdk/list/?series=5093

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                               |  3 +-
 doc/guides/bbdevs/turbo_sw.rst                   | 81 +++++++++++++-----------
 drivers/baseband/meson.build                     |  2 +-
 drivers/baseband/turbo_sw/Makefile               | 13 ++--
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 51 ++++++++++++++-
 drivers/baseband/turbo_sw/meson.build            | 30 +++++++++
 meson_options.txt                                |  2 +
 mk/rte.app.mk                                    |  3 +
 8 files changed, 138 insertions(+), 47 deletions(-)
 create mode 100644 drivers/baseband/turbo_sw/meson.build

diff --git a/config/common_base b/config/common_base
index e406e78..21ab606 100644
--- a/config/common_base
+++ b/config/common_base
@@ -528,6 +528,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 CONFIG_RTE_LIBRTE_BBDEV=y
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
+CONFIG_RTE_BBDEV_SDK_AVX2=n
 
 #
 # Compile PMD for NULL bbdev device
@@ -537,7 +538,7 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 #
 # Compile PMD for turbo software bbdev device
 #
-CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
+CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y
 
 #
 # Compile generic crypto device library
diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 29f7ec9..455fa1d 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -4,23 +4,39 @@
 SW Turbo Poll Mode Driver
 =========================
 
-The SW Turbo PMD (**baseband_turbo_sw**) provides a poll mode bbdev driver that utilizes
-Intel optimized libraries for LTE Layer 1 workloads acceleration. This PMD
-supports the functions: Turbo FEC, Rate Matching and CRC functions.
+The SW Turbo PMD (**baseband_turbo_sw**) provides a software only poll mode bbdev
+driver that can optionally utilize Intel optimized libraries for LTE Layer 1
+workloads acceleration.
+
+Note that the driver can also be built without any dependency with reduced
+functionality for maintenance purpose.
+
+To enable linking to the SDK libraries see detailed installation section below.
+One flag can be enabled depending on whether the target machine can support
+AVX2 instructions sets and the related SDK libraries for vectorized
+signal processing functions are installed :
+- CONFIG_RTE_BBDEV_SDK_AVX2
+
+By default this flag is disabled. For AVX2 machine and SDK
+library installed then this flag can be enabled.
+
+This PMD supports the functions: FEC, Rate Matching and CRC functions detailed
+in the Features section.
 
 Features
 --------
 
-SW Turbo PMD has support for the following capabilities:
+SW Turbo PMD can support for the following capabilities when the SDK libraries
+are used:
 
-For the encode operation:
+For the LTE encode operation:
 
 * ``RTE_BBDEV_TURBO_CRC_24A_ATTACH``
 * ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 * ``RTE_BBDEV_TURBO_RATE_MATCH``
 * ``RTE_BBDEV_TURBO_RV_INDEX_BYPASS``
 
-For the decode operation:
+For the LTE decode operation:
 
 * ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE``
 * ``RTE_BBDEV_TURBO_CRC_TYPE_24B``
@@ -41,14 +57,10 @@ Installation
 FlexRAN SDK Download
 ~~~~~~~~~~~~~~~~~~~~
 
-To build DPDK with the *baseband_turbo_sw* PMD the user is required to download
-the export controlled ``FlexRAN SDK`` Libraries. An account at `Intel Resource
-Design Center <https://www.intel.com/content/www/us/en/design/resource-design-center.html>`_
-needs to be registered.
+As an option it is possible to link this driver with FleXRAN SDK libraries
+which can enable real time signal processing using AVX instructions.
 
-Once registered, the user needs to log in, and look for
-*Intel FlexRAN Software Release Package -18-09* to download or directly through
-this `link <https://cdrdv2.intel.com/v1/dl/getContent/605167>`_.
+These libraries are available through this link `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
 
 After download is complete, the user needs to unpack and compile on their
 system before building DPDK.
@@ -57,24 +69,24 @@ The following table maps DPDK versions with past FlexRAN SDK releases:
 
 .. _table_flexran_releases:
 
-.. table:: DPDK and FlexRAN SDK releases compliance
+.. table:: DPDK and FlexRAN FEC SDK releases compliance
 
    =====================  ============================
-   DPDK version           FlexRAN SDK release
+   DPDK version           FlexRAN FEC SDK release
    =====================  ============================
-   18.02                  1.3.0
-   18.05                  1.4.0
-   18.08                  1.6.0
-   19.02                  18.09
+   19.08                  19.04
    =====================  ============================
 
 FlexRAN SDK Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
+Note that the installation of these libraries is optional.
+
 The following are pre-requisites for building FlexRAN SDK Libraries:
- (a) An AVX2 supporting machine
- (b) CentOS Linux release 7.2.1511 (Core) operating system
- (c) Intel ICC 18.0.1 20171018 compiler installed
+ (a) An AVX2 or AVX512 supporting machine
+ (b) CentOS Linux release 7.2.1511 (Core) operating system is advised
+ (c) Intel ICC 18.0.1 20171018 compiler or more recent and related libraries
+     ICC is available with a free community license `link <https://software.intel.com/en-us/system-studio/choose-download#technical>`_.
 
 The following instructions should be followed in this exact order:
 
@@ -84,25 +96,18 @@ The following instructions should be followed in this exact order:
 
         source <path-to-icc-compiler-install-folder>/linux/bin/compilervars.sh intel64 -platform linux
 
-#. Extract the ``605167-flexran-18-09-tar.gz`` package:
-
-    .. code-block:: console
-
-        mkdir FlexRAN-18.09
-        tar xvzf 605167-flexran-18-09-tar.gz -C FlexRAN-18.09/
-
 #. Run the SDK extractor script and accept the license:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/
-        ./SDK-18.09.sh
+        cd <path-to-workspace>
+        ./FlexRAN-FEC-SDK-19-04.sh
 
 #. Generate makefiles based on system configuration:
 
     .. code-block:: console
 
-        cd <path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
+        cd <path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/
         ./create-makefiles-linux.sh
 
 #. A build folder is generated in this form ``build-<ISA>-<CC>``, enter that
@@ -129,12 +134,14 @@ Example:
 
 .. code-block:: console
 
-    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/build-avx2-icc/install
-    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-18.09/SDK-18.09/sdk/
-
+    export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/install
+    export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/
 
-* Set ``CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y`` in DPDK common configuration
-  file ``config/common_base``.
+* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y``
+  in DPDK common configuration file ``config/common_base`` to be able to use
+  the SDK libraries as mentioned above.
+  If no flag are set the PMD driver will still build but its capabilities
+  will be limited accordingly.
 
 To use the PMD in an application, user must:
 
diff --git a/drivers/baseband/meson.build b/drivers/baseband/meson.build
index 52489df..40a87d2 100644
--- a/drivers/baseband/meson.build
+++ b/drivers/baseband/meson.build
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
 
-drivers = ['null']
+drivers = ['null', 'turbo_sw']
 
 config_flag_fmt = 'RTE_LIBRTE_@0@_PMD'
 driver_name_fmt = 'rte_pmd_@0@'
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index d364677..414d0d9 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -3,9 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-ifeq ($(FLEXRAN_SDK),)
-$(error "Please define FLEXRAN_SDK environment variable")
-endif
 
 # library name
 LIB = librte_pmd_bbdev_turbo_sw.a
@@ -21,17 +18,21 @@ LDLIBS += -lrte_bus_vdev
 # versioning export map
 EXPORT_MAP := rte_pmd_bbdev_turbo_sw_version.map
 
-# external library dependencies
+# external library dependencies if available
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),y)
+ifeq ($(FLEXRAN_SDK),)
+$(error "Please define FLEXRAN_SDK environment variable")
+endif
 CFLAGS += -I$(FLEXRAN_SDK)/lib_common
 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
-
 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
-LDLIBS += -lstdc++ -lirc -limf -lipps
+LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
+endif
 
 # library version
 LIBABIVER := 1
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5204a77..94aa536 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,10 +14,11 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#ifdef RTE_BBDEV_SDK_AVX2
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
-#include <divide.h>
+#endif
 
 #define DRIVER_NAME baseband_turbo_sw
 
@@ -83,6 +84,7 @@ struct turbo_sw_queue {
 	enum rte_bbdev_op_type type;
 } __rte_cache_aligned;
 
+#ifdef RTE_BBDEV_SDK_AVX2
 static inline char *
 mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
 {
@@ -128,6 +130,7 @@ struct turbo_sw_queue {
 
 	return result;
 }
+#endif
 
 /* Read flag value 0/1 from bitmap */
 static inline bool
@@ -143,6 +146,7 @@ struct turbo_sw_queue {
 	struct bbdev_private *internals = dev->data->dev_private;
 
 	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+#ifdef RTE_BBDEV_SDK_AVX2
 		{
 			.type = RTE_BBDEV_OP_TURBO_DEC,
 			.cap.turbo_dec = {
@@ -172,6 +176,7 @@ struct turbo_sw_queue {
 				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
 			}
 		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
@@ -179,7 +184,12 @@ struct turbo_sw_queue {
 		.queue_size = RTE_BBDEV_QUEUE_SIZE_LIMIT,
 	};
 
+#ifdef RTE_BBDEV_SDK_AVX2
 	static const enum rte_cpu_flag_t cpu_flag = RTE_CPUFLAG_SSE4_2;
+	dev_info->cpu_flag_reqs = &cpu_flag;
+#else
+	dev_info->cpu_flag_reqs = NULL;
+#endif
 
 	default_queue_conf.socket = dev->data->socket_id;
 
@@ -191,7 +201,6 @@ struct turbo_sw_queue {
 	dev_info->max_ul_queue_priority = 0;
 	dev_info->default_queue_conf = default_queue_conf;
 	dev_info->capabilities = bbdev_capabilities;
-	dev_info->cpu_flag_reqs = &cpu_flag;
 	dev_info->min_alignment = 64;
 
 	rte_bbdev_log_debug("got device info from %u\n", dev->data->dev_id);
@@ -410,6 +419,7 @@ struct turbo_sw_queue {
 	.queue_release = q_release
 };
 
+#ifdef RTE_BBDEV_SDK_AVX2
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -464,6 +474,7 @@ struct turbo_sw_queue {
 
 	return 0;
 }
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
@@ -472,6 +483,7 @@ struct turbo_sw_queue {
 		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_BBDEV_SDK_AVX2
 	int ret;
 	int16_t k_idx;
 	uint16_t m;
@@ -724,6 +736,22 @@ struct turbo_sw_queue {
 		}
 		*tmp_out = 0;
 	}
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(r);
+	RTE_SET_USED(c);
+	RTE_SET_USED(k);
+	RTE_SET_USED(ncb);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
 }
 
 static inline void
@@ -835,6 +863,7 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+#ifdef RTE_BBDEV_SDK_AVX2
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
 		uint16_t ncb)
@@ -847,6 +876,7 @@ struct turbo_sw_queue {
 	rte_memcpy(&out[nd + kpi + 64], &in[kpi], d);
 	rte_memcpy(&out[(nd - 1) + 2 * (kpi + 64)], &in[2 * kpi], d);
 }
+#endif
 
 static inline void
 process_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
@@ -856,6 +886,7 @@ struct turbo_sw_queue {
 		uint16_t crc24_overlap, uint16_t in_length,
 		struct rte_bbdev_stats *q_stats)
 {
+#ifdef RTE_BBDEV_SDK_AVX2
 	int ret;
 	int32_t k_idx;
 	int32_t iter_cnt;
@@ -972,6 +1003,22 @@ struct turbo_sw_queue {
 		rte_bbdev_log(ERR, "Turbo Decoder failed");
 		return;
 	}
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(k);
+	RTE_SET_USED(kw);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
 }
 
 static inline void
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
new file mode 100644
index 0000000..438b5a7
--- /dev/null
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -0,0 +1,30 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+path = get_option('flexran_sdk')
+
+if dpdk_conf.has('RTE_BBDEV_SDK_AVX2')
+	lib = cc.find_library('libturbo', dirs: [path + '/lib_turbo'], required: false)
+	if not lib.found()
+		build = false
+	else
+		ext_deps += cc.find_library('libturbo', dirs: [path + '/lib_turbo'], required: true)
+		ext_deps += cc.find_library('libcrc', dirs: [path + '/lib_crc'], required: true)
+		ext_deps += cc.find_library('librate_matching', dirs: [path + '/lib_rate_matching'], required: true)
+		ext_deps += cc.find_library('libcommon', dirs: [path + '/lib_common'], required: true)
+		ext_deps += cc.find_library('libstdc++', required: true)
+		ext_deps += cc.find_library('libirc', required: true)
+		ext_deps += cc.find_library('libimf', required: true)
+		ext_deps += cc.find_library('libipps', required: true)
+		ext_deps += cc.find_library('libsvml', required: true)
+		includes += include_directories(path + '/lib_turbo')
+		includes += include_directories(path + '/lib_crc')
+		includes += include_directories(path + '/lib_rate_matching')
+		includes += include_directories(path + '/lib_common')
+	endif
+endif
+
+deps += ['bbdev', 'bus_vdev', 'ring']
+name = 'bbdev_turbo_sw'
+allow_experimental_apis = true
+sources = files('bbdev_turbo_software.c')
diff --git a/meson_options.txt b/meson_options.txt
index 16d9f92..92d3e97 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -10,6 +10,8 @@ option('enable_kmods', type: 'boolean', value: true,
 	description: 'build kernel modules')
 option('examples', type: 'string', value: '',
 	description: 'Comma-separated list of examples to build by default')
+option('flexran_sdk', type: 'string', value: '',
+	description: 'Path to FlexRAN SDK optional Libraries for BBDEV device')
 option('ibverbs_link', type: 'combo', choices : ['shared', 'dlopen'], value: 'shared',
 	description: 'Linkage method (shared/dlopen) for Mellanox PMDs with ibverbs dependencies.')
 option('include_subdir_arch', type: 'string', value: '',
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index d0df0b0..2c3d07a 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -219,11 +219,14 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),y)
+# Dependency on the FLEXRAN SDK library if available
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcrc
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+endif # CONFIG_RTE_BBDEV_SDK_AVX2
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:42             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
                             ` (7 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Not meant for review, purely for dependency for CI.
This is a squash of the related serie which
is not applied yet:
adding driver for FEC on FPGA
https://patches.dpdk.org/project/dpdk/list/?series=5017

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                                 |    5 +
 doc/guides/bbdevs/fpga_lte_fec.rst                 |  318 +++
 doc/guides/bbdevs/index.rst                        |    1 +
 drivers/baseband/Makefile                          |    2 +
 drivers/baseband/fpga_lte_fec/Makefile             |   29 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       | 2674 ++++++++++++++++++++
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h       |   73 +
 drivers/baseband/fpga_lte_fec/meson.build          |    7 +
 .../rte_pmd_bbdev_fpga_lte_fec_version.map         |    3 +
 drivers/baseband/meson.build                       |    2 +-
 mk/rte.app.mk                                      |    1 +
 11 files changed, 3114 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/bbdevs/fpga_lte_fec.rst
 create mode 100644 drivers/baseband/fpga_lte_fec/Makefile
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
 create mode 100644 drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
 create mode 100644 drivers/baseband/fpga_lte_fec/meson.build
 create mode 100644 drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map

diff --git a/config/common_base b/config/common_base
index 21ab606..cc13025 100644
--- a/config/common_base
+++ b/config/common_base
@@ -526,6 +526,7 @@ CONFIG_RTE_PMD_PACKET_PREFETCH=y
 # EXPERIMENTAL: API may change without prior notice
 #
 CONFIG_RTE_LIBRTE_BBDEV=y
+CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 CONFIG_RTE_BBDEV_SDK_AVX2=n
@@ -540,6 +541,10 @@ CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=y
 #
 CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=y
 
+# Compile PMD for Intel FPGA LTE FEC bbdev device
+#
+CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC=y
+
 #
 # Compile generic crypto device library
 #
diff --git a/doc/guides/bbdevs/fpga_lte_fec.rst b/doc/guides/bbdevs/fpga_lte_fec.rst
new file mode 100644
index 0000000..71b058c
--- /dev/null
+++ b/doc/guides/bbdevs/fpga_lte_fec.rst
@@ -0,0 +1,318 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation
+
+Intel(R) FPGA LTE FEC Poll Mode Driver
+======================================
+
+The BBDEV FPGA LTE FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
+Turbo Encode / Decode LTE wireless acceleration function, using Intel's PCI-e and FPGA
+based Vista Creek device.
+
+Features
+--------
+
+FPGA LTE FEC PMD supports the following features:
+
+- Turbo Encode in the DL with total throughput of 4.5 Gbits/s
+- Turbo Decode in the UL with total throughput of 1.5 Gbits/s assuming 8 decoder iterations
+- 8 VFs per PF (physical device)
+- Maximum of 32 UL queues per VF
+- Maximum of 32 DL queues per VF
+- PCIe Gen-3 x8 Interface
+- MSI-X
+- SR-IOV
+
+
+FPGA LTE FEC PMD supports the following BBDEV capabilities:
+
+* For the turbo encode operation:
+   - ``RTE_BBDEV_TURBO_CRC_24B_ATTACH`` :  set to attach CRC24B to CB(s)
+   - ``RTE_BBDEV_TURBO_RATE_MATCH`` :  if set then do not do Rate Match bypass
+   - ``RTE_BBDEV_TURBO_ENC_INTERRUPTS`` :  set for encoder dequeue interrupts
+
+
+* For the turbo decode operation:
+   - ``RTE_BBDEV_TURBO_CRC_TYPE_24B`` :  check CRC24B from CB(s)
+   - ``RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE`` :  perform subblock de-interleave
+   - ``RTE_BBDEV_TURBO_DEC_INTERRUPTS`` :  set for decoder dequeue interrupts
+   - ``RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN`` :  set if negative LLR encoder i/p is supported
+   - ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP`` :  keep CRC24B bits appended while decoding
+
+
+Limitations
+-----------
+
+FPGA LTE FEC does not support the following:
+
+- Scatter-Gather function
+
+
+Installation
+--------------
+
+Section 3 of the DPDK manual provides instuctions on installing and compiling DPDK. The
+default set of bbdev compile flags may be found in config/common_base, where for example
+the flag to build the FPGA LTE FEC device, ``CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC``, is already
+set. It is assumed DPDK has been compiled using for instance:
+
+.. code-block:: console
+
+  make install T=x86_64-native-linuxapp-gcc
+
+
+DPDK requires hugepages to be configured as detailed in section 2 of the DPDK manual.
+The bbdev test application has been tested with a configuration 40 x 1GB hugepages. The
+hugepage configuration of a server may be examined using:
+
+.. code-block:: console
+
+   grep Huge* /proc/meminfo
+
+
+Initialization
+--------------
+
+When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
+
+.. code-block:: console
+
+  sudo lspci -vd1172:5052
+
+The physical and virtual functions are compatible with Linux UIO drivers:
+``vfio`` and ``igb_uio``. However, in order to work the FPGA LTE FEC device firstly needs
+to be bound to one of these linux drivers through DPDK.
+
+
+Bind PF UIO driver(s)
+~~~~~~~~~~~~~~~~~~~~~
+
+Install the DPDK igb_uio driver, bind it with the PF PCI device ID and use
+``lspci`` to confirm the PF device is under use by ``igb_uio`` DPDK UIO driver.
+
+The igb_uio driver may be bound to the PF PCI device using one of three methods:
+
+
+1. PCI functions (physical or virtual, depending on the use case) can be bound to
+the UIO driver by repeating this command for every function.
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  insmod ./build/kmod/igb_uio.ko
+  echo "1172 5052" > /sys/bus/pci/drivers/igb_uio/new_id
+  lspci -vd1172:
+
+
+2. Another way to bind PF with DPDK UIO driver is by using the ``dpdk-devbind.py`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-devbind.py -b igb_uio 0000:06:00.0
+
+where the PCI device ID (example: 0000:06:00.0) is obtained using lspci -vd1172:
+
+
+3. A third way to bind is to use ``dpdk-setup.sh`` tool
+
+.. code-block:: console
+
+  cd <dpdk-top-level-directory>
+  ./usertools/dpdk-setup.sh
+
+  select 'Bind Ethernet/Crypto/Baseband device to IGB UIO module'
+  or
+  select 'Bind Ethernet/Crypto/Baseband device to VFIO module' depending on driver required
+  enter PCI device ID
+  select 'Display current Ethernet/Crypto/Baseband device settings' to confirm binding
+
+
+In the same way the FPGA LTE FEC PF can be bound with vfio, but vfio driver does not
+support SR-IOV configuration right out of the box, so it will need to be patched.
+
+
+Enable Virtual Functions
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+Now, it should be visible in the printouts that PCI PF is under igb_uio control
+"``Kernel driver in use: igb_uio``"
+
+To show the number of available VFs on the device, read ``sriov_totalvfs`` file..
+
+.. code-block:: console
+
+  cat /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_totalvfs
+
+  where 0000\:<b>\:<d>.<f> is the PCI device ID
+
+
+To enable VFs via igb_uio, echo the number of virtual functions intended to
+enable to ``max_vfs`` file..
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/max_vfs
+
+
+Afterwards, all VFs must be bound to appropriate UIO drivers as required, same
+way it was done with the physical function previously.
+
+Enabling SR-IOV via vfio driver is pretty much the same, except that the file
+name is different:
+
+.. code-block:: console
+
+  echo <num-of-vfs> > /sys/bus/pci/devices/0000\:<b>\:<d>.<f>/sriov_numvfs
+
+
+Configure the VFs through PF
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The PCI virtual functions must be configured before working or getting assigned
+to VMs/Containers. The configuration involves allocating the number of hardware
+queues, priorities, load balance, bandwidth and other settings necessary for the
+device to perform FEC functions.
+
+This configuration needs to be executed at least once after reboot or PCI FLR and can
+be achieved by using the function ``fpga_lte_fec_configure()``, which sets up the
+parameters defined in ``fpga_lte_fec_conf`` structure:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf {
+      bool pf_mode_en;
+      uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+      uint8_t ul_bandwidth;
+      uint8_t dl_bandwidth;
+      uint8_t ul_load_balance;
+      uint8_t dl_load_balance;
+      uint16_t flr_time_out;
+  };
+
+- ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
+  VFs are mutually exclusive and cannot run simultaneously.
+  Set to 1 for PF mode enabled.
+  If PF mode is enabled all queues available in the device are assigned
+  exclusively to PF and 0 queues given to VFs.
+
+- ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
+
+- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
+  allocates different bandwidth to UL and DL. The weight is configured by this
+  setting. The unit of weight is 3 code blocks. For example, if the code block
+  cbps (code block per second) ratio between UL and DL is 12:1, then the
+  configuration value should be set to 36:3. The schedule algorithm is based
+  on code block regardless the length of each block.
+
+- ``*l_load_balance``: hardware queues are load-balanced in a round-robin
+  fashion. Queues get filled first-in first-out until they reach a pre-defined
+  watermark level, if exceeded, they won't get assigned new code blocks..
+  This watermark is defined by this setting.
+
+  If all hardware queues exceeds the watermark, no code blocks will be
+  streamed in from UL/DL code block FIFO.
+
+- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
+  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
+  the FLR time out then set this setting to 0x262=610.
+
+
+An example configuration code calling the function ``fpga_lte_fec_configure()`` is shown
+below:
+
+.. code-block:: c
+
+  struct fpga_lte_fec_conf conf;
+  unsigned int i;
+
+  memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+  conf.pf_mode_en = 1;
+
+  for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+      conf.vf_ul_queues_number[i] = 4;
+      conf.vf_dl_queues_number[i] = 4;
+  }
+  conf.ul_bandwidth = 12;
+  conf.dl_bandwidth = 5;
+  conf.dl_load_balance = 64;
+  conf.ul_load_balance = 64;
+
+  /* setup FPGA PF */
+  ret = fpga_lte_fec_configure(info->dev_name, &conf);
+  TEST_ASSERT_SUCCESS(ret,
+      "Failed to configure 4G FPGA PF for bbdev %s",
+      info->dev_name);
+
+
+Test Application
+----------------
+
+BBDEV provides a test application, ``test-bbdev.py`` and range of test data for testing
+the functionality of FPGA LTE FEC turbo encode and turbo decode, depending on the device's
+capabilities. The test application is located under app->test-bbdev folder and has the
+following options:
+
+.. code-block:: console
+
+  "-p", "--testapp-path": specifies path to the bbdev test app.
+  "-e", "--eal-params"	: EAL arguments which are passed to the test app.
+  "-t", "--timeout"	: Timeout in seconds (default=300).
+  "-c", "--test-cases"	: Defines test cases to run. Run all if not specified.
+  "-v", "--test-vector"	: Test vector path (default=dpdk_path+/app/test-bbdev/test_vectors/bbdev_null.data).
+  "-n", "--num-ops"	: Number of operations to process on device (default=32).
+  "-b", "--burst-size"	: Operations enqueue/dequeue burst size (default=32).
+  "-l", "--num-lcores"	: Number of lcores to run (default=16).
+  "-i", "--init-device" : Initialise PF device with default values.
+
+
+To execute the test application tool using simple turbo decode or turbo encode data,
+type one of the following:
+
+.. code-block:: console
+
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_dec_default.data
+  ./test-bbdev.py -c validation -n 64 -b 8 -v ./turbo_enc_default.data
+
+
+The test application ``test-bbdev.py``, supports the ability to configure the PF device with
+a default set of values, if the "-i" or "- -init-device" option is included. The default values
+are defined in test_bbdev_perf.c as:
+
+- VF_UL_QUEUE_VALUE 4
+- VF_DL_QUEUE_VALUE 4
+- UL_BANDWIDTH 3
+- DL_BANDWIDTH 3
+- UL_LOAD_BALANCE 128
+- DL_LOAD_BALANCE 128
+- FLR_TIMEOUT 610
+
+
+Test Vectors
+~~~~~~~~~~~~
+
+In addition to the simple turbo decoder and turbo encoder tests, bbdev also provides
+a range of additional tests under the test_vectors folder, which may be useful. The results
+of these tests will depend on the FPGA LTE FEC capabilities:
+
+* turbo decoder tests:
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_low_snr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_negllr.data``
+   - ``turbo_dec_c1_k6144_r0_e34560_sbd_negllr.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr_crc24b.data``
+   - ``turbo_dec_c2_k3136_r0_e4920_sbd_negllr.data``
+
+
+* turbo encoder tests:
+   - ``turbo_enc_c1_k40_r0_e1190_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1194_rm.data``
+   - ``turbo_enc_c1_k40_r0_e1196_rm.data``
+   - ``turbo_enc_c1_k40_r0_e272_rm.data``
+   - ``turbo_enc_c1_k6144_r0_e18444.data``
+   - ``turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data``
+   - ``turbo_enc_c2_k5952_r0_e17868_crc24b.data``
+   - ``turbo_enc_c3_k4800_r2_e14412_crc24b.data``
+   - ``turbo_enc_c4_k4800_r2_e14412_crc24b.data``
+
+
diff --git a/doc/guides/bbdevs/index.rst b/doc/guides/bbdevs/index.rst
index 93276ed..005b95e 100644
--- a/doc/guides/bbdevs/index.rst
+++ b/doc/guides/bbdevs/index.rst
@@ -10,3 +10,4 @@ Baseband Device Drivers
 
     null
     turbo_sw
+    fpga_lte_fec
diff --git a/drivers/baseband/Makefile b/drivers/baseband/Makefile
index 4ec83b0..ceffc7d 100644
--- a/drivers/baseband/Makefile
+++ b/drivers/baseband/Makefile
@@ -10,5 +10,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL) += null
 DEPDIRS-null = $(core-libs)
 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += turbo_sw
 DEPDIRS-turbo_sw = $(core-libs)
+DIRS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec
+DEPDIRS-fpga_lte_fec = $(core-libs)
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/baseband/fpga_lte_fec/Makefile b/drivers/baseband/fpga_lte_fec/Makefile
new file mode 100644
index 0000000..a38a396
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/Makefile
@@ -0,0 +1,29 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_pmd_fpga_lte_fec.a
+
+# build flags
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_bbdev
+LDLIBS += -lrte_pci -lrte_bus_pci
+
+# versioning export map
+EXPORT_MAP := rte_pmd_bbdev_fpga_lte_fec_version.map
+
+# library version
+LIBABIVER := 1
+
+# library source files
+SRCS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += fpga_lte_fec.c
+
+# export include files
+SYMLINK-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC)-include += fpga_lte_fec.h
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
new file mode 100644
index 0000000..19e7689
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -0,0 +1,2674 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2019 Intel Corporation
+ */
+
+#include <unistd.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_dev.h>
+#include <rte_malloc.h>
+#include <rte_mempool.h>
+#include <rte_errno.h>
+#include <rte_pci.h>
+#include <rte_bus_pci.h>
+#include <rte_byteorder.h>
+#ifdef RTE_BBDEV_OFFLOAD_COST
+#include <rte_cycles.h>
+#endif
+
+#include <rte_bbdev.h>
+#include <rte_bbdev_pmd.h>
+
+#include "fpga_lte_fec.h"
+
+/* Turbo SW PMD logging ID */
+static int fpga_lte_fec_logtype;
+
+/* Helper macro for logging */
+#define rte_bbdev_log(level, fmt, ...) \
+	rte_log(RTE_LOG_ ## level, fpga_lte_fec_logtype, fmt "\n", \
+		##__VA_ARGS__)
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+#define rte_bbdev_log_debug(fmt, ...) \
+		rte_bbdev_log(DEBUG, "fpga_lte_fec: " fmt, \
+		##__VA_ARGS__)
+#else
+#define rte_bbdev_log_debug(fmt, ...)
+#endif
+
+/* FPGA LTE FEC driver names */
+#define FPGA_LTE_FEC_PF_DRIVER_NAME intel_fpga_lte_fec_pf
+#define FPGA_LTE_FEC_VF_DRIVER_NAME intel_fpga_lte_fec_vf
+
+/* FPGA LTE FEC PCI vendor & device IDs */
+#define FPGA_LTE_FEC_VENDOR_ID (0x1172)
+#define FPGA_LTE_FEC_PF_DEVICE_ID (0x5052)
+#define FPGA_LTE_FEC_VF_DEVICE_ID (0x5050)
+
+/* Align DMA descriptors to 256 bytes - cache-aligned */
+#define FPGA_RING_DESC_ENTRY_LENGTH (8)
+/* Ring size is in 256 bits (32 bytes) units */
+#define FPGA_RING_DESC_LEN_UNIT_BYTES (32)
+/* Maximum size of queue */
+#define FPGA_RING_MAX_SIZE (1024)
+#define FPGA_FLR_TIMEOUT_UNIT (16.384)
+
+#define FPGA_NUM_UL_QUEUES (32)
+#define FPGA_NUM_DL_QUEUES (32)
+#define FPGA_TOTAL_NUM_QUEUES (FPGA_NUM_UL_QUEUES + FPGA_NUM_DL_QUEUES)
+#define FPGA_NUM_INTR_VEC (FPGA_TOTAL_NUM_QUEUES - RTE_INTR_VEC_RXTX_OFFSET)
+
+#define FPGA_INVALID_HW_QUEUE_ID (0xFFFFFFFF)
+
+#define FPGA_QUEUE_FLUSH_TIMEOUT_US (1000)
+#define FPGA_TIMEOUT_CHECK_INTERVAL (5)
+
+/* FPGA LTE FEC Register mapping on BAR0 */
+enum {
+	FPGA_LTE_FEC_VERSION_ID = 0x00000000, /* len: 4B */
+	FPGA_LTE_FEC_CONFIGURATION = 0x00000004, /* len: 2B */
+	FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE = 0x00000008, /* len: 1B */
+	FPGA_LTE_FEC_LOAD_BALANCE_FACTOR = 0x0000000a, /* len: 2B */
+	FPGA_LTE_FEC_RING_DESC_LEN = 0x0000000c, /* len: 2B */
+	FPGA_LTE_FEC_FLR_TIME_OUT = 0x0000000e, /* len: 2B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW = 0x00000018, /* len: 4B */
+	FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI = 0x0000001c, /* len: 4B */
+	FPGA_LTE_FEC_VF0_DEBUG = 0x00000020, /* len: 4B */
+	FPGA_LTE_FEC_VF1_DEBUG = 0x00000024, /* len: 4B */
+	FPGA_LTE_FEC_VF2_DEBUG = 0x00000028, /* len: 4B */
+	FPGA_LTE_FEC_VF3_DEBUG = 0x0000002c, /* len: 4B */
+	FPGA_LTE_FEC_VF4_DEBUG = 0x00000030, /* len: 4B */
+	FPGA_LTE_FEC_VF5_DEBUG = 0x00000034, /* len: 4B */
+	FPGA_LTE_FEC_VF6_DEBUG = 0x00000038, /* len: 4B */
+	FPGA_LTE_FEC_VF7_DEBUG = 0x0000003c, /* len: 4B */
+	FPGA_LTE_FEC_QUEUE_MAP = 0x00000040, /* len: 256B */
+	FPGA_LTE_FEC_RING_CTRL_REGS = 0x00000200  /* len: 2048B */
+};
+
+/* FPGA LTE FEC Ring Control Registers */
+enum {
+	FPGA_LTE_FEC_RING_HEAD_ADDR = 0x00000008,
+	FPGA_LTE_FEC_RING_SIZE = 0x00000010,
+	FPGA_LTE_FEC_RING_MISC = 0x00000014,
+	FPGA_LTE_FEC_RING_ENABLE = 0x00000015,
+	FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN = 0x00000016,
+	FPGA_LTE_FEC_RING_SHADOW_TAIL = 0x00000018,
+	FPGA_LTE_FEC_RING_HEAD_POINT = 0x0000001C
+};
+
+/* FPGA LTE FEC DESCRIPTOR ERROR */
+enum {
+	DESC_ERR_NO_ERR = 0x0,
+	DESC_ERR_K_OUT_OF_RANGE = 0x1,
+	DESC_ERR_K_NOT_NORMAL = 0x2,
+	DESC_ERR_KPAI_NOT_NORMAL = 0x3,
+	DESC_ERR_DESC_OFFSET_ERR = 0x4,
+	DESC_ERR_DESC_READ_FAIL = 0x8,
+	DESC_ERR_DESC_READ_TIMEOUT = 0x9,
+	DESC_ERR_DESC_READ_TLP_POISONED = 0xA,
+	DESC_ERR_CB_READ_FAIL = 0xC,
+	DESC_ERR_CB_READ_TIMEOUT = 0xD,
+	DESC_ERR_CB_READ_TLP_POISONED = 0xE
+};
+
+/* FPGA LTE FEC DMA Encoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_enc_desc {
+	uint32_t done:1,
+		rsrvd0:11,
+		error:4,
+		rsrvd1:16;
+	uint32_t ncb:16,
+		rsrvd2:14,
+		rv:2;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		crc_en:1,
+		rsrvd3:13,
+		offset:10,
+		rsrvd4:6;
+	uint16_t e;
+	uint16_t k;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint64_t cbs_in_op;
+		};
+
+		uint8_t sw_ctxt[FPGA_RING_DESC_LEN_UNIT_BYTES *
+					(FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE FEC DMA Decoding Request Descriptor */
+struct __attribute__((__packed__)) fpga_dma_dec_desc {
+	uint32_t done:1,
+		iter:5,
+		rsrvd0:2,
+		crc_pass:1,
+		rsrvd1:3,
+		error:4,
+		crc_type:1,
+		rsrvd2:7,
+		max_iter:5,
+		rsrvd3:3;
+	uint32_t rsrvd4;
+	uint32_t bypass_rm:1,
+		irq_en:1,
+		drop_crc:1,
+		rsrvd5:13,
+		offset:10,
+		rsrvd6:6;
+	uint16_t k;
+	uint16_t in_len;
+	uint32_t out_addr_lw;
+	uint32_t out_addr_hi;
+	uint32_t in_addr_lw;
+	uint32_t in_addr_hi;
+
+	union {
+		struct {
+			/* Virtual addresses used to retrieve SW context info */
+			void *op_addr;
+			/* Stores information about total number of Code Blocks
+			 * in currently processed Transport Block
+			 */
+			uint8_t cbs_in_op;
+		};
+
+		uint32_t sw_ctxt[8 * (FPGA_RING_DESC_ENTRY_LENGTH - 1)];
+	};
+};
+
+/* FPGA LTE DMA Descriptor */
+union fpga_dma_desc {
+	struct fpga_dma_enc_desc enc_req;
+	struct fpga_dma_dec_desc dec_req;
+};
+
+/* FPGA LTE FEC Ring Control Register */
+struct __attribute__((__packed__)) fpga_ring_ctrl_reg {
+	uint64_t ring_base_addr;
+	uint64_t ring_head_addr;
+	uint16_t ring_size:11;
+	uint16_t rsrvd0;
+	union { /* Miscellaneous register */
+		uint8_t misc;
+		uint8_t max_ul_dec:5,
+			max_ul_dec_en:1,
+			rsrvd1:2;
+	};
+	uint8_t enable;
+	uint8_t flush_queue_en;
+	uint8_t rsrvd2;
+	uint16_t shadow_tail;
+	uint16_t rsrvd3;
+	uint16_t head_point;
+	uint16_t rsrvd4;
+
+};
+
+/* Private data structure for each FPGA FEC device */
+struct fpga_lte_fec_device {
+	/** Base address of MMIO registers (BAR0) */
+	void *mmio_base;
+	/** Base address of memory for sw rings */
+	void *sw_rings;
+	/** Physical address of sw_rings */
+	rte_iova_t sw_rings_phys;
+	/** Number of bytes available for each queue in device. */
+	uint32_t sw_ring_size;
+	/** Max number of entries available for each queue in device */
+	uint32_t sw_ring_max_depth;
+	/** Base address of response tail pointer buffer */
+	uint32_t *tail_ptrs;
+	/** Physical address of tail pointers */
+	rte_iova_t tail_ptr_phys;
+	/** Queues flush completion flag */
+	uint64_t *flush_queue_status;
+	/* Bitmap capturing which Queues are bound to the PF/VF */
+	uint64_t q_bound_bit_map;
+	/* Bitmap capturing which Queues have already been assigned */
+	uint64_t q_assigned_bit_map;
+	/** True if this is a PF FPGA FEC device */
+	bool pf_device;
+};
+
+/* Structure associated with each queue. */
+struct __rte_cache_aligned fpga_queue {
+	struct fpga_ring_ctrl_reg ring_ctrl_reg;  /* Ring Control Register */
+	union fpga_dma_desc *ring_addr;  /* Virtual address of software ring */
+	uint64_t *ring_head_addr;  /* Virtual address of completion_head */
+	uint64_t shadow_completion_head; /* Shadow completion head value */
+	uint16_t head_free_desc;  /* Ring head */
+	uint16_t tail;  /* Ring tail */
+	/* Mask used to wrap enqueued descriptors on the sw ring */
+	uint32_t sw_ring_wrap_mask;
+	uint32_t irq_enable;  /* Enable ops dequeue interrupts if set to 1 */
+	uint8_t q_idx;  /* Queue index */
+	struct fpga_lte_fec_device *d;
+	/* MMIO register of shadow_tail used to enqueue descriptors */
+	void *shadow_tail_addr;
+};
+
+/* Write to 16 bit MMIO register address */
+static inline void
+mmio_write_16(void *addr, uint16_t value)
+{
+	*((volatile uint16_t *)(addr)) = rte_cpu_to_le_16(value);
+}
+
+/* Write to 32 bit MMIO register address */
+static inline void
+mmio_write_32(void *addr, uint32_t value)
+{
+	*((volatile uint32_t *)(addr)) = rte_cpu_to_le_32(value);
+}
+
+/* Write to 64 bit MMIO register address */
+static inline void
+mmio_write_64(void *addr, uint64_t value)
+{
+	*((volatile uint64_t *)(addr)) = rte_cpu_to_le_64(value);
+}
+
+/* Write a 8 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_8(void *mmio_base, uint32_t offset, uint8_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	*((volatile uint8_t *)(reg_addr)) = payload;
+}
+
+/* Write a 16 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_16(void *mmio_base, uint32_t offset, uint16_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_16(reg_addr, payload);
+}
+
+/* Write a 32 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_32(void *mmio_base, uint32_t offset, uint32_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_32(reg_addr, payload);
+}
+
+/* Write a 64 bit register of a FPGA LTE FEC device */
+static inline void
+fpga_reg_write_64(void *mmio_base, uint32_t offset, uint64_t payload)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	mmio_write_64(reg_addr, payload);
+}
+
+/* Write a ring control register of a FPGA LTE FEC device */
+static inline void
+fpga_ring_reg_write(void *mmio_base, uint32_t offset,
+		struct fpga_ring_ctrl_reg payload)
+{
+	fpga_reg_write_64(mmio_base, offset, payload.ring_base_addr);
+	fpga_reg_write_64(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_ADDR,
+			payload.ring_head_addr);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SIZE,
+			payload.ring_size);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			payload.head_point);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN,
+			payload.flush_queue_en);
+	fpga_reg_write_16(mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			payload.shadow_tail);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_MISC,
+			payload.misc);
+	fpga_reg_write_8(mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload.enable);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint32_t
+fpga_reg_read_32(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint32_t ret = *((volatile uint32_t *)(reg_addr));
+	return rte_le_to_cpu_32(ret);
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Read a register of FPGA LTE FEC device */
+static uint8_t
+fpga_reg_read_8(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	return *((volatile uint8_t *)(reg_addr));
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint16_t
+fpga_reg_read_16(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint16_t ret = *((volatile uint16_t *)(reg_addr));
+	return rte_le_to_cpu_16(ret);
+}
+
+/* Read a register of FPGA LTE FEC device */
+static uint64_t
+fpga_reg_read_64(void *mmio_base, uint32_t offset)
+{
+	void *reg_addr = RTE_PTR_ADD(mmio_base, offset);
+	uint64_t ret = *((volatile uint64_t *)(reg_addr));
+	return rte_le_to_cpu_64(ret);
+}
+
+/* Read Ring Control Register of FPGA LTE FEC device */
+static inline void
+print_ring_reg_debug_info(void *mmio_base, uint32_t offset)
+{
+	rte_bbdev_log_debug(
+		"FPGA MMIO base address @ %p | Ring Control Register @ offset = 0x%08"
+		PRIx32, mmio_base, offset);
+	rte_bbdev_log_debug(
+		"RING_BASE_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset));
+	rte_bbdev_log_debug(
+		"RING_HEAD_ADDR = 0x%016"PRIx64,
+		fpga_reg_read_64(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_ADDR));
+	rte_bbdev_log_debug(
+		"RING_SIZE = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SIZE));
+	rte_bbdev_log_debug(
+		"RING_MISC = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_MISC));
+	rte_bbdev_log_debug(
+		"RING_ENABLE = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_ENABLE));
+	rte_bbdev_log_debug(
+		"RING_FLUSH_QUEUE_EN = 0x%02"PRIx8,
+		fpga_reg_read_8(mmio_base, offset +
+				FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN));
+	rte_bbdev_log_debug(
+		"RING_SHADOW_TAIL = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_SHADOW_TAIL));
+	rte_bbdev_log_debug(
+		"RING_HEAD_POINT = 0x%04"PRIx16,
+		fpga_reg_read_16(mmio_base, offset +
+				FPGA_LTE_FEC_RING_HEAD_POINT));
+}
+
+/* Read Static Register of FPGA LTE FEC device */
+static inline void
+print_static_reg_debug_info(void *mmio_base)
+{
+	uint16_t config = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_CONFIGURATION);
+	uint8_t qmap_done = fpga_reg_read_8(mmio_base,
+			FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE);
+	uint16_t lb_factor = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_LOAD_BALANCE_FACTOR);
+	uint16_t ring_desc_len = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_RING_DESC_LEN);
+	uint16_t flr_time_out = fpga_reg_read_16(mmio_base,
+			FPGA_LTE_FEC_FLR_TIME_OUT);
+
+	rte_bbdev_log_debug("UL.DL Weights = %u.%u",
+			((uint8_t)config), ((uint8_t)(config >> 8)));
+	rte_bbdev_log_debug("UL.DL Load Balance = %u.%u",
+			((uint8_t)lb_factor), ((uint8_t)(lb_factor >> 8)));
+	rte_bbdev_log_debug("Queue-PF/VF Mapping Table = %s",
+			(qmap_done > 0) ? "READY" : "NOT-READY");
+	rte_bbdev_log_debug("Ring Descriptor Size = %u bytes",
+			ring_desc_len*FPGA_RING_DESC_LEN_UNIT_BYTES);
+	rte_bbdev_log_debug("FLR Timeout = %f usec",
+			(float)flr_time_out*FPGA_FLR_TIMEOUT_UNIT);
+}
+
+/* Print decode DMA Descriptor of FPGA LTE FEC device */
+static void
+print_dma_dec_desc_debug_info(union fpga_dma_desc *desc)
+{
+	rte_bbdev_log_debug("DMA response desc %p\n"
+		"\t-- done(%"PRIu32") | iter(%"PRIu32") | crc_pass(%"PRIu32")"
+		" | error (%"PRIu32") | crc_type(%"PRIu32")\n"
+		"\t-- max_iter(%"PRIu32") | bypass_rm(%"PRIu32") | "
+		"irq_en (%"PRIu32") | drop_crc(%"PRIu32") | offset(%"PRIu32")\n"
+		"\t-- k(%"PRIu32") | in_len (%"PRIu16") | op_add(%p)\n"
+		"\t-- cbs_in_op(%"PRIu32") | in_add (0x%08"PRIx32"%08"PRIx32") | "
+		"out_add (0x%08"PRIx32"%08"PRIx32")",
+		desc,
+		(uint32_t)desc->dec_req.done,
+		(uint32_t)desc->dec_req.iter,
+		(uint32_t)desc->dec_req.crc_pass,
+		(uint32_t)desc->dec_req.error,
+		(uint32_t)desc->dec_req.crc_type,
+		(uint32_t)desc->dec_req.max_iter,
+		(uint32_t)desc->dec_req.bypass_rm,
+		(uint32_t)desc->dec_req.irq_en,
+		(uint32_t)desc->dec_req.drop_crc,
+		(uint32_t)desc->dec_req.offset,
+		(uint32_t)desc->dec_req.k,
+		(uint16_t)desc->dec_req.in_len,
+		desc->dec_req.op_addr,
+		(uint32_t)desc->dec_req.cbs_in_op,
+		(uint32_t)desc->dec_req.in_addr_hi,
+		(uint32_t)desc->dec_req.in_addr_lw,
+		(uint32_t)desc->dec_req.out_addr_hi,
+		(uint32_t)desc->dec_req.out_addr_lw);
+}
+#endif
+
+static int
+fpga_setup_queues(struct rte_bbdev *dev, uint16_t num_queues, int socket_id)
+{
+	/* Number of queues bound to a PF/VF */
+	uint32_t hw_q_num = 0;
+	uint32_t ring_size, payload, address, q_id, offset;
+	rte_iova_t phys_addr;
+	struct fpga_ring_ctrl_reg ring_reg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	if (!(fpga_reg_read_32(fpga_dev->mmio_base, address) & 0x1)) {
+		rte_bbdev_log(ERR,
+				"Queue-PF/VF mapping is not set! Was PF configured for device (%s) ?",
+				dev->data->name);
+		return -EPERM;
+	}
+
+	/* Clear queue registers structure */
+	memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+
+	/* Scan queue map.
+	 * If a queue is valid and mapped to a calling PF/VF the read value is
+	 * replaced with a queue ID and if it's not then
+	 * FPGA_INVALID_HW_QUEUE_ID is returned.
+	 */
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(fpga_dev->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+
+		rte_bbdev_log_debug("%s: queue ID: %u, registry queue ID: %u",
+				dev->device->name, q_id, hw_q_id);
+
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID) {
+			fpga_dev->q_bound_bit_map |= (1ULL << q_id);
+			/* Clear queue register of found queue */
+			offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+				(sizeof(struct fpga_ring_ctrl_reg) * q_id);
+			fpga_ring_reg_write(fpga_dev->mmio_base,
+					offset, ring_reg);
+			++hw_q_num;
+		}
+	}
+	if (hw_q_num == 0) {
+		rte_bbdev_log(ERR,
+			"No HW queues assigned to this device. Probably this is a VF configured for PF mode. Check device configuration!");
+		return -ENODEV;
+	}
+
+	if (num_queues > hw_q_num) {
+		rte_bbdev_log(ERR,
+			"Not enough queues for device %s! Requested: %u, available: %u",
+			dev->device->name, num_queues, hw_q_num);
+		return -EINVAL;
+	}
+
+	ring_size = FPGA_RING_MAX_SIZE * sizeof(struct fpga_dma_dec_desc);
+
+	/* Enforce 32 byte alignment */
+	RTE_BUILD_BUG_ON((RTE_CACHE_LINE_SIZE % 32) != 0);
+
+	/* Allocate memory for SW descriptor rings */
+	fpga_dev->sw_rings = rte_zmalloc_socket(dev->device->driver->name,
+			num_queues * ring_size, RTE_CACHE_LINE_SIZE,
+			socket_id);
+	if (fpga_dev->sw_rings == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u sw_rings",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	fpga_dev->sw_rings_phys = rte_malloc_virt2iova(fpga_dev->sw_rings);
+	fpga_dev->sw_ring_size = ring_size;
+	fpga_dev->sw_ring_max_depth = FPGA_RING_MAX_SIZE;
+
+	/* Allocate memory for ring flush status */
+	fpga_dev->flush_queue_status = rte_zmalloc_socket(NULL,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, socket_id);
+	if (fpga_dev->flush_queue_status == NULL) {
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u flush_queue_status",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+
+	/* Set the flush status address registers */
+	phys_addr = rte_malloc_virt2iova(fpga_dev->flush_queue_status);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_LW;
+	payload = (uint32_t)(phys_addr);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	address = FPGA_LTE_FEC_VFQ_FLUSH_STATUS_HI;
+	payload = (uint32_t)(phys_addr >> 32);
+	fpga_reg_write_32(fpga_dev->mmio_base, address, payload);
+
+	return 0;
+}
+
+static int
+fpga_dev_close(struct rte_bbdev *dev)
+{
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+
+	rte_free(fpga_dev->sw_rings);
+	rte_free(fpga_dev->flush_queue_status);
+
+	return 0;
+}
+
+static void
+fpga_dev_info_get(struct rte_bbdev *dev,
+		struct rte_bbdev_driver_info *dev_info)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint32_t q_id = 0;
+
+	/* TODO RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN and numbers of buffers are set
+	 * to temporary values as they are required by test application while
+	 * validation phase.
+	 */
+	static const struct rte_bbdev_op_cap bbdev_capabilities[] = {
+		{
+			.type = RTE_BBDEV_OP_TURBO_DEC,
+			.cap.turbo_dec = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_TYPE_24B |
+					RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE |
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS |
+					RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN |
+					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
+				.max_llr_modulus = INT8_MAX,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_hard_out =
+					RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_soft_out = 0
+			}
+		},
+		{
+			.type = RTE_BBDEV_OP_TURBO_ENC,
+			.cap.turbo_enc = {
+				.capability_flags =
+					RTE_BBDEV_TURBO_CRC_24B_ATTACH |
+					RTE_BBDEV_TURBO_RATE_MATCH |
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
+				.num_buffers_src =
+						RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_MAX_CODE_BLOCKS
+			}
+		},
+		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
+	};
+
+	static struct rte_bbdev_queue_conf default_queue_conf;
+	default_queue_conf.socket = dev->data->socket_id;
+	default_queue_conf.queue_size = FPGA_RING_MAX_SIZE;
+
+
+	dev_info->driver_name = dev->device->driver->name;
+	dev_info->queue_size_lim = FPGA_RING_MAX_SIZE;
+	dev_info->hardware_accelerated = true;
+	dev_info->min_alignment = 64;
+	dev_info->default_queue_conf = default_queue_conf;
+	dev_info->capabilities = bbdev_capabilities;
+	dev_info->cpu_flag_reqs = NULL;
+
+	/* Calculates number of queues assigned to device */
+	dev_info->max_num_queues = 0;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		uint32_t hw_q_id = fpga_reg_read_32(d->mmio_base,
+				FPGA_LTE_FEC_QUEUE_MAP + (q_id << 2));
+		if (hw_q_id != FPGA_INVALID_HW_QUEUE_ID)
+			dev_info->max_num_queues++;
+	}
+}
+
+/**
+ * Find index of queue bound to current PF/VF which is unassigned. Return -1
+ * when there is no available queue
+ */
+static int
+fpga_find_free_queue_idx(struct rte_bbdev *dev,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	uint64_t q_idx;
+	uint8_t i = 0;
+	uint8_t range = FPGA_TOTAL_NUM_QUEUES >> 1;
+
+	if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC) {
+		i = FPGA_NUM_DL_QUEUES;
+		range = FPGA_TOTAL_NUM_QUEUES;
+	}
+
+	for (; i < range; ++i) {
+		q_idx = 1ULL << i;
+		/* Check if index of queue is bound to current PF/VF */
+		if (d->q_bound_bit_map & q_idx)
+			/* Check if found queue was not already assigned */
+			if (!(d->q_assigned_bit_map & q_idx)) {
+				d->q_assigned_bit_map |= q_idx;
+				return i;
+			}
+	}
+
+	rte_bbdev_log(INFO, "Failed to find free queue on %s", dev->data->name);
+
+	return -1;
+}
+
+static int
+fpga_queue_setup(struct rte_bbdev *dev, uint16_t queue_id,
+		const struct rte_bbdev_queue_conf *conf)
+{
+	uint32_t address, ring_offset;
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q;
+	int8_t q_idx;
+
+	/* Check if there is a free queue to assign */
+	q_idx = fpga_find_free_queue_idx(dev, conf);
+	if (q_idx == -1)
+		return -1;
+
+	/* Allocate the queue data structure. */
+	q = rte_zmalloc_socket(dev->device->driver->name, sizeof(*q),
+			RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_bbdev_log(ERR, "Failed to allocate queue memory");
+		return -ENOMEM;
+	}
+
+	q->d = d;
+	q->q_idx = q_idx;
+
+	/* Set ring_base_addr */
+	q->ring_addr = RTE_PTR_ADD(d->sw_rings, (d->sw_ring_size * queue_id));
+	q->ring_ctrl_reg.ring_base_addr = d->sw_rings_phys +
+			(d->sw_ring_size * queue_id);
+
+	/* Allocate memory for Completion Head variable*/
+	q->ring_head_addr = rte_zmalloc_socket(dev->device->driver->name,
+			sizeof(uint64_t), RTE_CACHE_LINE_SIZE, conf->socket);
+	if (q->ring_head_addr == NULL) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Failed to allocate memory for %s:%u completion_head",
+				dev->device->driver->name, dev->data->dev_id);
+		return -ENOMEM;
+	}
+	/* Set ring_head_addr */
+	q->ring_ctrl_reg.ring_head_addr =
+			rte_malloc_virt2iova(q->ring_head_addr);
+
+	/* Clear shadow_completion_head */
+	q->shadow_completion_head = 0;
+
+	/* Set ring_size */
+	if (conf->queue_size > FPGA_RING_MAX_SIZE) {
+		/* Mark queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		rte_bbdev_log(ERR,
+				"Size of queue is too big %d (MAX: %d ) for %s:%u",
+				conf->queue_size, FPGA_RING_MAX_SIZE,
+				dev->device->driver->name, dev->data->dev_id);
+		return -EINVAL;
+	}
+	q->ring_ctrl_reg.ring_size = conf->queue_size;
+
+	/* Set Miscellaneous FPGA register*/
+	/* Max iteration number for TTI mitigation - todo */
+	q->ring_ctrl_reg.max_ul_dec = 0;
+	/* Enable max iteration number for TTI - todo */
+	q->ring_ctrl_reg.max_ul_dec_en = 0;
+
+	/* Enable the ring */
+	q->ring_ctrl_reg.enable = 1;
+
+	/* Set FPGA head_point and tail registers */
+	q->ring_ctrl_reg.head_point = q->tail = 0;
+
+	/* Set FPGA shadow_tail register */
+	q->ring_ctrl_reg.shadow_tail = q->tail;
+
+	/* Calculates the ring offset for found queue */
+	ring_offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q_idx);
+
+	/* Set FPGA Ring Control Registers */
+	fpga_ring_reg_write(d->mmio_base, ring_offset, q->ring_ctrl_reg);
+
+	/* Store MMIO register of shadow_tail */
+	address = ring_offset + FPGA_LTE_FEC_RING_SHADOW_TAIL;
+	q->shadow_tail_addr = RTE_PTR_ADD(d->mmio_base, address);
+
+	q->head_free_desc = q->tail;
+
+	/* Set wrap mask */
+	q->sw_ring_wrap_mask = conf->queue_size - 1;
+
+	rte_bbdev_log_debug("Setup dev%u q%u: queue_idx=%u",
+			dev->data->dev_id, queue_id, q->q_idx);
+
+	dev->data->queues[queue_id].queue_private = q;
+
+	rte_bbdev_log_debug("BBDEV queue[%d] set up for FPGA queue[%d]",
+			queue_id, q_idx);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Read FPGA Ring Control Registers after configuration*/
+	print_ring_reg_debug_info(d->mmio_base, ring_offset);
+#endif
+	return 0;
+}
+
+static int
+fpga_queue_release(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	struct fpga_ring_ctrl_reg ring_reg;
+	uint32_t offset;
+
+	rte_bbdev_log_debug("FPGA Queue[%d] released", queue_id);
+
+	if (q != NULL) {
+		memset(&ring_reg, 0, sizeof(struct fpga_ring_ctrl_reg));
+		offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+		/* Disable queue */
+		fpga_reg_write_8(d->mmio_base,
+				offset + FPGA_LTE_FEC_RING_ENABLE, 0x00);
+		/* Clear queue registers */
+		fpga_ring_reg_write(d->mmio_base, offset, ring_reg);
+
+		/* Mark the Queue as un-assigned */
+		d->q_assigned_bit_map &= (0xFFFFFFFF - (1ULL << q->q_idx));
+		rte_free(q->ring_head_addr);
+		rte_free(q);
+		dev->data->queues[queue_id].queue_private = NULL;
+	}
+
+	return 0;
+}
+
+/* Function starts a device queue. */
+static int
+fpga_queue_start(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t enable = 0x01;
+	uint16_t zero = 0x0000;
+
+	/* Clear queue head and tail variables */
+	q->tail = q->head_free_desc = 0;
+
+	/* Clear FPGA head_point and tail registers */
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_HEAD_POINT,
+			zero);
+	fpga_reg_write_16(d->mmio_base, offset + FPGA_LTE_FEC_RING_SHADOW_TAIL,
+			zero);
+
+	/* Enable queue */
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			enable);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] started", queue_id);
+	return 0;
+}
+
+/* Function stops a device queue. */
+static int
+fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_lte_fec_device *d = dev->data->dev_private;
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (d == NULL) {
+		rte_bbdev_log(ERR, "Invalid device pointer");
+		return -1;
+	}
+#endif
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	uint32_t offset = FPGA_LTE_FEC_RING_CTRL_REGS +
+			(sizeof(struct fpga_ring_ctrl_reg) * q->q_idx);
+	uint8_t payload = 0x01;
+	uint8_t counter = 0;
+	uint8_t timeout = FPGA_QUEUE_FLUSH_TIMEOUT_US /
+			FPGA_TIMEOUT_CHECK_INTERVAL;
+
+	/* Set flush_queue_en bit to trigger queue flushing */
+	fpga_reg_write_8(d->mmio_base,
+			offset + FPGA_LTE_FEC_RING_FLUSH_QUEUE_EN, payload);
+
+	/** Check if queue flush is completed.
+	 * FPGA will update the completion flag after queue flushing is
+	 * completed. If completion flag is not updated within 1ms it is
+	 * considered as a failure.
+	 */
+	while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) {
+		if (counter > timeout) {
+			rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d",
+					queue_id);
+			return -1;
+		}
+		usleep(FPGA_TIMEOUT_CHECK_INTERVAL);
+		counter++;
+	}
+
+	/* Disable queue */
+	payload = 0x00;
+	fpga_reg_write_8(d->mmio_base, offset + FPGA_LTE_FEC_RING_ENABLE,
+			payload);
+
+	rte_bbdev_log_debug("FPGA Queue[%d] stopped", queue_id);
+	return 0;
+}
+
+static inline uint16_t
+get_queue_id(struct rte_bbdev_data *data, uint8_t q_idx)
+{
+	uint16_t queue_id;
+
+	for (queue_id = 0; queue_id < data->num_queues; ++queue_id) {
+		struct fpga_queue *q = data->queues[queue_id].queue_private;
+		if (q != NULL && q->q_idx == q_idx)
+			return queue_id;
+	}
+
+	return -1;
+}
+
+/* Interrupt handler triggered by FPGA dev for handling specific interrupt */
+static void
+fpga_dev_interrupt_handler(void *cb_arg)
+{
+	struct rte_bbdev *dev = cb_arg;
+	struct fpga_lte_fec_device *fpga_dev = dev->data->dev_private;
+	struct fpga_queue *q;
+	uint64_t ring_head;
+	uint64_t q_idx;
+	uint16_t queue_id;
+	uint8_t i;
+
+	/* Scan queue assigned to this device */
+	for (i = 0; i < FPGA_TOTAL_NUM_QUEUES; ++i) {
+		q_idx = 1ULL << i;
+		if (fpga_dev->q_bound_bit_map & q_idx) {
+			queue_id = get_queue_id(dev->data, i);
+			if (queue_id == (uint16_t) -1)
+				continue;
+
+			/* Check if completion head was changed */
+			q = dev->data->queues[queue_id].queue_private;
+			ring_head = *q->ring_head_addr;
+			if (q->shadow_completion_head != ring_head &&
+				q->irq_enable == 1) {
+				q->shadow_completion_head = ring_head;
+				rte_bbdev_pmd_callback_process(
+						dev,
+						RTE_BBDEV_EVENT_DEQUEUE,
+						&queue_id);
+			}
+		}
+	}
+}
+
+static int
+fpga_queue_intr_enable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle))
+		return -ENOTSUP;
+
+	q->irq_enable = 1;
+
+	return 0;
+}
+
+static int
+fpga_queue_intr_disable(struct rte_bbdev *dev, uint16_t queue_id)
+{
+	struct fpga_queue *q = dev->data->queues[queue_id].queue_private;
+	q->irq_enable = 0;
+
+	return 0;
+}
+
+static int
+fpga_intr_enable(struct rte_bbdev *dev)
+{
+	int ret;
+	uint8_t i;
+
+	if (!rte_intr_cap_multiple(dev->intr_handle)) {
+		rte_bbdev_log(ERR, "Multiple intr vector is not supported by FPGA (%s)",
+				dev->data->name);
+		return -ENOTSUP;
+	}
+
+	/* Create event file descriptors for each of 64 queue. Event fds will be
+	 * mapped to FPGA IRQs in rte_intr_enable(). This is a 1:1 mapping where
+	 * the IRQ number is a direct translation to the queue number.
+	 *
+	 * 63 (FPGA_NUM_INTR_VEC) event fds are created as rte_intr_enable()
+	 * mapped the first IRQ to already created interrupt event file
+	 * descriptor (intr_handle->fd).
+	 */
+	if (rte_intr_efd_enable(dev->intr_handle, FPGA_NUM_INTR_VEC)) {
+		rte_bbdev_log(ERR, "Failed to create fds for %u queues",
+				dev->data->num_queues);
+		return -1;
+	}
+
+	/* TODO Each event file descriptor is overwritten by interrupt event
+	 * file descriptor. That descriptor is added to epoll observed list.
+	 * It ensures that callback function assigned to that descriptor will
+	 * invoked when any FPGA queue issues interrupt.
+	 */
+	for (i = 0; i < FPGA_NUM_INTR_VEC; ++i)
+		dev->intr_handle->efds[i] = dev->intr_handle->fd;
+
+	if (!dev->intr_handle->intr_vec) {
+		dev->intr_handle->intr_vec = rte_zmalloc("intr_vec",
+				dev->data->num_queues * sizeof(int), 0);
+		if (!dev->intr_handle->intr_vec) {
+			rte_bbdev_log(ERR, "Failed to allocate %u vectors",
+					dev->data->num_queues);
+			return -ENOMEM;
+		}
+	}
+
+	ret = rte_intr_enable(dev->intr_handle);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't enable interrupts for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	ret = rte_intr_callback_register(dev->intr_handle,
+			fpga_dev_interrupt_handler, dev);
+	if (ret < 0) {
+		rte_bbdev_log(ERR,
+				"Couldn't register interrupt callback for device: %s",
+				dev->data->name);
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct rte_bbdev_ops fpga_ops = {
+	.setup_queues = fpga_setup_queues,
+	.intr_enable = fpga_intr_enable,
+	.close = fpga_dev_close,
+	.info_get = fpga_dev_info_get,
+	.queue_setup = fpga_queue_setup,
+	.queue_stop = fpga_queue_stop,
+	.queue_start = fpga_queue_start,
+	.queue_release = fpga_queue_release,
+	.queue_intr_enable = fpga_queue_intr_enable,
+	.queue_intr_disable = fpga_queue_intr_disable
+};
+
+static inline void
+fpga_dma_enqueue(struct fpga_queue *q, uint16_t num_desc,
+		struct rte_bbdev_stats *queue_stats)
+{
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = 0;
+	queue_stats->acc_offload_cycles = 0;
+#else
+	RTE_SET_USED(queue_stats);
+#endif
+
+	/* Update tail and shadow_tail register */
+	q->tail = (q->tail + num_desc) & q->sw_ring_wrap_mask;
+
+	rte_wmb();
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	/* Start time measurement for enqueue function offload. */
+	start_time = rte_rdtsc_precise();
+#endif
+	mmio_write_16(q->shadow_tail_addr, q->tail);
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	rte_wmb();
+	queue_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+}
+
+/* Calculates number of CBs in processed encoder TB based on 'r' and input
+ * length.
+ */
+static inline uint8_t
+get_num_cbs_in_op_enc(struct rte_bbdev_op_turbo_enc *turbo_enc)
+{
+	uint8_t c, c_neg, r, crc24_bits = 0;
+	uint16_t k, k_neg, k_pos;
+	uint8_t cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_enc->input.length;
+	r = turbo_enc->tb_params.r;
+	c = turbo_enc->tb_params.c;
+	c_neg = turbo_enc->tb_params.c_neg;
+	k_neg = turbo_enc->tb_params.k_neg;
+	k_pos = turbo_enc->tb_params.k_pos;
+	crc24_bits = 24;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		length -= (k - crc24_bits) >> 3;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Calculates number of CBs in processed decoder TB based on 'r' and input
+ * length.
+ */
+static inline uint16_t
+get_num_cbs_in_op_dec(struct rte_bbdev_op_turbo_dec *turbo_dec)
+{
+	uint8_t c, c_neg, r = 0;
+	uint16_t kw, k, k_neg, k_pos, cbs_in_op = 0;
+	int32_t length;
+
+	length = turbo_dec->input.length;
+	r = turbo_dec->tb_params.r;
+	c = turbo_dec->tb_params.c;
+	c_neg = turbo_dec->tb_params.c_neg;
+	k_neg = turbo_dec->tb_params.k_neg;
+	k_pos = turbo_dec->tb_params.k_pos;
+	while (length > 0 && r < c) {
+		k = (r < c_neg) ? k_neg : k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+		length -= kw;
+		r++;
+		cbs_in_op++;
+	}
+
+	return cbs_in_op;
+}
+
+/* Read flag value 0/1/ from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
+/* Print an error if a descriptor error has occurred.
+ *  Return 0 on success, 1 on failure
+ */
+static inline int
+check_desc_error(uint32_t error_code) {
+	switch (error_code) {
+	case DESC_ERR_NO_ERR:
+		return 0;
+	case DESC_ERR_K_OUT_OF_RANGE:
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144)");
+		break;
+	case DESC_ERR_K_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range");
+		break;
+	case DESC_ERR_KPAI_NOT_NORMAL:
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only");
+		break;
+	case DESC_ERR_DESC_OFFSET_ERR:
+		rte_bbdev_log(ERR, "Queue offset does not meet the expectation in the FPGA");
+		break;
+	case (DESC_ERR_K_OUT_OF_RANGE | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is out of range (k<40 or k>6144) and queue offset error");
+		break;
+	case (DESC_ERR_K_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Block_size_k is not a normal value within normal range and queue offset error");
+		break;
+	case (DESC_ERR_KPAI_NOT_NORMAL | DESC_ERR_DESC_OFFSET_ERR):
+		rte_bbdev_log(ERR, "Three_kpai is not a normal value for UL only and queue offset error");
+		break;
+	case DESC_ERR_DESC_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for descriptor read");
+		break;
+	case DESC_ERR_DESC_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Descriptor read time-out");
+		break;
+	case DESC_ERR_DESC_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Descriptor read TLP poisoned");
+		break;
+	case DESC_ERR_CB_READ_FAIL:
+		rte_bbdev_log(ERR, "Unsuccessful completion for code block");
+		break;
+	case DESC_ERR_CB_READ_TIMEOUT:
+		rte_bbdev_log(ERR, "Code block read time-out");
+		break;
+	case DESC_ERR_CB_READ_TLP_POISONED:
+		rte_bbdev_log(ERR, "Code block read TLP poisoned");
+		break;
+	default:
+		rte_bbdev_log(ERR, "Descriptor error unknown error code %u",
+				error_code);
+		break;
+	}
+	return 1;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param k
+ *   K value (length of input in bits).
+ * @param e
+ *   E value (length of output in bits).
+ * @param ncb
+ *   Ncb value (size of the soft buffer).
+ * @param out_length
+ *   Length of output buffer
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_te_fill(struct rte_bbdev_enc_op *op,
+		struct fpga_dma_enc_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t k, uint16_t e, uint16_t ncb,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+
+{
+	/* reset */
+	desc->done = 0;
+	desc->crc_en = check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_CRC_24B_ATTACH);
+	desc->bypass_rm = !check_bit(op->turbo_enc.op_flags,
+		RTE_BBDEV_TURBO_RATE_MATCH);
+	desc->k = k;
+	desc->e = e;
+	desc->ncb = ncb;
+	desc->rv = op->turbo_enc.rv_index;
+	desc->offset = desc_offset;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+/**
+ * Set DMA descriptor for encode operation (1 Code Block)
+ *
+ * @param op
+ *   Pointer to a single encode operation.
+ * @param desc
+ *   Pointer to DMA descriptor.
+ * @param input
+ *   Pointer to pointer to input data which will be decoded.
+ * @param in_length
+ *   Length of an input.
+ * @param k
+ *   K value (length of an output in bits).
+ * @param in_offset
+ *   Input offset in rte_mbuf structure. It is used for calculating the point
+ *   where data is starting.
+ * @param out_offset
+ *   Output offset in rte_mbuf structure. It is used for calculating the point
+ *   where hard output data will be stored.
+ * @param cbs_in_op
+ *   Number of CBs contained in one operation.
+ */
+static inline int
+fpga_dma_desc_td_fill(struct rte_bbdev_dec_op *op,
+		struct fpga_dma_dec_desc *desc, struct rte_mbuf *input,
+		struct rte_mbuf *output, uint16_t in_length, uint16_t k,
+		uint32_t in_offset, uint32_t out_offset, uint16_t desc_offset,
+		uint8_t cbs_in_op)
+{
+	/* reset */
+	desc->done = 0;
+	/* Set inbound data buffer address */
+	desc->in_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset) >> 32);
+	desc->in_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(input, in_offset));
+	desc->in_len = in_length;
+	desc->k = k;
+	desc->crc_type = !check_bit(op->turbo_dec.op_flags,
+			RTE_BBDEV_TURBO_CRC_TYPE_24B);
+	if ((op->turbo_dec.code_block_mode == 0)
+		&& !check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		desc->drop_crc = 1;
+	desc->max_iter = op->turbo_dec.iter_max * 2;
+	desc->offset = desc_offset;
+	desc->out_addr_hi = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset) >> 32);
+	desc->out_addr_lw = (uint32_t)(
+			rte_pktmbuf_mtophys_offset(output, out_offset));
+
+	/* Save software context needed for dequeue */
+	desc->op_addr = op;
+
+	/* Set total number of CBs in an op */
+	desc->cbs_in_op = cbs_in_op;
+
+	return 0;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo encoder parameters */
+static int
+validate_enc_op(struct rte_bbdev_enc_op *op)
+{
+	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
+	struct rte_bbdev_op_enc_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_tb_params *tb = NULL;
+	uint16_t kw, kw_neg, kw_pos;
+
+	if (turbo_enc->input.length >
+			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return -1;
+	}
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_enc->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_enc->output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid output pointer");
+		return -1;
+	}
+	if (turbo_enc->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_enc->rv_index);
+		return -1;
+	}
+	if (turbo_enc->code_block_mode != 0 &&
+			turbo_enc->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_enc->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_enc->code_block_mode == 0) {
+		tb = &turbo_enc->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+				&& tb->r < tb->cab) {
+			rte_bbdev_log(ERR,
+					"ea (%u) is less than %u or it is not even",
+					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+				&& tb->c > tb->cab) {
+			rte_bbdev_log(ERR,
+					"eb (%u) is less than %u or it is not even",
+					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
+					RTE_BBDEV_C_SUBBLOCK);
+		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
+			rte_bbdev_log(ERR,
+					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
+					tb->ncb_neg, tb->k_neg, kw_neg);
+			return -1;
+		}
+
+		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
+					RTE_BBDEV_C_SUBBLOCK);
+		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
+			rte_bbdev_log(ERR,
+					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
+					tb->ncb_pos, tb->k_pos, kw_pos);
+			return -1;
+		}
+		if (tb->r > (tb->c - 1)) {
+			rte_bbdev_log(ERR,
+					"r (%u) is greater than c - 1 (%u)",
+					tb->r, tb->c - 1);
+			return -1;
+		}
+	} else {
+		cb = &turbo_enc->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+
+		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+			rte_bbdev_log(ERR,
+					"e (%u) is less than %u or it is not even",
+					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+			return -1;
+		}
+
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		if (cb->ncb < cb->k || cb->ncb > kw) {
+			rte_bbdev_log(ERR,
+					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
+					cb->ncb, cb->k, kw);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline char *
+mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
+{
+	if (unlikely(len > rte_pktmbuf_tailroom(m)))
+		return NULL;
+
+	char *tail = (char *)m->buf_addr + m->data_off + m->data_len;
+	m->data_len = (uint16_t)(m->data_len + len);
+	m_head->pkt_len  = (m_head->pkt_len + len);
+	return tail;
+}
+
+static inline int
+enqueue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	total_left = op->turbo_enc.input.length;
+	k = op->turbo_enc.cb_params.k;
+	e = op->turbo_enc.cb_params.e;
+	ncb = op->turbo_enc.cb_params.ncb;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		in_length = ((k - 24) >> 3);
+	else
+		in_length = k >> 3;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_RATE_MATCH))
+		out_length = (e + 7) >> 3;
+	else
+		out_length = (k >> 3) * 3 + 2;
+
+	mbuf_append(output, output, out_length);
+
+	/* Offset into the ring */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	/* Setup DMA Descriptor */
+	desc = q->ring_addr + ring_offset;
+
+	ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output, k, e,
+			ncb, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_enc.output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+			"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+static inline int
+enqueue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c, crc24_bits = 0;
+	uint16_t k, e, ncb, ring_offset;
+	uint32_t mbuf_total_left, in_length, out_length, in_offset, out_offset;
+	uint32_t seg_total_left;
+	uint16_t current_enqueued_cbs = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_enc_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo encoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_enc.input.data;
+	output_head = output = op->turbo_enc.output.data;
+	in_offset = op->turbo_enc.input.offset;
+	out_offset = op->turbo_enc.output.offset;
+	mbuf_total_left = op->turbo_enc.input.length;
+
+	c = op->turbo_enc.tb_params.c;
+	r = op->turbo_enc.tb_params.r;
+
+	if (check_bit(op->turbo_enc.op_flags, RTE_BBDEV_TURBO_CRC_24B_ATTACH))
+		crc24_bits = 24;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+
+		e = (r < op->turbo_enc.tb_params.cab) ?
+				op->turbo_enc.tb_params.ea :
+				op->turbo_enc.tb_params.eb;
+		k = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.k_neg :
+				op->turbo_enc.tb_params.k_pos;
+		ncb = (r < op->turbo_enc.tb_params.c_neg) ?
+				op->turbo_enc.tb_params.ncb_neg :
+				op->turbo_enc.tb_params.ncb_pos;
+
+		in_length = ((k - crc24_bits) >> 3);
+
+		if (check_bit(op->turbo_enc.op_flags,
+			RTE_BBDEV_TURBO_RATE_MATCH))
+			out_length = (e + 7) >> 3;
+		else
+			out_length = (k >> 3) * 3 + 2;
+
+		mbuf_append(output_head, output, out_length);
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_te_fill(op, &desc->enc_req, input, output,
+				k, e, ncb, in_offset, out_offset, ring_offset,
+				cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		rte_bbdev_log_debug("DMA request desc %p", desc);
+
+		/* Update lengths */
+		op->turbo_enc.output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+/* Validates turbo decoder parameters */
+static int
+validate_dec_op(struct rte_bbdev_dec_op *op)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
+	struct rte_bbdev_op_dec_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_tb_params *tb = NULL;
+
+	if (op->mempool == NULL) {
+		rte_bbdev_log(ERR, "Invalid mempool pointer");
+		return -1;
+	}
+	if (turbo_dec->input.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid input pointer");
+		return -1;
+	}
+	if (turbo_dec->hard_output.data == NULL) {
+		rte_bbdev_log(ERR, "Invalid hard_output pointer");
+		return -1;
+	}
+	if (turbo_dec->rv_index > 3) {
+		rte_bbdev_log(ERR,
+				"rv_index (%u) is out of range 0 <= value <= 3",
+				turbo_dec->rv_index);
+		return -1;
+	}
+	if (turbo_dec->iter_min < 1) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is less than 1",
+				turbo_dec->iter_min);
+		return -1;
+	}
+	if (turbo_dec->iter_max <= 2) {
+		rte_bbdev_log(ERR,
+				"iter_max (%u) is less than or equal to 2",
+				turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->iter_min > turbo_dec->iter_max) {
+		rte_bbdev_log(ERR,
+				"iter_min (%u) is greater than iter_max (%u)",
+				turbo_dec->iter_min, turbo_dec->iter_max);
+		return -1;
+	}
+	if (turbo_dec->code_block_mode != 0 &&
+			turbo_dec->code_block_mode != 1) {
+		rte_bbdev_log(ERR,
+				"code_block_mode (%u) is out of range 0 <= value <= 1",
+				turbo_dec->code_block_mode);
+		return -1;
+	}
+
+	if (turbo_dec->code_block_mode == 0) {
+
+		if ((turbo_dec->op_flags &
+			RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+			!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+			rte_bbdev_log(ERR,
+				"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP should accompany RTE_BBDEV_TURBO_CRC_TYPE_24B");
+			return -1;
+		}
+
+		tb = &turbo_dec->tb_params;
+		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c_neg > 0) {
+			rte_bbdev_log(ERR,
+					"k_neg (%u) is out of range %u <= value <= %u",
+					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+				&& tb->c > tb->c_neg) {
+			rte_bbdev_log(ERR,
+					"k_pos (%u) is out of range %u <= value <= %u",
+					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+			rte_bbdev_log(ERR,
+					"c_neg (%u) is out of range 0 <= value <= %u",
+					tb->c_neg,
+					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+			rte_bbdev_log(ERR,
+					"c (%u) is out of range 1 <= value <= %u",
+					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+			return -1;
+		}
+		if (tb->cab > tb->c) {
+			rte_bbdev_log(ERR,
+					"cab (%u) is greater than c (%u)",
+					tb->cab, tb->c);
+			return -1;
+		}
+	} else {
+
+		if (turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) {
+			rte_bbdev_log(ERR,
+					"RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP is invalid in CB-mode");
+			return -1;
+		}
+
+		cb = &turbo_dec->cb_params;
+		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+			rte_bbdev_log(ERR,
+					"k (%u) is out of range %u <= value <= %u",
+					cb->k, RTE_BBDEV_MIN_CB_SIZE,
+					RTE_BBDEV_MAX_CB_SIZE);
+			return -1;
+		}
+	}
+
+	return 0;
+}
+#endif
+
+static inline int
+enqueue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input;
+	struct rte_mbuf *output;
+	int ret;
+	uint16_t k, kw, ring_offset;
+	uint32_t total_left, in_length, out_length, in_offset, out_offset;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output = op->turbo_dec.hard_output.data;
+	total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	k = op->turbo_dec.cb_params.k;
+	kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+	in_length = kw;
+	out_length = k >> 3;
+
+	mbuf_append(output, output, out_length);
+
+	/* Setup DMA Descriptor */
+	ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+	desc = q->ring_addr + ring_offset;
+	ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+			in_length, k, in_offset, out_offset, ring_offset, 1);
+	if (unlikely(ret < 0))
+		return ret;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+#endif
+
+	/* Update lengths */
+	total_left -= in_length;
+	op->turbo_dec.hard_output.length += out_length;
+
+	if (total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CB sizes: mbuf len %u, cb len %u",
+				total_left, in_length);
+		return -1;
+	}
+
+	return 1;
+}
+
+
+static inline int
+enqueue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op *op,
+		uint16_t desc_offset, uint8_t cbs_in_op)
+{
+	union fpga_dma_desc *desc;
+	struct rte_mbuf *input, *output_head, *output;
+	int ret;
+	uint8_t r, c;
+	uint16_t k, kw, in_length, out_length, ring_offset;
+	uint32_t mbuf_total_left, seg_total_left, in_offset, out_offset;
+	uint16_t current_enqueued_cbs = 0;
+	uint16_t crc24_overlap = 0;
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	/* Validate op structure */
+	if (validate_dec_op(op) == -1) {
+		rte_bbdev_log(ERR, "Turbo decoder validation failed");
+		return -EINVAL;
+	}
+#endif
+
+	input = op->turbo_dec.input.data;
+	output_head = output = op->turbo_dec.hard_output.data;
+	mbuf_total_left = op->turbo_dec.input.length;
+	in_offset = op->turbo_dec.input.offset;
+	out_offset = op->turbo_dec.hard_output.offset;
+
+	if (!check_bit(op->turbo_dec.op_flags,
+		RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP))
+		crc24_overlap = 24;
+
+	c = op->turbo_dec.tb_params.c;
+	r = op->turbo_dec.tb_params.r;
+
+	while (mbuf_total_left > 0 && r < c && input != NULL) {
+		seg_total_left = rte_pktmbuf_data_len(input) - in_offset;
+		k = (r < op->turbo_dec.tb_params.c_neg) ?
+				op->turbo_dec.tb_params.k_neg :
+				op->turbo_dec.tb_params.k_pos;
+		kw = RTE_ALIGN_CEIL(k + 4, 32) * 3;
+
+		in_length = kw;
+		out_length = (k - crc24_overlap) >> 3;
+
+		mbuf_append(output_head, output, out_length);
+
+		if (seg_total_left < in_length) {
+			rte_bbdev_log(ERR,
+					"Partial CB found in a TB. FPGA Driver doesn't support scatter-gather operations!");
+			return -1;
+		}
+
+		/* Setup DMA Descriptor */
+		ring_offset = ((q->tail + desc_offset) & q->sw_ring_wrap_mask);
+		desc = q->ring_addr + ring_offset;
+		ret = fpga_dma_desc_td_fill(op, &desc->dec_req, input, output,
+				in_length, k, in_offset, out_offset,
+				ring_offset, cbs_in_op);
+		if (unlikely(ret < 0))
+			return ret;
+
+		/* Update lengths */
+		ret = rte_pktmbuf_trim(op->turbo_dec.hard_output.data,
+				(crc24_overlap >> 3));
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		if (ret < 0) {
+			rte_bbdev_log(ERR,
+					"The length to remove is greater than the length of the last segment");
+			return -EINVAL;
+		}
+#endif
+		op->turbo_dec.hard_output.length += out_length;
+		mbuf_total_left -= in_length;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			input = input->next;
+			output = output->next;
+			in_offset = 0;
+			out_offset = 0;
+		} else {
+			in_offset += in_length;
+			out_offset += out_length;
+		}
+
+		r++;
+		desc_offset++;
+		current_enqueued_cbs++;
+	}
+
+	if (mbuf_total_left > 0) {
+		rte_bbdev_log(ERR,
+				"Some date still left for processing: mbuf_total_left = %u",
+				mbuf_total_left);
+		return -1;
+	}
+
+	return current_enqueued_cbs;
+}
+
+static uint16_t
+fpga_enqueue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_enc.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_enc(&ops[i]->turbo_enc);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_enc_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_enc_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing enc ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->enc_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static uint16_t
+fpga_enqueue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	uint8_t cbs_in_op;
+	uint16_t i, total_enqueued_cbs = 0;
+	int32_t avail;
+	int enqueued_cbs;
+	struct fpga_queue *q = q_data->queue_private;
+	union fpga_dma_desc *desc;
+
+	/* Check if queue is not full */
+	if (unlikely(((q->tail + 1) & q->sw_ring_wrap_mask) ==
+			q->head_free_desc))
+		return 0;
+
+	/* Calculates available space */
+	avail = (q->head_free_desc > q->tail) ?
+		q->head_free_desc - q->tail - 1 :
+		q->ring_ctrl_reg.ring_size + q->head_free_desc - q->tail - 1;
+
+	for (i = 0; i < num; ++i) {
+		if (ops[i]->turbo_dec.code_block_mode == 0) {
+			cbs_in_op = get_num_cbs_in_op_dec(&ops[i]->turbo_dec);
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - cbs_in_op < 0))
+				break;
+			avail -= cbs_in_op;
+			enqueued_cbs = enqueue_dec_one_op_tb(q, ops[i],
+					total_enqueued_cbs, cbs_in_op);
+		} else {
+			/* Check if there is available space for further
+			 * processing
+			 */
+			if (unlikely(avail - 1 < 0))
+				break;
+			avail -= 1;
+			enqueued_cbs = enqueue_dec_one_op_cb(q, ops[i],
+					total_enqueued_cbs);
+		}
+
+		if (enqueued_cbs < 0)
+			break;
+
+		total_enqueued_cbs += enqueued_cbs;
+
+		rte_bbdev_log_debug("enqueuing dec ops [%d/%d] | head %d | tail %d",
+				total_enqueued_cbs, num,
+				q->head_free_desc, q->tail);
+	}
+
+	/* Set interrupt bit for last CB in enqueued ops. FPGA issues interrupt
+	 * only when all previous CBs were already processed.
+	 */
+	desc = q->ring_addr + ((q->tail + total_enqueued_cbs - 1)
+			& q->sw_ring_wrap_mask);
+	desc->dec_req.irq_en = q->irq_enable;
+
+	fpga_dma_enqueue(q, total_enqueued_cbs, &q_data->queue_stats);
+
+	/* Update stats */
+	q_data->queue_stats.enqueued_count += i;
+	q_data->queue_stats.enqueue_err_count += num - i;
+
+	return i;
+}
+
+static inline int
+dequeue_enc_one_op_cb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+
+	/* Set current desc */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/*check if done */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+	rte_bbdev_log_debug("DMA response desc %p", desc);
+
+	*op = desc->enc_req.op_addr;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status = desc_error << RTE_BBDEV_DATA_ERROR;
+
+	return 1;
+}
+
+static inline int
+dequeue_enc_one_op_tb(struct fpga_queue *q, struct rte_bbdev_enc_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx;
+	int desc_error = 0;
+	int status = 0;
+
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->enc_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->enc_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->enc_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |=  desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->enc_req.op_addr;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static inline int
+dequeue_dec_one_op_cb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	int desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* make sure the response is read atomically */
+	rte_smp_rmb();
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_dma_dec_desc_debug_info(desc);
+
+#endif
+
+	*op = desc->dec_req.op_addr;
+	/* FPGA reports in half-iterations, from 0 to 31. get ceiling */
+	(*op)->turbo_dec.iter_count = (desc->dec_req.iter + 2) >> 1;
+	/* crc_pass = 0 when decoder fails */
+	(*op)->status = !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+	/* Check the decriptor error field, return 1 on error */
+	desc_error = check_desc_error(desc->enc_req.error);
+	(*op)->status |= desc_error << RTE_BBDEV_DATA_ERROR;
+	return 1;
+}
+
+static inline int
+dequeue_dec_one_op_tb(struct fpga_queue *q, struct rte_bbdev_dec_op **op,
+		uint16_t desc_offset)
+{
+	union fpga_dma_desc *desc;
+	uint8_t cbs_in_op, cb_idx, iter_count = 0;
+	int status = 0;
+	int  desc_error = 0;
+	/* Set descriptor */
+	desc = q->ring_addr + ((q->head_free_desc + desc_offset)
+			& q->sw_ring_wrap_mask);
+
+	/* Verify if done bit is set */
+	if (desc->dec_req.done == 0)
+		return -1;
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	/* Verify if done bit in all CBs is set */
+	cbs_in_op = desc->dec_req.cbs_in_op;
+	for (cb_idx = 1; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		if (desc->dec_req.done == 0)
+			return -1;
+	}
+
+	/* Make sure the response is read atomically */
+	rte_smp_rmb();
+
+	for (cb_idx = 0; cb_idx < cbs_in_op; ++cb_idx) {
+		desc = q->ring_addr + ((q->head_free_desc + desc_offset +
+				cb_idx) & q->sw_ring_wrap_mask);
+		/* get max iter_count for all CBs in op */
+		iter_count = RTE_MAX(iter_count, (uint8_t) desc->dec_req.iter);
+		/* crc_pass = 0 when decoder fails, one fails all */
+		status |= !(desc->dec_req.crc_pass) << RTE_BBDEV_CRC_ERROR;
+		/* Check the decriptor error field, return 1 on error */
+		desc_error = check_desc_error(desc->enc_req.error);
+		status |= desc_error << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log_debug("DMA response desc %p", desc);
+	}
+
+	*op = desc->dec_req.op_addr;
+
+	/* FPGA reports in half-iterations, get ceiling */
+	(*op)->turbo_dec.iter_count = (iter_count + 2) >> 1;
+	(*op)->status = status;
+	return cbs_in_op;
+}
+
+static uint16_t
+fpga_dequeue_enc(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_enc_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->enc_req.op_addr;
+		if (op->turbo_enc.code_block_mode == 0)
+			ret = dequeue_enc_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_enc_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing enc ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+static uint16_t
+fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_dec_op **ops, uint16_t num)
+{
+	struct fpga_queue *q = q_data->queue_private;
+	uint32_t avail = (q->tail - q->head_free_desc) & q->sw_ring_wrap_mask;
+	uint16_t i;
+	uint16_t dequeued_cbs = 0;
+	struct rte_bbdev_dec_op *op;
+	int ret;
+
+	for (i = 0; (i < num) && (dequeued_cbs < avail); ++i) {
+		op = (q->ring_addr + ((q->head_free_desc + dequeued_cbs)
+			& q->sw_ring_wrap_mask))->dec_req.op_addr;
+		if (op->turbo_dec.code_block_mode == 0)
+			ret = dequeue_dec_one_op_tb(q, &ops[i], dequeued_cbs);
+		else
+			ret = dequeue_dec_one_op_cb(q, &ops[i], dequeued_cbs);
+
+		if (ret < 0)
+			break;
+
+		dequeued_cbs += ret;
+
+		rte_bbdev_log_debug("dequeuing dec ops [%d/%d] | head %d | tail %d",
+				dequeued_cbs, num, q->head_free_desc, q->tail);
+	}
+
+	/* Update head */
+	q->head_free_desc = (q->head_free_desc + dequeued_cbs) &
+			q->sw_ring_wrap_mask;
+
+	/* Update stats */
+	q_data->queue_stats.dequeued_count += i;
+
+	return i;
+}
+
+/* Initialization Function */
+static void
+fpga_lte_fec_init(struct rte_bbdev *dev)
+{
+	struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+
+	dev->dev_ops = &fpga_ops;
+	dev->enqueue_enc_ops = fpga_enqueue_enc;
+	dev->enqueue_dec_ops = fpga_enqueue_dec;
+	dev->dequeue_enc_ops = fpga_dequeue_enc;
+	dev->dequeue_dec_ops = fpga_dequeue_dec;
+
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device =
+			!strcmp(dev->device->driver->name,
+					RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME));
+	((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base =
+			pci_dev->mem_resource[0].addr;
+
+	rte_bbdev_log_debug(
+			"Init device %s [%s] @ virtaddr %p phyaddr %#"PRIx64,
+			dev->device->driver->name, dev->data->name,
+			(void *)pci_dev->mem_resource[0].addr,
+			pci_dev->mem_resource[0].phys_addr);
+}
+
+static int
+fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused,
+	struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev = NULL;
+	char dev_name[RTE_BBDEV_NAME_MAX_LEN];
+
+	if (pci_dev == NULL) {
+		rte_bbdev_log(ERR, "NULL PCI device");
+		return -EINVAL;
+	}
+
+	rte_pci_device_name(&pci_dev->addr, dev_name, sizeof(dev_name));
+
+	/* Allocate memory to be used privately by drivers */
+	bbdev = rte_bbdev_allocate(pci_dev->device.name);
+	if (bbdev == NULL)
+		return -ENODEV;
+
+	/* allocate device private memory */
+	bbdev->data->dev_private = rte_zmalloc_socket(dev_name,
+			sizeof(struct fpga_lte_fec_device), RTE_CACHE_LINE_SIZE,
+			pci_dev->device.numa_node);
+
+	if (bbdev->data->dev_private == NULL) {
+		rte_bbdev_log(CRIT,
+				"Allocate of %zu bytes for device \"%s\" failed",
+				sizeof(struct fpga_lte_fec_device), dev_name);
+				rte_bbdev_release(bbdev);
+			return -ENOMEM;
+	}
+
+	/* Fill HW specific part of device structure */
+	bbdev->device = &pci_dev->device;
+	bbdev->intr_handle = &pci_dev->intr_handle;
+	bbdev->data->socket_id = pci_dev->device.numa_node;
+
+	/* Invoke FEC FPGA device initialization function */
+	fpga_lte_fec_init(bbdev);
+
+	rte_bbdev_log_debug("bbdev id = %u [%s]",
+			bbdev->data->dev_id, dev_name);
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+	uint32_t version_id = fpga_reg_read_32(d->mmio_base,
+			FPGA_LTE_FEC_VERSION_ID);
+	rte_bbdev_log(INFO, "FEC FPGA RTL v%u.%u",
+		((uint16_t)(version_id >> 16)), ((uint16_t)version_id));
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	if (!strcmp(bbdev->device->driver->name,
+			RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)))
+		print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+static int
+fpga_lte_fec_remove(struct rte_pci_device *pci_dev)
+{
+	struct rte_bbdev *bbdev;
+	int ret;
+	uint8_t dev_id;
+
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* Find device */
+	bbdev = rte_bbdev_get_named_dev(pci_dev->device.name);
+	if (bbdev == NULL) {
+		rte_bbdev_log(CRIT,
+				"Couldn't find HW dev \"%s\" to uninitialise it",
+				pci_dev->device.name);
+		return -ENODEV;
+	}
+	dev_id = bbdev->data->dev_id;
+
+	/* free device private memory before close */
+	rte_free(bbdev->data->dev_private);
+
+	/* Close device */
+	ret = rte_bbdev_close(dev_id);
+	if (ret < 0)
+		rte_bbdev_log(ERR,
+				"Device %i failed to close during uninit: %i",
+				dev_id, ret);
+
+	/* release bbdev from library */
+	ret = rte_bbdev_release(bbdev);
+	if (ret)
+		rte_bbdev_log(ERR, "Device %i failed to uninit: %i", dev_id,
+				ret);
+
+	rte_bbdev_log_debug("Destroyed bbdev = %u", dev_id);
+
+	return 0;
+}
+
+static inline void
+set_default_fpga_conf(struct fpga_lte_fec_conf *def_conf)
+{
+	/* clear default configuration before initialization */
+	memset(def_conf, 0, sizeof(struct fpga_lte_fec_conf));
+	/* Set pf mode to true */
+	def_conf->pf_mode_en = true;
+
+	/* Set ratio between UL and DL to 1:1 (unit of weight is 3 CBs) */
+	def_conf->ul_bandwidth = 3;
+	def_conf->dl_bandwidth = 3;
+
+	/* Set Load Balance Factor to 64 */
+	def_conf->dl_load_balance = 64;
+	def_conf->ul_load_balance = 64;
+}
+
+/* Initial configuration of FPGA LTE FEC device */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf)
+{
+	uint32_t payload_32, address;
+	uint16_t payload_16;
+	uint8_t payload_8;
+	uint16_t q_id, vf_id, total_q_id, total_ul_q_id, total_dl_q_id;
+	struct rte_bbdev *bbdev = rte_bbdev_get_named_dev(dev_name);
+	struct fpga_lte_fec_conf def_conf;
+
+	if (bbdev == NULL) {
+		rte_bbdev_log(ERR,
+				"Invalid dev_name (%s), or device is not yet initialised",
+				dev_name);
+		return -ENODEV;
+	}
+
+	struct fpga_lte_fec_device *d = bbdev->data->dev_private;
+
+	if (conf == NULL) {
+		rte_bbdev_log(ERR,
+				"FPGA Configuration was not provided. Default configuration will be loaded.");
+		set_default_fpga_conf(&def_conf);
+		conf = &def_conf;
+	}
+
+	/*
+	 * Configure UL:DL ratio.
+	 * [7:0]: UL weight
+	 * [15:8]: DL weight
+	 */
+	payload_16 = (conf->dl_bandwidth << 8) | conf->ul_bandwidth;
+	address = FPGA_LTE_FEC_CONFIGURATION;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Clear all queues registers */
+	payload_32 = FPGA_INVALID_HW_QUEUE_ID;
+	for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+		address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+		fpga_reg_write_32(d->mmio_base, address, payload_32);
+	}
+
+	/*
+	 * If PF mode is enabled allocate all queues for PF only.
+	 *
+	 * For VF mode each VF can have different number of UL and DL queues.
+	 * Total number of queues to configure cannot exceed FPGA
+	 * capabilities - 64 queues - 32 queues for UL and 32 queues for DL.
+	 * Queues mapping is done according to configuration:
+	 *
+	 * UL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 0                |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_dl_queues_number[0] - 1 |   0   |
+	 * | conf->vf_dl_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_dl_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_dl_queues_number[7] - 1 |   7   |
+	 *
+	 * DL queues:
+	 * |                Q_ID              | VF_ID |
+	 * |                 32               |   0   |
+	 * |                ...               |   0   |
+	 * | conf->vf_ul_queues_number[0] - 1 |   0   |
+	 * | conf->vf_ul_queues_number[0]     |   1   |
+	 * |                ...               |   1   |
+	 * | conf->vf_ul_queues_number[1] - 1 |   1   |
+	 * |                ...               |  ...  |
+	 * | conf->vf_ul_queues_number[7] - 1 |   7   |
+	 *
+	 * Example of configuration:
+	 * conf->vf_ul_queues_number[0] = 4;  -> 4 UL queues for VF0
+	 * conf->vf_dl_queues_number[0] = 4;  -> 4 DL queues for VF0
+	 * conf->vf_ul_queues_number[1] = 2;  -> 2 UL queues for VF1
+	 * conf->vf_dl_queues_number[1] = 2;  -> 2 DL queues for VF1
+	 *
+	 * UL:
+	 * | Q_ID | VF_ID |
+	 * |   0  |   0   |
+	 * |   1  |   0   |
+	 * |   2  |   0   |
+	 * |   3  |   0   |
+	 * |   4  |   1   |
+	 * |   5  |   1   |
+	 *
+	 * DL:
+	 * | Q_ID | VF_ID |
+	 * |  32  |   0   |
+	 * |  33  |   0   |
+	 * |  34  |   0   |
+	 * |  35  |   0   |
+	 * |  36  |   1   |
+	 * |  37  |   1   |
+	 */
+	if (conf->pf_mode_en) {
+		payload_32 = 0x1;
+		for (q_id = 0; q_id < FPGA_TOTAL_NUM_QUEUES; ++q_id) {
+			address = (q_id << 2) + FPGA_LTE_FEC_QUEUE_MAP;
+			fpga_reg_write_32(d->mmio_base, address, payload_32);
+		}
+	} else {
+		/* Calculate total number of UL and DL queues to configure */
+		total_ul_q_id = total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			total_ul_q_id += conf->vf_ul_queues_number[vf_id];
+			total_dl_q_id += conf->vf_dl_queues_number[vf_id];
+		}
+		total_q_id = total_dl_q_id + total_ul_q_id;
+		/*
+		 * Check if total number of queues to configure does not exceed
+		 * FPGA capabilities (64 queues - 32 UL and 32 DL queues)
+		 */
+		if ((total_ul_q_id > FPGA_NUM_UL_QUEUES) ||
+			(total_dl_q_id > FPGA_NUM_DL_QUEUES) ||
+			(total_q_id > FPGA_TOTAL_NUM_QUEUES)) {
+			rte_bbdev_log(ERR,
+					"FPGA Configuration failed. Too many queues to configure: UL_Q %u, DL_Q %u, FPGA_Q %u",
+					total_ul_q_id, total_dl_q_id,
+					FPGA_TOTAL_NUM_QUEUES);
+			return -EINVAL;
+		}
+		total_ul_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_ul_queues_number[vf_id];
+					++q_id, ++total_ul_q_id) {
+				address = (total_ul_q_id << 2) +
+						FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+		total_dl_q_id = 0;
+		for (vf_id = 0; vf_id < FPGA_LTE_FEC_NUM_VFS; ++vf_id) {
+			for (q_id = 0; q_id < conf->vf_dl_queues_number[vf_id];
+					++q_id, ++total_dl_q_id) {
+				address = ((total_dl_q_id + FPGA_NUM_UL_QUEUES)
+						<< 2) + FPGA_LTE_FEC_QUEUE_MAP;
+				payload_32 = ((0x80 + vf_id) << 16) | 0x1;
+				fpga_reg_write_32(d->mmio_base, address,
+						payload_32);
+			}
+		}
+	}
+
+	/* Setting Load Balance Factor */
+	payload_16 = (conf->dl_load_balance << 8) | (conf->ul_load_balance);
+	address = FPGA_LTE_FEC_LOAD_BALANCE_FACTOR;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting length of ring descriptor entry */
+	payload_16 = FPGA_RING_DESC_ENTRY_LENGTH;
+	address = FPGA_LTE_FEC_RING_DESC_LEN;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Setting FLR timeout value */
+	payload_16 = conf->flr_time_out;
+	address = FPGA_LTE_FEC_FLR_TIME_OUT;
+	fpga_reg_write_16(d->mmio_base, address, payload_16);
+
+	/* Queue PF/VF mapping table is ready */
+	payload_8 = 0x1;
+	address = FPGA_LTE_FEC_QUEUE_PF_VF_MAP_DONE;
+	fpga_reg_write_8(d->mmio_base, address, payload_8);
+
+	rte_bbdev_log_debug("PF FPGA LTE FEC configuration complete for %s",
+			dev_name);
+
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	print_static_reg_debug_info(d->mmio_base);
+#endif
+	return 0;
+}
+
+/* FPGA LTE FEC PCI PF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_pf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_PF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_pf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_pf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+/* FPGA LTE FEC PCI VF address map */
+static struct rte_pci_id pci_id_fpga_lte_fec_vf_map[] = {
+	{
+		RTE_PCI_DEVICE(FPGA_LTE_FEC_VENDOR_ID,
+				FPGA_LTE_FEC_VF_DEVICE_ID)
+	},
+	{.device_id = 0},
+};
+
+static struct rte_pci_driver fpga_lte_fec_pci_vf_driver = {
+	.probe = fpga_lte_fec_probe,
+	.remove = fpga_lte_fec_remove,
+	.id_table = pci_id_fpga_lte_fec_vf_map,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING
+};
+
+
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_PF_DRIVER_NAME, fpga_lte_fec_pci_pf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_pf_map);
+RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver);
+RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME,
+		pci_id_fpga_lte_fec_vf_map);
+
+RTE_INIT(fpga_lte_fec_init_log)
+{
+	fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec");
+	if (fpga_lte_fec_logtype >= 0)
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG);
+#else
+		rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE);
+#endif
+}
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
new file mode 100644
index 0000000..9ae8b12
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.h
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2019 Intel Corporation
+ */
+
+#ifndef _FPGA_LTE_FEC_H_
+#define _FPGA_LTE_FEC_H_
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/**
+ * @file fpga_lte_fec.h
+ *
+ * Interface for Intel(R) FGPA LTE FEC device configuration at the host level,
+ * directly accessible by the application.
+ * Configuration related to LTE Turbo coding functionality is done through
+ * librte_bbdev library.
+ *
+ * @warning
+ * @b EXPERIMENTAL: this API may change without prior notice
+ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**< Number of Virtual Functions FGPA 4G FEC supports */
+#define FPGA_LTE_FEC_NUM_VFS 8
+
+/**
+ * Structure to pass FPGA 4G FEC configuration.
+ */
+struct fpga_lte_fec_conf {
+	/**< 1 if PF is used for dataplane, 0 for VFs */
+	bool pf_mode_en;
+	/**< Number of UL queues per VF */
+	uint8_t vf_ul_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< Number of DL queues per VF */
+	uint8_t vf_dl_queues_number[FPGA_LTE_FEC_NUM_VFS];
+	/**< UL bandwidth. Needed for schedule algorithm */
+	uint8_t ul_bandwidth;
+	/**< DL bandwidth. Needed for schedule algorithm */
+	uint8_t dl_bandwidth;
+	/**< UL Load Balance */
+	uint8_t ul_load_balance;
+	/**< DL Load Balance */
+	uint8_t dl_load_balance;
+	/**< FLR timeout value */
+	uint16_t flr_time_out;
+};
+
+/**
+ * Configure Intel(R) FPGA LTE FEC device
+ *
+ * @param dev_name
+ *   The name of the device. This is the short form of PCI BDF, e.g. 00:01.0.
+ *   It can also be retrieved for a bbdev device from the dev_name field in the
+ *   rte_bbdev_info structure returned by rte_bbdev_info_get().
+ * @param conf
+ *   Configuration to apply to FPGA 4G FEC.
+ *
+ * @return
+ *   Zero on success, negative value on failure.
+ */
+int
+fpga_lte_fec_configure(const char *dev_name,
+		const struct fpga_lte_fec_conf *conf);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FPGA_LTE_FEC_H_ */
diff --git a/drivers/baseband/fpga_lte_fec/meson.build b/drivers/baseband/fpga_lte_fec/meson.build
new file mode 100644
index 0000000..bf44e6b
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/meson.build
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+deps += ['bbdev', 'bus_vdev', 'ring', 'pci', 'bus_pci']
+name = 'bbdev_fpga_lte_fec'
+allow_experimental_apis = true
+sources = files('fpga_lte_fec.c')
diff --git a/drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map b/drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map
new file mode 100644
index 0000000..e923270
--- /dev/null
+++ b/drivers/baseband/fpga_lte_fec/rte_pmd_bbdev_fpga_lte_fec_version.map
@@ -0,0 +1,3 @@
+DPDK_19.08 {
+    local: *;
+};
diff --git a/drivers/baseband/meson.build b/drivers/baseband/meson.build
index 40a87d2..391bd51 100644
--- a/drivers/baseband/meson.build
+++ b/drivers/baseband/meson.build
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
 
-drivers = ['null', 'turbo_sw']
+drivers = ['null', 'turbo_sw', 'fpga_lte_fec']
 
 config_flag_fmt = 'RTE_LIBRTE_@0@_PMD'
 driver_name_fmt = 'rte_pmd_@0@'
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 2c3d07a..cdd6073 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -216,6 +216,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_NETVSC_PMD)     += -lrte_pmd_netvsc
 
 ifeq ($(CONFIG_RTE_LIBRTE_BBDEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL)     += -lrte_pmd_bbdev_null
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_FPGA_LTE_FEC) += -lrte_pmd_fpga_lte_fec
 
 # TURBO SOFTWARE PMD is dependent on the FLEXRAN library
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lrte_pmd_bbdev_turbo_sw
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 03/10] bbdev: renaming non-generic LTE specific structure
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:45             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
                             ` (6 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Renaming of the enums and structure which were LTE specific to
allow for extension and support for 5GNR operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     | 103 ++++++++++++-----------
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  36 ++++----
 lib/librte_bbdev/rte_bbdev_op.h                  |  26 +++---
 5 files changed, 86 insertions(+), 85 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index 19e7689..7e05b94 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -607,9 +607,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -621,9 +621,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1332,14 +1332,15 @@ struct __rte_cache_aligned fpga_queue {
 validate_enc_op(struct rte_bbdev_enc_op *op)
 {
 	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
-	struct rte_bbdev_op_enc_cb_params *cb = NULL;
-	struct rte_bbdev_op_enc_tb_params *tb = NULL;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
 	uint16_t kw, kw_neg, kw_pos;
 
 	if (turbo_enc->input.length >
-			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+			RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+				turbo_enc->input.length,
+				RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return -1;
 	}
@@ -1372,32 +1373,32 @@ struct __rte_cache_aligned fpga_queue {
 
 	if (turbo_enc->code_block_mode == 0) {
 		tb = &turbo_enc->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+		if (tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1406,23 +1407,23 @@ struct __rte_cache_aligned fpga_queue {
 					tb->cab, tb->c);
 			return -1;
 		}
-		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+		if ((tb->ea < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->ea % 2))
 				&& tb->r < tb->cab) {
 			rte_bbdev_log(ERR,
 					"ea (%u) is less than %u or it is not even",
-					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+					tb->ea, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
-		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+		if ((tb->eb < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->eb % 2))
 				&& tb->c > tb->cab) {
 			rte_bbdev_log(ERR,
 					"eb (%u) is less than %u or it is not even",
-					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+					tb->eb, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
 		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
 			rte_bbdev_log(ERR,
 					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
@@ -1431,7 +1432,7 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
 			rte_bbdev_log(ERR,
 					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
@@ -1446,23 +1447,23 @@ struct __rte_cache_aligned fpga_queue {
 		}
 	} else {
 		cb = &turbo_enc->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 
-		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+		if (cb->e < RTE_BBDEV_TURBO_MIN_CB_SIZE || (cb->e % 2)) {
 			rte_bbdev_log(ERR,
 					"e (%u) is less than %u or it is not even",
-					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+					cb->e, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
-		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 		if (cb->ncb < cb->k || cb->ncb > kw) {
 			rte_bbdev_log(ERR,
 					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
@@ -1655,8 +1656,8 @@ struct __rte_cache_aligned fpga_queue {
 validate_dec_op(struct rte_bbdev_dec_op *op)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
-	struct rte_bbdev_op_dec_cb_params *cb = NULL;
-	struct rte_bbdev_op_dec_tb_params *tb = NULL;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
 
 	if (op->mempool == NULL) {
 		rte_bbdev_log(ERR, "Invalid mempool pointer");
@@ -1713,33 +1714,33 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		tb = &turbo_dec->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c > tb->c_neg) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1757,12 +1758,12 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		cb = &turbo_dec->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 	}
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 94aa536..374d177 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -34,9 +34,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -103,7 +103,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -158,9 +158,9 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -172,8 +172,8 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 #endif
@@ -257,7 +257,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -277,7 +277,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -295,7 +295,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -313,7 +313,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -439,9 +439,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -466,9 +466,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -773,9 +773,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1074,7 +1074,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index 6be53f5..f61c115 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,22 +26,22 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
  * Maximum number of Code Blocks in Transport Block. It is calculated based on
  * maximum size of one Code Block and one Transport Block (considering CRC24A
  * and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
@@ -133,7 +133,7 @@ struct rte_bbdev_op_data {
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -204,7 +204,7 @@ struct rte_bbdev_op_dec_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -288,7 +288,7 @@ struct rte_bbdev_op_turbo_dec {
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
+struct rte_bbdev_op_enc_turbo_cb_params {
 	/**< The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
@@ -305,7 +305,7 @@ struct rte_bbdev_op_enc_cb_params {
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
+struct rte_bbdev_op_enc_turbo_tb_params {
 	/**< The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
@@ -320,7 +320,7 @@ struct rte_bbdev_op_enc_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -375,9 +375,9 @@ struct rte_bbdev_op_turbo_enc {
 	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (2 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:48             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
                             ` (5 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=a, Size: 44399 bytes --]

Extension to BBDEV operations to support 5G
on top of existing 4G operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 lib/librte_bbdev/rte_bbdev.c    |  22 +-
 lib/librte_bbdev/rte_bbdev.h    | 135 +++++++++-
 lib/librte_bbdev/rte_bbdev_op.h | 567 ++++++++++++++++++++++++++++++++--------
 3 files changed, 602 insertions(+), 122 deletions(-)

diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index a3ab5d9..7e4acfc 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev * __rte_experimental
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev * __rte_experimental
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev * __rte_experimental
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev * __rte_experimental
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev * __rte_experimental
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool * __rte_experimental
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index d131692..a0e9b1a 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -161,7 +161,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -313,7 +313,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -433,6 +433,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -506,6 +514,67 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -566,6 +635,68 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+
+static inline uint16_t __rte_experimental
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index f61c115..e80d2ce 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -31,57 +31,61 @@
 #define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
 #define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
 #define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,114 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16),
+	/** Set if a device supports loop-back access to
+	 *  HARQ internal memory. Intended for troubleshooting.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK = (1ULL << 17)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +220,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +232,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +240,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +255,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +356,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
 	};
 };
 
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	 * per bit of the original CB.
+	 */
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {1,2,4,6,8}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+	};
+};
+
+/** Turbo encode code block parameters */
 struct rte_bbdev_op_enc_turbo_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
+/** Turbo encode transport block parameters */
 struct rte_bbdev_op_enc_turbo_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +549,38 @@ struct rte_bbdev_op_enc_turbo_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +597,131 @@ struct rte_bbdev_op_enc_turbo_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched CB or TB output buffer */
 	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
+		/** Struct which stores Code Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
+		/** Struct which stores Transport Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched TB or CB output buffer */
+	struct rte_bbdev_op_data output;
+
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+	};
+};
+
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Amount of memory for HARQ in external DDR in MB */
+	uint16_t harq_memory_size;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +729,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -513,7 +852,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -548,7 +888,8 @@ struct rte_mempool * __rte_experimental
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR operations
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (3 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:49             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
                             ` (4 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

The documentation captures the related change in
BBDEV API to support 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/prog_guide/bbdev.rst | 505 ++++++++++++++++++++++++++++++++++++----
 1 file changed, 458 insertions(+), 47 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 038bc6e..3858daf 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -166,9 +166,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +220,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +234,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +266,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +336,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +406,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +455,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +525,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +552,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +627,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +658,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +679,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +710,376 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK                        |
+| Set if a device supports loopback access to HARQ internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {1,2,4,6,8} from pi/2-BPSK to 256QAM           |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (4 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:53             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
                             ` (3 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Implementation still based on Intel SDK libraries
optimized for AVX512 instructions set and 5GNR.
This can be also build for AVX2 for 4G capability or
without SDK dependency for maintenance.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 config/common_base                               |   1 +
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 686 ++++++++++++++++++++++-
 drivers/baseband/turbo_sw/meson.build            |  10 +
 mk/rte.app.mk                                    |   8 +-
 5 files changed, 707 insertions(+), 13 deletions(-)

diff --git a/config/common_base b/config/common_base
index cc13025..67e1cc6 100644
--- a/config/common_base
+++ b/config/common_base
@@ -530,6 +530,7 @@ CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 CONFIG_RTE_BBDEV_SDK_AVX2=n
+CONFIG_RTE_BBDEV_SDK_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index 414d0d9..4aa05d2 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -3,7 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-
 # library name
 LIB = librte_pmd_bbdev_turbo_sw.a
 
@@ -34,6 +33,20 @@ LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
 LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 endif
 
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),n)
+$(error "CONFIG_RTE_BBDEV_SDK_AVX512 requires CONFIG_RTE_BBDEV_SDK_AVX2 set")
+endif
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
 # library version
 LIBABIVER := 1
 
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 374d177..2f06369 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,11 +14,24 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
 #ifdef RTE_BBDEV_SDK_AVX2
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
 
 #define DRIVER_NAME baseband_turbo_sw
 
@@ -84,6 +97,7 @@ struct turbo_sw_queue {
 	enum rte_bbdev_op_type type;
 } __rte_cache_aligned;
 
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline char *
 mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
@@ -158,7 +172,8 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
 						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
@@ -172,25 +187,60 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			}
+		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.harq_memory_size = 0,
+			.num_buffers_src =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
 	static struct rte_bbdev_queue_conf default_queue_conf = {
 		.queue_size = RTE_BBDEV_QUEUE_SIZE_LIMIT,
 	};
-
 #ifdef RTE_BBDEV_SDK_AVX2
 	static const enum rte_cpu_flag_t cpu_flag = RTE_CPUFLAG_SSE4_2;
 	dev_info->cpu_flag_reqs = &cpu_flag;
 #else
 	dev_info->cpu_flag_reqs = NULL;
 #endif
-
 	default_queue_conf.socket = dev->data->socket_id;
 
 	dev_info->driver_name = RTE_STR(DRIVER_NAME);
@@ -277,7 +327,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -285,7 +335,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -420,6 +470,7 @@ struct turbo_sw_queue {
 };
 
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -475,16 +526,21 @@ struct turbo_sw_queue {
 	return 0;
 }
 #endif
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -508,11 +564,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -541,11 +600,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -572,13 +634,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -754,6 +819,143 @@ struct turbo_sw_queue {
 #endif
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -847,6 +1049,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -863,6 +1152,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
@@ -887,7 +1193,11 @@ struct turbo_sw_queue {
 		struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -905,11 +1215,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -925,11 +1237,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -1022,6 +1335,202 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in LDPC decoder output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		harq_out = NULL;
+		if (m_harq_out != NULL) {
+			/* Initialize HARQ data length since we overwrite */
+			m_harq_out->data_len = 0;
+			/* Check there is enough space
+			 * in the HARQ outbound buffer
+			 */
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		}
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in HARQ output mbuf");
+			return;
+		}
+		/* get output data starting address and overwrite the data */
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1080,6 +1589,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1101,6 +1611,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1124,6 +1731,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1143,6 +1767,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1158,6 +1800,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1270,6 +1930,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
index 438b5a7..33345aa 100644
--- a/drivers/baseband/turbo_sw/meson.build
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -23,6 +23,16 @@ if dpdk_conf.has('RTE_BBDEV_SDK_AVX2')
 		includes += include_directories(path + '/lib_common')
 	endif
 endif
+if dpdk_conf.has('RTE_BBDEV_SDK_AVX512')
+	ext_deps += cc.find_library('libldpc_encoder_5gnr', dirs: [path + '/lib_ldpc_encoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libldpc_decoder_5gnr', dirs: [path + '/lib_ldpc_decoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libLDPC_ratematch_5gnr', dirs: [path + '/lib_LDPC_ratematch_5gnr'], required: true)
+	ext_deps += cc.find_library('librate_dematching_5gnr', dirs: [path + '/lib_rate_dematching_5gnr'], required: true)
+	includes += include_directories(path + '/lib_ldpc_encoder_5gnr')
+	includes += include_directories(path + '/lib_ldpc_decoder_5gnr')
+	includes += include_directories(path + '/lib_LDPC_ratematch_5gnr')
+	includes += include_directories(path + '/lib_rate_dematching_5gnr')
+endif
 
 deps += ['bbdev', 'bus_vdev', 'ring']
 name = 'bbdev_turbo_sw'
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index cdd6073..a586388 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -226,7 +226,13 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcr
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif # CONFIG_RTE_BBDEV_SDK_AVX512
 endif # CONFIG_RTE_BBDEV_SDK_AVX2
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 07/10] docs/guides: updating building steps for BBDEV PMD
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (5 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:54             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
                             ` (2 subsequent siblings)
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

This now includes steps to build with either
libraries for AVX2, or AVX512 or no dependency.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/bbdevs/turbo_sw.rst | 42 +++++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 455fa1d..2785a50 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -5,20 +5,21 @@ SW Turbo Poll Mode Driver
 =========================
 
 The SW Turbo PMD (**baseband_turbo_sw**) provides a software only poll mode bbdev
-driver that can optionally utilize Intel optimized libraries for LTE Layer 1
-workloads acceleration.
+driver that can optionally utilize Intel optimized libraries for LTE and 5GNR
+Layer 1 workloads acceleration.
 
 Note that the driver can also be built without any dependency with reduced
 functionality for maintenance purpose.
 
 To enable linking to the SDK libraries see detailed installation section below.
-One flag can be enabled depending on whether the target machine can support
-AVX2 instructions sets and the related SDK libraries for vectorized
+Two flags can be enabled depending on whether the target machine can support
+AVX2 and AVX512 instructions sets and the related SDK libraries for vectorized
 signal processing functions are installed :
 - CONFIG_RTE_BBDEV_SDK_AVX2
-
-By default this flag is disabled. For AVX2 machine and SDK
-library installed then this flag can be enabled.
+- CONFIG_RTE_BBDEV_SDK_AVX512
+By default these 2 flags are disabled by default. For AVX2 machine and SDK
+library installed then the first flag can be enabled. For AVX512 machine and
+SDK library installed then both flags can be enabled for full real time capability.
 
 This PMD supports the functions: FEC, Rate Matching and CRC functions detailed
 in the Features section.
@@ -45,11 +46,25 @@ For the LTE decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the 5G NR LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the 5G NR LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -60,7 +75,7 @@ FlexRAN SDK Download
 As an option it is possible to link this driver with FleXRAN SDK libraries
 which can enable real time signal processing using AVX instructions.
 
-These libraries are available through this link `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
+These libraries are available through this `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
 
 After download is complete, the user needs to unpack and compile on their
 system before building DPDK.
@@ -115,14 +130,13 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
-
 Initialization
 --------------
 
-In order to enable this virtual bbdev PMD, the user must:
+In order to enable this virtual bbdev PMD, the user may:
 
 * Build the ``FLEXRAN SDK`` libraries (explained in Installation section).
 
@@ -137,9 +151,11 @@ Example:
     export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/install
     export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/
 
-* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y``
+* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y`` and ``CONFIG_RTE_BBDEV_SDK_AVX512=y``
   in DPDK common configuration file ``config/common_base`` to be able to use
   the SDK libraries as mentioned above.
+  For AVX2 machine it is possible to only enable CONFIG_RTE_BBDEV_SDK_AVX2
+  for limited 4G functionality.
   If no flag are set the PMD driver will still build but its capabilities
   will be limited accordingly.
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (6 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 22:55             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes Nicolas Chautru
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Extending test framework for FEC 5GNR operations
for UT verification and profiling.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/main.c                 |   48 +-
 app/test-bbdev/main.h                 |    6 +-
 app/test-bbdev/meson.build            |    3 +
 app/test-bbdev/test-bbdev.py          |    7 +
 app/test-bbdev/test_bbdev.c           |   12 +-
 app/test-bbdev/test_bbdev_perf.c      | 1233 ++++++++++++++++++++++++++++++---
 app/test-bbdev/test_bbdev_vector.c    |  517 +++++++++++++-
 app/test-bbdev/test_bbdev_vector.h    |   14 +-
 app/test-bbdev/turbo_enc_default.data |    2 +-
 9 files changed, 1715 insertions(+), 127 deletions(-)

diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..d3f2b77 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -7,3 +7,6 @@ sources = files('main.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
 deps += ['bbdev', 'bus_vdev']
+if dpdk_conf.has('RTE_LIBRTE_PMD_FPGA_LTE_FEC')
+	deps += ['bbdev_fpga_lte_fec']
+endif
\ No newline at end of file
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
index 25340ec..0194be0 100755
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..a166eaf 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,58 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifndef RTE_BUILD_SHARED_LIB
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set PF mode :
+		 * true if PF is used for data plane
+		 * false for VFs
+		 */
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+#endif
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +784,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +823,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +869,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +888,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +943,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +977,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +998,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1107,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1306,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1387,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1424,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1457,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1490,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1527,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1554,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1569,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1620,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
-		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
 
-		create_reference_dec_op(op_params->ref_dec_op);
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
+		}
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
+
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
+		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1707,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1731,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1776,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1799,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1884,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1899,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1988,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2099,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2286,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2299,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2452,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, itr mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2475,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2495,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2543,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1841,7 +2566,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	tp->ops_per_sec /= TEST_REPETITIONS;
 	tp->mbps /= TEST_REPETITIONS;
-	ret |= rte_atomic16_read(&tp->processing_status);
+	ret |= (int)rte_atomic16_read(&tp->processing_status);
 
 	/* Wait for slave lcores operations */
 	for (used_cores = 1; used_cores < num_lcores; used_cores++) {
@@ -1855,14 +2580,16 @@ typedef int (test_case_function)(struct active_device *ad,
 
 		tp->ops_per_sec /= TEST_REPETITIONS;
 		tp->mbps /= TEST_REPETITIONS;
-		ret |= rte_atomic16_read(&tp->processing_status);
+		ret |= (int)rte_atomic16_read(&tp->processing_status);
 	}
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2667,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2805,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2908,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2917,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2996,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3030,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3061,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3163,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3196,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3224,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3342,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3370,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3396,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3502,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3518,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..d478d76 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -2,7 +2,7 @@
  * Copyright(c) 2017 Intel Corporation
  */
 
-#ifdef RTE_EXEC_ENV_FREEBSD
+#ifdef RTE_EXEC_ENV_BSDAPP
 	#define _WITH_GETLINE
 #endif
 #include <stdio.h>
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (7 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 23:03             ` Mokhtar, Amr
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes Nicolas Chautru
  9 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

Adding LDPC vectors for UT verification, coverage,
and profiling for 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  354 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  685 +++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  903 +++++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   50 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  746 ++++++++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  746 ++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   75 ++
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  256 +++++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1216 ++++++++++++++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  150 +++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   42 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   69 ++
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  196 ++++
 17 files changed, 5581 insertions(+)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 120000
index 0000000..3058cc0
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_v2342.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 120000
index 0000000..371cbc6
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..c8d38e3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,354 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..19a1537
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,685 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..d1f8f45
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,903 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..12c05d0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_UL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..3143fa0
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..2ea2b8d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,746 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..63bc8da
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..aaa3c98
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8480
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..03422fb
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,256 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..f6de8db
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1216 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5G_UL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..bc84e55
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+# Origin : FEC5G_DL_1/xxxx
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v2342.data b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
new file mode 100644
index 0000000..233d7a9
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
@@ -0,0 +1,150 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+output0 =
+0xADE67AA9, 0x1CB4EBDD, 0x74E76684, 0xE3941FC7, 0x48DAC304, 0x1E2C198D, 0xFE88B908, 0xEC21A3DE,
+0xBF314AB7, 0x634E3DCB, 0x0DA84E23, 0x58B1B22B, 0x02B837A0, 0x8B04BF38, 0xFB8DB526, 0x1BFF82E9,
+0x4226C4D0, 0xF7A9950E, 0x6DA4D0B2, 0x38E15395, 0x94C1A379, 0x243ED666, 0x3E7255B3, 0x7DB378DB,
+0xA3CE1377, 0xE0137291, 0x42DB50AC, 0xEB2D0A13, 0xCA55944A, 0x223DF8E0, 0xB800D1CF, 0xAA2E7577,
+0x50153EC5, 0x5E3C8557, 0x63DDEC8F, 0x49A256F8, 0x41ABFD56, 0xEB76A4D7, 0x4F4E9C7C, 0x3508DA39,
+0x530F9DA0, 0xFFD20E32, 0x395F7963, 0x1C48B3F7, 0xD3BC29C7, 0x4D6ED90F, 0xC1C9EF58, 0x9B9D4A13,
+0x417BF36E, 0x1BB5FDD8, 0x72793F28, 0x2F297FA5, 0x204AA988, 0x28317636, 0x87878EC8, 0x33024F9D,
+0xE651388E, 0x560ACA6E, 0xEC3D0B64, 0xCB515AAE, 0xE42B9ECD, 0x2AE2B0D1, 0xCD659A28, 0x8BD5E4D8,
+0x0D618DD6, 0x14CF8DB1, 0xE9F82BB6, 0x558C50A4, 0xA9809F8C, 0x15646823, 0x6037DB27, 0x26A0ABAA,
+0xF8DC4AC6, 0x533494C9, 0x7BF60155, 0x7BB16D05, 0x89F7A1BA, 0xCB069606, 0x6572D71A, 0x001917EB,
+0xD353913B, 0x128F78BD, 0x83BCE2A3, 0xE0065266, 0x9E7E608F, 0x25889472, 0x184ADD42, 0xD42B429B,
+0x7A8D861F, 0x54C97AB8, 0xB8B04229, 0xDF3DE03A, 0xB97E311E, 0xBB2A1FF8, 0x53AC8D5B, 0x1825B5DC,
+0x9843DD95, 0x0214EAA6, 0x3B1CF504, 0xD3BE316F, 0x9B1D3C64, 0x8EF4A268, 0xFACBC9AD, 0xDCC6033F,
+0xF801E3D1, 0x92F3E3A1, 0x1EC121AC, 0xA6747F20, 0x6ACC34EF, 0x0F641DC0, 0x42CAB9C3, 0xE04036DD,
+0x97739381, 0x9843A304, 0x929E9AB7, 0x600E057F, 0x892D5F1F, 0x0F718281, 0xD345AA58, 0xF39215C4,
+0xBCAB0B51, 0x1EBEA1B0, 0x68885471, 0xB39AD728, 0x2FF70470, 0x80D01FE5, 0xB41A95C0, 0x01DB8079,
+0xA4C9F364, 0x41860F1A, 0xEBE24F2B, 0x086BFFF0, 0x7B66DE40, 0xFFF665D6, 0x18324792, 0x1D253106,
+0xC41B9BF0, 0xC79347BA, 0x6949A396, 0x279E7A4A, 0x4029B533, 0xE8B382E2, 0x89783E24, 0x3D945C74,
+0x49BD75D8, 0xBAD731A0, 0x48B4AFAB, 0x4383B903, 0x8A6966A6, 0x170B9958, 0x58307AB6, 0x3B627463,
+0x0B981BEA, 0xD8E9A038, 0x723219E7, 0x4F6E5470, 0xE4F3CF92, 0x37AACC8A, 0xA4E46500, 0xE44DDA39,
+0x68690180, 0x33143C47, 0x9A6EE438, 0x5FA00F23, 0xD2CEE248, 0x46090D1A, 0xDE5491AE, 0x417D853E,
+0xC607B731, 0x79D7DCCF, 0x13200C03, 0x07CAB5E9, 0xB59525EA, 0xE47B66A5, 0xB125AAAB, 0x20CCFE07,
+0x82F1F4E8, 0xCF44BD2B, 0xC462D58D, 0x60A6A73B, 0x0D0CA712, 0xFE342922, 0x15123217, 0x7A02E89D,
+0x49B44659, 0xB9F3AE54, 0xAFC472BC, 0x79AF1A6D, 0x7430BA59, 0xEA13F81C, 0x33592D7D, 0x1EF1E1DC,
+0xF51FF0C8, 0x80F7B07E, 0xC1536EBB, 0x586CB41D, 0x10AF823C, 0x390EA571, 0x7D54C302, 0xA049ECBE,
+0x368C3981, 0x38B72BEE, 0x833C5F98, 0x2E18D066, 0x5742B0D2, 0xA8F5F0B8, 0x9144935D, 0x7392A908,
+0x3175DBC0, 0x29AA2F7C, 0xF53FED73, 0xFE41236B, 0x091E47EC, 0xD2195647, 0xCAAEA8B5, 0x0ED9750E,
+0xF5027456, 0xF1838780, 0x16FFE8EE, 0xA21568C6, 0xC5E4FCAF, 0x27C24C4B, 0x3DE89E8E, 0x5464ADC6,
+0x865C8493, 0x41032697, 0xD5F82075, 0x49167AF7, 0xED1AA45C, 0xA6B20018, 0xB1776BA9, 0x9F2129B6,
+0x611C417D, 0x3B72E8B6, 0x1AA7DB22, 0xF4ADF40E, 0xA24B8EFB, 0xF25C5F9D, 0xE52C047E, 0x3B8C9A26,
+0x4C0760E4, 0x73027C0E, 0x1F5977D8, 0x6CAF979D, 0xEF39719F, 0x70129F6A, 0x0CC821CD, 0x9853AE70,
+0xC3EB24E5, 0xE4EED628, 0x9F904579, 0xFD680398, 0x2C84DF92, 0xF92DA147, 0xB2F7C7C3, 0x59052EB6,
+0x4DF89375, 0x275D0C58, 0xBE32DA96, 0x7A3C4C7F, 0xC5C2B02F, 0x651B2665, 0x36E5DC9B, 0x98B1F08B,
+0x175A5AE0, 0xBEC258CA, 0xDDF6B687, 0x49E3DBE6, 0x07C1C780, 0x63E3B861, 0x05FDAAEC, 0xFA7C38A4,
+0x5EE93618, 0xF8B78C2B, 0xBB5035B7, 0x7E297AC8, 0x6CC27636, 0x30D44C50, 0xECB1065B, 0xB00AB96E,
+0x87B3C67E, 0x0AA61403, 0xF514C18B, 0xDBF3CEEB, 0x62ACA4C1, 0x9A0D1691, 0x07E3DF50, 0xC42070E8,
+0x98F349F7, 0xC1556162, 0x6F7D7109, 0xF6C7B215, 0x73748B4E, 0xAF9F5BFF, 0xDD1B8AE6, 0xA9C710AA,
+0x5965A4DA, 0x762A0F38, 0xD42C7578, 0xBA69C66D, 0x2CCABCB7, 0x932E7065, 0xD6F3F37E, 0x729F1412,
+0xE5EAEB07, 0x1C2D7291, 0x07E5E6C9, 0xCA16EED5, 0xD488558D, 0x235C11EB, 0x579B8BCA, 0xAC352250,
+0x858BD553, 0xECCBE50A, 0x370421F0, 0xA66CD423, 0x1424CB84, 0x286FBE65, 0xDFF5A1E9, 0x71ABB615,
+0xAE331217, 0xE8E333A5, 0x99044B7D, 0x26264E30, 0x35A7FEA1, 0x3E933B79, 0x4151D8A3, 0x672D78D6,
+0xC586C999, 0xEFFEFF6F, 0xD1EC082A, 0x0EB38797, 0x85F77710, 0x5FEAE876, 0x78FBE4E2, 0x6284663A,
+0x6E54B0AF, 0x5C107AF7, 0x24005DF7, 0xA994E2EC, 0xAFDDB6FF, 0x79019A53, 0xE1B8A123, 0x997B7B95,
+0x9BFC63E3, 0xEAEEB40C, 0x14AECFE6, 0xC29A3F38, 0x21833356, 0x6B65DAAC, 0x9AEADA3F, 0x16582D82,
+0xD6E7B8EC, 0xEE67A365, 0x3F33FD50, 0xABD603DC, 0x0DA08D72, 0x69E01AFD, 0x4862B58E, 0xE1DFCA98,
+0x5FE11079, 0x40992E48, 0x0589689B, 0xE836FACC, 0x87FFD4D6, 0x9F5DF070, 0x6BC69520, 0x5CF6F087,
+0x66523DC9, 0x54D0EEA3, 0xDD820FC2, 0x663BFA8E, 0x2561E952, 0xA82EDAB8, 0x3FC1092B, 0x8591A2C1,
+0x0E9E67EF, 0x4A334D9C, 0x867BB16F, 0xB6A1713F, 0xED8D7EFE, 0xF2926C44, 0xD2E97512, 0xE8301103,
+0x3DD30957, 0xEFB71B3F, 0x4AE801D5, 0x8F75F730, 0x0C34FBC9, 0x7A60C668, 0x77908ED9, 0x963C0DE4,
+0x5279E29C, 0x6759B153, 0x747E5E7B, 0x4C510BE5, 0x32BE2132, 0x54B361E0, 0xCB4D9616, 0x3C404BA4,
+0x4BA0E910, 0x05F06AD1, 0xAE3FBC5C, 0x82CB03B4, 0xF0EC45FF, 0x9888791B, 0xDE4B9813, 0xF83B4090,
+0x3CC4BA28, 0x7CFE8854, 0x9CA7BC9D, 0x0E41843E, 0xF92535F6, 0xF19CC699, 0x0821CBF4, 0xF15F3F82,
+0xCF6CC14C, 0xF27DA57E, 0xB8DB8982, 0xFC7E263D, 0x63C36111, 0x61587ABA, 0xB87CB18D, 0x2C806A64,
+0xD8DFFF2C, 0xC8540E77, 0x1A340B85, 0xB6FBA97F, 0x77A1958D, 0x419648E8, 0x80A65729, 0xC3EC1141,
+0x3909010F, 0x84F8C534, 0x2FEDE987, 0x83851AC8, 0xAE88B841, 0xE8284692, 0x3243F04B, 0x9C845E80,
+0x4A7FC52E, 0xF6B1035A, 0x59E1C576, 0x21620CB8, 0xF047E16D, 0x079284B7, 0x00B6C955, 0xA7B19103,
+0x7B9EB069, 0x733E2443, 0x489A6EAE, 0x7BB17B2C, 0x6AB4F848, 0xEFA299A2, 0xC464BE42, 0x36F27FC5,
+0xE70CEAB2, 0x6FCB4031, 0x9C0A14C0, 0x682AA1A3, 0x36E7032C, 0x57BA22A8, 0x085288CE, 0xDE62ADD4,
+0xC0138A07, 0x4A5576F5, 0xC0F33DE3, 0x919ECA7A, 0x14FFDE87, 0x362897AF, 0xD542F683, 0x86FBC0FC,
+0x8CD6DD3E, 0x25832EDF, 0xC2C9EE74, 0xB244A89B, 0xFEAF2F44, 0x1D631217, 0x80BA2267, 0x097D3F4D,
+0x406264AC, 0x0571B5FF, 0x55658770, 0xE12F6AA3, 0x666D9831, 0x37E17306, 0x88D926AB, 0xBB0CC6D9,
+0xA857A201, 0xB24E5A82, 0xF259D2AE, 0xD09D0FAE, 0x87363A50, 0x583F1CC9, 0x653F73F3, 0x0D04970B,
+0x64D1F222, 0xEF7E0E0B, 0x7F5D49DB, 0xAC4549D9, 0x707D1FCF, 0x3A151C06, 0xFE5DEC4A, 0xE3D6CCBA,
+0x0AA3DA9B, 0x4665CBC5, 0xDF7BCD0F, 0x63DD0FF5, 0xC9C2A642, 0xB40B516D, 0xE259A165, 0xE2E454E1,
+0x0A384EDD, 0x1287018F, 0x2A7A8DFD, 0xF854FCF1, 0x79CAA64E, 0x351AC522, 0xEE65C527, 0x7F160E51,
+0xF465AF5C, 0xE671974B, 0xAF75CA8D, 0x47A5EC29, 0x5F93C8AD, 0x6420D4E9, 0xA5CA4610, 0x265F0BF4,
+0x6622036C, 0xB542C8CB, 0xDFD1FA4F, 0x5869BE19, 0x14605EAE, 0xA438FEA7, 0x9523F5FA, 0xE18FCF2B,
+0x5F11F7B1, 0x7A790EBA, 0xDBDD0005, 0x024E0D8B, 0xC387778B, 0x3C0F1274, 0xA722512C, 0xEAB3C2F3,
+0x11B55F3A, 0x9C2DBBD6, 0xA76C80DC, 0xD63A5DD2, 0x320F7AF2, 0xA707544C, 0x889A3C58, 0x50CCA3B0,
+0xD54FE248, 0x22EF12A3, 0xF618F564, 0x1D9266C8, 0x4E08FB46, 0x6D1D41EB, 0x5CFF2094, 0x116ECB97,
+0x46FD4058, 0x38FBE5CC, 0xE008E8EF, 0x578FAF14, 0x3BEED1D9, 0x8C89B4CE, 0xFC0C33D7, 0x0913ECF8,
+0x498D47D1, 0x5644A9B3, 0x6EA66735, 0xA0F3BA09, 0x948B258F, 0xFA8DE3BE, 0x2FB03145, 0x8D0B61B3,
+0x42D6F53D, 0x031FD745, 0xFF86C938, 0xA32BB471, 0x50208969, 0x9F6909C9, 0x680C6D55, 0x13054044,
+0xDFDEBEF7, 0x35600E83, 0xAFB26C47, 0xCAA86F9F, 0x5B5B65A7, 0x599DA0C3, 0x789EC931, 0x0163D6D4,
+0xF7BBA271, 0x5A755052, 0xFA27CE77, 0xD66ED111, 0x7A5BD527, 0x1B26B948, 0xAA11725B, 0x4A6AC4AD,
+0xDD8EA8DF, 0xF0C618D3, 0xF97999E5, 0x00C42C38, 0x8465BE06, 0x7B6912C9, 0x4AF1F070, 0x4F93EEB0,
+0x19A400FC, 0x0F8A6744, 0x7FD642F2, 0x3AE8F32F, 0x84501DDA, 0xB39068C6, 0x2A5BE1A6, 0x08E231F0,
+0xD52F4D13, 0x89326BE0, 0x3981DD90, 0xA986F547, 0xADF1B2E8, 0x6337CFB6, 0x595FCBC0, 0x2D774749,
+0x1D6C5FF1, 0xF403CE90, 0x16792051, 0xCE248A7D, 0x43E76774, 0xA85ED14A, 0xCFBDEB69, 0xDF559AF6,
+0xC3BF33D1, 0xF03BB486, 0x107D04B0, 0x9B9E9432, 0xE4873EC4, 0xFD7C2E89, 0xFA69FD26, 0xD04F8825,
+0xB9C4FF1F, 0x30F0826C, 0x825A8A34, 0x5EBB4ADC, 0xA71C9FF5, 0xE90ECF8A, 0xFEF3270F, 0x25612AB6,
+0xF8560C1F, 0x625A9ECE, 0x12B9B123, 0xA281D55C, 0x276F3B4A, 0x6CDE95D8, 0x7EE9F866, 0xDC769A4F,
+0xC590E1F4, 0xEA845796, 0x013AFD9E, 0x6F8E1A4D, 0xBEDF18E1, 0x2CC567BD, 0x56CBAE9D, 0xF81716E8,
+0x88834AAE, 0x1C67A0AE, 0xDDB4EB33, 0xF0F874E6, 0x4DE9C550, 0xCEAC73AD, 0x5C800FD8, 0x6A31B61A,
+0xA8B3A501, 0x73639607, 0xC95BAE
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..79294ec
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..c72680b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v9503.data b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
new file mode 100644
index 0000000..1426872
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
@@ -0,0 +1,196 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+# Origin : FEC5g_DL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C, 0xE1952001, 0xB77912DE, 0x52E8BA16,
+0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403, 0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC,
+0xA40F8094, 0xABF43E46, 0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8, 0xBC563FD5,
+0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E, 0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854,
+0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB, 0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3,
+0xB8E4AFE9, 0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87, 0x3E146A49, 0x0391D092,
+0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024, 0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1,
+0xDCD211C3, 0xBF6B0B87, 0xA1624F47, 0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795, 0xEB08B437, 0x1A9899A0, 0x26484B82,
+0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B, 0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B,
+0xC01C79FA, 0x622B9FD8, 0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x6F4B
+
+output0 =
+0x6ED462FE, 0x29726470, 0xE49C87C1, 0x6594725E, 0x64C81AE1, 0xA30C91C2, 0x5B4261AB, 0x7A44E3A4,
+ 0xACBD3DC8, 0x319AF530, 0xF3B21EC1, 0xAC180011, 0x26319FF9, 0x5946FBFD, 0x6F31959A, 0x571501D9,
+ 0xFB1F62B7, 0xF19F6C36, 0x43436C4A, 0x8CA5F436, 0x18AF91B4, 0xD86ED79F, 0x8732D29C, 0x6CE3B559,
+ 0x2DEA712F, 0x52C2E21A, 0x5C4E884C, 0xD2F50500, 0x2140E848, 0xABE47066, 0x8AE3FC46, 0xF0298999,
+ 0x829FE184, 0x51D53B6B, 0x7546D03C, 0xF1CB22DA, 0xB9D6F966, 0x85660A1F, 0xC1296566, 0xB2122E16,
+ 0x2AA38C25, 0xD7AF18FC, 0x489BDDC5, 0x93183097, 0x4C694A3C, 0x40B325F8, 0xEE05DAB2, 0xA6E0C990,
+ 0x839A7753, 0x0251D207, 0x5E1EC6B5, 0xED523076, 0xD985E23A, 0x8CA88259, 0xB0EFF6D4, 0xA9D7749B,
+ 0x32CA6F0E, 0xAAA84E97, 0x0F137B83, 0xE73C3175, 0xA3940FDA, 0xD878B121, 0xFFC8D2EC, 0x95CB65AC,
+ 0xB1CBE446, 0x73520449, 0x7D929F16, 0x69D1873C, 0x85640C01, 0xF2228024, 0x0A5E0461, 0x58B0933A,
+ 0xD37E2375, 0x36CEECEF, 0xE57A48F8, 0x4A35B5C9, 0x016A16A0, 0x6F9BCF30, 0xEB7C3BD0, 0xB1AF27FE,
+ 0x9C389360, 0xA91F2142, 0x51E618D3, 0x5F045697, 0x654C6A49, 0x2E38E30C, 0x9E8F1E63, 0xF1B25686,
+ 0xA0CDFB02, 0xDAEC605D, 0xED910B79, 0xA8E1A341, 0xAD6BD0A3, 0x03BABB0D, 0x4059355C, 0x5ECB8646,
+ 0xFDD9E0C6, 0x69106FD2, 0x47BF857E, 0x740F6313, 0xAB15E1FF, 0x94B21225, 0x600FEDF3, 0x1EF83A71,
+ 0xCE6956EE, 0xE538FC7D, 0x47520BE0, 0xA1A20CF2, 0xCB452B91, 0xEACB9E3C, 0xBA242A34, 0x13C81868,
+ 0xA58AB271, 0x724B350D, 0x95131286, 0xCF74DD61, 0x1D0CF41B, 0x38D046D2, 0xB709708D, 0x4D479AA8,
+ 0x3CBF6817, 0xDF115777, 0xBE69B850, 0x071A2B4C, 0xF3246B56, 0x2881CBA0, 0xAE158E87, 0x36538CB0,
+ 0xEF879197, 0xDBA9C1C7, 0x4EF7235A, 0x56120670, 0xC22DBEC7, 0x7071A05C, 0x376ADBD4, 0x5DD586FC,
+ 0xA638A621, 0x6D49A92A, 0x66F0C925, 0x023FC9DE, 0xF7CA1D36, 0xAF19A18B, 0x2A787792, 0x518938D7,
+ 0x25DE7B4A, 0xDEBD9010, 0x9683558D, 0x9C5694C7, 0x8B2558D0, 0x790CD121, 0x0A35C0D8, 0xCD4FBCED,
+ 0xB89F3275, 0x64A49655, 0xED7992A1, 0xAFB0A4D0, 0x29A9EB1B, 0x9244B2C0, 0x2CD88F45, 0x4AA1E98E,
+ 0x8E32CC3C, 0x8BE5DC7B, 0x759C8B24, 0x8AA119BE, 0x9CFEA065, 0x071F86FD, 0xB83F8181, 0x604FF2FB,
+ 0xAACDC394, 0x0BCC72F5, 0xE9C0CB19, 0x56EAE15F, 0xD33B8DEF, 0x01A1B007, 0xBED7C1A3, 0x18788E49,
+ 0xB565EA30, 0xC269F619, 0x1CF1B024, 0x067E9F59, 0x78E61AB4, 0x3D46CFBB, 0xE58E910B, 0x8E7ACF53,
+ 0x1EB9C15D, 0x4E3C43BF, 0xEF3D8F20, 0x5CC0A030, 0xE10AE4E7, 0xABE24941, 0x9A0C4046, 0x24E090CF,
+ 0x3248C414, 0xAF76560F, 0xCD1B106C, 0x70438AD4, 0x3463D8B0, 0xD85860FE, 0xFCDF0D57, 0xA2DBC09E,
+ 0x44C728C1, 0xD8FEE73E, 0xB1E6B4A5, 0xD0CC95CD, 0xCCEF186F, 0x70AC5D98, 0x57D21267, 0x8543F446,
+ 0x15C8EAA9, 0x0DD357D4, 0x4CE9C090, 0x4E91FADF, 0xE0658E27, 0xFF7AA5D6, 0x176ED723, 0x70D009CB,
+ 0x416ADBAA, 0x1C45865D, 0x105F3A0E, 0x14730450, 0xD0FA1AC9, 0xB76F268C, 0x7B075289, 0xA9455796,
+ 0x65E02F3E, 0xB74521F2, 0xF6CAA6C7, 0x94ABFDAD, 0x1E6D1087, 0xC25A9257, 0x87FAF9A4, 0x5184A0FA,
+ 0x240023D7, 0x7AE0ED45, 0x06E0A838, 0xBB018F31, 0x0FA836D5, 0x09CF6AEC, 0x9BC4F2B2, 0xAE92D5BA,
+ 0xE724036E, 0xE5606DDE, 0x631448F9, 0xFD59B782, 0xF17052E4, 0x66EA4C50, 0xF72C1768, 0x5C24ECEC,
+ 0x6B01B118, 0x89F8A3AB, 0x465FF462, 0xC3896A00, 0xFEC06004, 0xE2DFC70C, 0x3ACF338F, 0x1552E9D0,
+ 0x9F699B77, 0x60AC6D29, 0xBF47FD38, 0x826B0CA8, 0x0515A7AC, 0x1380A222, 0x7D054EA0, 0x3D1BCEC0,
+ 0x21AB6CF3, 0xA889E915, 0xF09D9756, 0x08BA519A, 0xCFFB6BD3, 0x7D5EF4F9, 0x34A0E942, 0x8569A327,
+ 0xFDDC5269, 0x60D8D543, 0x88B34B88, 0x50DEAA10, 0xD0563E1F, 0x80CD122B, 0xDC11607F, 0xCD9D7E05,
+ 0xC0F3510E, 0x414A7545, 0xB8211557, 0x103E6F53, 0x08A47672, 0x04D9C391, 0x3281F25C, 0x7526AAD2,
+ 0x3C89B43B, 0xBA767E59, 0xA2788EAC, 0x5EF9DF3D, 0x8F72BBE6, 0xC4B52A2B, 0xE81A80E9, 0xCD6B24D5,
+ 0x4F934751, 0xA3FCC2B5, 0x1C4FB12A, 0x7C363E45, 0x237CB63A, 0x1F26D6FD, 0xAAF3FE61, 0x48D3B3A8,
+ 0xA2A77A81, 0xADCF4AB4, 0xDF94F9B4, 0x465EA838, 0xCE4BA15C, 0x75826F5A, 0xD537E32C, 0x85F8FECD,
+ 0xD07CAB1C, 0x34F91310, 0xC40B36CA, 0xCCE0297E, 0xFB276610, 0x67DF82EC, 0x8BB58FAA, 0xCEA3BDC2,
+ 0x02B21D68, 0xCC1F8A6C, 0xF902AF4E, 0x271828EA, 0x9028298A, 0xB5BF0156, 0x5A3B3188, 0x6CCB6806,
+ 0xE2F3A4A2, 0x3B776BB9, 0x66D01790, 0x133F2414, 0x1445FE7D, 0x5CC79E5B, 0xB95FD30F, 0x50971FC5,
+ 0x8D6AFECA, 0x3FB2427C, 0xC1A980EC, 0x54C9F2AF, 0x0F509DF3, 0x1B950AA4, 0x1E5B1596, 0x93E974B9,
+ 0x71D51A0F, 0xC973F4DD, 0x79BF62A6, 0xC72F58F9, 0xCAD478D6, 0x0F7C36C7, 0x05D08481, 0x43958D67,
+ 0x93F11E1A, 0xDCDDCE62, 0xB457AC62, 0xD4A98268, 0xA793471A, 0x7AB637E0, 0x1B9BA86C, 0x456B5EF7,
+ 0xD2E75711, 0xF95E6BCD, 0xD3043467, 0x056F1621, 0x21D58D4E, 0x0C9EF57E, 0x96B645B1, 0xF5A80340,
+ 0xBD9A4C7A, 0x4D94A305, 0x59D0F9B4, 0x113F56F9, 0xE0A948B5, 0xBF982299, 0xA05D1EA1, 0xE9C50F8A,
+ 0xAF6B8F04, 0x6B05485E, 0x17DD458A, 0xFB819464, 0x5CE2F61F, 0xECF95F48, 0xA26CFBA2, 0x6A0FD00F,
+ 0xA7A2CB0F, 0xFE10768D, 0x4A258743, 0xBBF2C41A, 0xF519DBEE, 0x9DA676B6, 0xE89449C9, 0x3E13EBE5,
+ 0x4A4A42A5, 0x42663182, 0xDAAF85AB, 0xCC671BCB, 0x217491EE, 0xDCC9B6F2, 0xE1A3A7EA, 0x7B13F2F9,
+ 0xCFFCBC9F, 0x3D8FF387, 0x71ABA888, 0x2D3FE4C1, 0x081AB3DC, 0xBF21BA4B, 0x4ACE0F00, 0x6F5AB592,
+ 0xD328F08C, 0x542388E9, 0xE7A4157A, 0xE8532856, 0xE8DC528E, 0x3F2356AE, 0x76867882, 0xEC11E6D0,
+ 0x0C2DD257, 0x40A7C558, 0x354F885C, 0x2A2E0757, 0x6C0A6D95, 0xE0C23A09, 0xD1F32FF7, 0x7E27842E,
+ 0x3CDFD97E, 0x2F6807FB, 0xDBED07BD, 0xA039645B, 0x324B0955, 0x73620D27, 0x0C47D75F, 0x511BD37A,
+ 0xE80C4C44, 0xA3D77AFE, 0x058B503D, 0x391AC187, 0xD7425F0B, 0x93876765, 0x10CADF4C, 0xC4F3539A,
+ 0xF17B776C, 0x017BDEFA, 0x74F4651F, 0x65FBC1E5, 0xF55CC6B6, 0x1752401A, 0x85FB6434, 0xB8FD0F06,
+ 0x4D0D80FF, 0x0DD8438D, 0x1C5844B7, 0x31ECF66B, 0xF8A8B528, 0xA9BE0373, 0xC401C7FC, 0x3BA1FFF4,
+ 0x63946BBD, 0x82514893, 0x9CE303D6, 0x51EA2484, 0x054CACA2, 0x3F812B32, 0x0F3C603F, 0x4B3D86B6,
+ 0xD33F5950, 0x3340BFC0, 0x47CEB79D, 0x1CAB5D3C, 0x74897EB5, 0x1C320D6D, 0x8F0480D2, 0x1384331B,
+ 0x8363A7B3, 0xA5439504, 0x0E06AA80, 0x4BBFF55C, 0x470094F3, 0x8DE8E9AA, 0xABA72796, 0x4333B263,
+ 0x6FEF04EB, 0xF921C722, 0x9599B4C8, 0xBFEFF55A, 0xF89AA502, 0xDFE85218, 0x0EE15930, 0x8B2AA7F8,
+ 0xDDB03823, 0x7427A3C2, 0x8E4AF556, 0x66A9640E, 0x2EA271AE, 0xFC5BB50C, 0xDC50B432, 0xF78BB3D6,
+ 0xA06156DE, 0x5A7D7A40, 0x40BD74BF, 0x882CC19B, 0xDB2B6143, 0x5532686C, 0xA6D65320, 0x6AB5B32A,
+ 0x34129535, 0x9E41D92F, 0x3D86A085, 0xA27DE0C1, 0x6FFBEC11, 0x77A4BE81, 0xCE1DF886, 0x318E96BA,
+ 0x82C84B84, 0x40B9874F, 0x39F9F9A9, 0x21E0AACB, 0x237FC858, 0xFF700E2D, 0xA840518D, 0x5E5ED583,
+ 0x7B11CB4E, 0x99733B7F, 0xFFAAF7A9, 0xB8CB13B7, 0xE67AE45C, 0xFFDA2FC2, 0x47D08BD7, 0xD68BACF6,
+ 0xDAAE30ED, 0x95735CAF, 0xF896B165, 0x395BC94E, 0xADF803B0, 0x76B82F4D, 0xF312DD33, 0x0DD0A49D,
+ 0x0852B35E, 0x4DF14366, 0xBA01C779, 0x1415A8FA, 0xDC10F525, 0x1CE06D80, 0x953089E6, 0x933C3EE5,
+ 0xC18B1022, 0xFAD11D71, 0xA1EA92BF, 0x2AE61798, 0x63D0C0CF, 0x1CF8CA34, 0xDF748AFB, 0xF0FDE897,
+ 0x26FC4399, 0xE563FFC5, 0xE6AFE218, 0x5EE3254B, 0x76565E08, 0x70F5EFBE, 0xBD66AC9A, 0x90853CB1,
+ 0xA002CE55, 0xAFE263F4, 0x804DA5A5, 0xBB971F95, 0x775BDE46, 0xEDA15B5F, 0x3D5A2CFE, 0x6D9FE953,
+ 0xE84541F5, 0x6574FB29, 0xFD3ADC69, 0x1BAEDDED, 0xE3F810C2, 0x87CC8D7C, 0xDC23F894, 0x7635A6DC,
+ 0x294E131B, 0x62FA4471, 0x83D3870E, 0xF82B9324, 0x8A493E04, 0xA8FCDF75, 0x20583A80, 0x5A94424E,
+ 0x18CED906, 0xB417F24A, 0x47089341, 0x62A432C0, 0xFDC17DFD, 0x5B89C6D2, 0xC8C8ED37, 0xD44D38B1,
+ 0x9A6DFF2C, 0x7C5ECB65, 0x76814C50, 0xB3D56A33, 0x5DF124F8, 0xDB92A5D9, 0x210F2E0D, 0x50FFFF1B,
+ 0x1B7ECD90, 0x481ED2FE, 0x094DA8E8, 0xF111F8FA, 0xAC7872DF, 0x4B8FE240, 0xA7CF01FD, 0x72AFAF1B,
+ 0x27BE7F7E, 0xE5F42B34, 0x02807296, 0x325F9CF6, 0x97EE1C92, 0xD5E6F65C, 0x7EA2490F, 0x666E3451,
+ 0xB17E6A43, 0x1AFBE46E, 0x8D2B871B, 0xD52A1A9E, 0x41EBA711, 0x9D4B906B, 0xAEB5A2F6, 0x7EC530E7,
+ 0x063FC87E, 0x48830732, 0xE5EC2B25, 0xA17B0F26, 0x2C63A878, 0x7A1362A1, 0x68B4DE31, 0x6EC14B7E,
+ 0xE65C3B05, 0x8EB452EC, 0xB6DD94CA, 0x8DC592C5, 0x402EA8BE, 0x689F131B, 0xDA3A54D1, 0x41D264AC,
+ 0xAD150ECF, 0xD7750790, 0xBD46E2A0, 0x2DC97F87, 0x2476F6AE, 0x28F4778E, 0xB4B9E75A, 0xE5532AD6,
+ 0xE58A7485, 0xDFDD2553, 0x779D3F91, 0xD89F3033, 0x42BB4152, 0x2F6EFB01, 0xF72C43BB, 0xF1DB8663,
+ 0x5BA625E2, 0x17180017, 0x151F03B3, 0x7FDA9772, 0x1DEB2F8D, 0x178DE5EE, 0xDFF10ACA, 0x2DC29F2A,
+ 0xF2797346, 0xC298535D, 0xB56C1D35, 0x6389138B, 0x54B732AE, 0x3FAF9958, 0x3BFE3E52, 0xA311D83E,
+ 0x50E7B0BD, 0xC28F97B4, 0x8C1FAAB7, 0xD22BD453, 0x4E6A4D65, 0x626B6251, 0x1F547F6C, 0xEF8105A0,
+ 0xB7A062B6, 0xE1325CC7, 0x8207E7A2, 0xB0A9E0D6, 0x097B78C1, 0xC41D4176, 0x13DB573C, 0x5291E598,
+ 0xF4D1AFB4, 0xA93FE970, 0x673042D8, 0xCC98A35A, 0xCEBD4AE5, 0x47B8BB39, 0x5F8A294E, 0x37FDA881,
+ 0x9E81D5BD, 0x47691BD1, 0xFB92FBF8, 0x24AA898D, 0x0D0B5B29, 0xE5E11928, 0x7D356637, 0xC4525D0E,
+ 0x72AFE781, 0xEBE53FCD, 0xBCBB299C, 0xC40B26D3, 0x1C049A63, 0x4621C7F8, 0xD3337531, 0xF5CCAE80,
+ 0x5D3D0BB7, 0x2246BD17, 0xF158D4F9, 0xE5CB58A2, 0x07F5F1E1, 0x9D420346, 0x952C186B, 0x9DBB2227,
+ 0x203D1639, 0xC022D8AD, 0x7A91F3DD, 0x9326CB7B, 0x2971F3FA, 0x7EF8C14B, 0xB7B468DA, 0x840A9104,
+ 0x6F811C48, 0xC0DAC40B, 0x68D75281, 0xB7DCB2D8, 0x9A216C54, 0xEE710DB9, 0x54ADDAC6, 0xF6F71ECF,
+ 0x6F1E0D83, 0xDE5ECA0D, 0xEA40DE93, 0x962D60E7, 0x6B575E29, 0xFFCC6677, 0x0D879692, 0x728CBE24,
+ 0x9011B3F8, 0xAB260F9E, 0x5D71E2CA, 0x501F6613, 0x5F16EE75, 0x0D33E974, 0x8865BBE8, 0x10495EA6,
+ 0x393032AB, 0x6C7F4A61, 0xB685D152, 0x29D429A4, 0x24CA7E33, 0xCD26F3F2, 0x78D85078, 0x0BA90BA3,
+ 0x360CB744, 0xDF999168, 0xB60B3644, 0x39EED49A, 0x4A794E4A, 0x3B6715BF, 0x92D35DC9, 0xF640ADB6,
+ 0xFA96EF3D, 0x0DC22AD1, 0x48262E68, 0x6F620F37, 0x6B29E242, 0xC6FBEEB6, 0x3034A0D9, 0x122EF44F,
+ 0x7EEF61DF, 0xF3854D20, 0x0F84C1DB, 0x0DE504BF, 0x8AE763ED, 0x369AD35F, 0x8BA7B643, 0x44933BB5,
+ 0x49E96357, 0x4C7F9884, 0x2A5BF491, 0xBB8DCDC2, 0x3873C5F5, 0x0DB1AB26, 0x09FF188A, 0x93DE180D,
+ 0xBA757CAC, 0x06AFFBE6, 0x12B37F82, 0x150D3234, 0xC2C0AB1E, 0xC8B4D8F3, 0x65B7BB96, 0xBBF951B8,
+ 0xC4A03C44, 0x7E2FF9B6, 0x86592827, 0xECE0BE1B, 0x0DB32865, 0x5FC2CD73, 0x34AD2D16, 0x3B2057A7,
+ 0xC32C663F, 0xA85CD1EB, 0xEBD5BCF3, 0x439DC2FF, 0x93379CAE, 0x99273984, 0x3659A11F, 0xD5FF53BD,
+ 0x38704C43, 0x3D782532, 0xD7306729, 0x420E909F, 0x4840C5F3, 0xDA80DF8D, 0x53395E04, 0xEF690DCF,
+ 0xF9738931, 0xE91F7065, 0x5EB901A8, 0x176C6A2C, 0x25D062AE, 0xE4CCCB95, 0x93C87277, 0xF8FF911C,
+ 0xD7AE6706, 0xE704A40E, 0x38BCF64B, 0xDDFFF9FD, 0xD1BDE381, 0xA4313A0B, 0x48DDA520, 0xD064D1E3,
+ 0xDBFD61EC, 0x7EA87E9A, 0xF894AAFD, 0xB5565368, 0x2C34933D, 0xF0F50DE9, 0xF91EB25C, 0xE3EC3B8E,
+ 0x5E9409A7, 0xB2A9D39A, 0xB6B19F3F, 0xA6685DC9, 0xCAFC5B74, 0x4CC15F7F, 0x114E5709, 0x31B6E0EB,
+ 0x8CDAA5C4, 0xF5ABD631, 0x12A4A9C0, 0x969011BE, 0x9AB39E96, 0x0D406569, 0x8AE25103, 0x68474C26,
+ 0x9E8D006F, 0x9C8E4F0B, 0x314630FD, 0x2F30B254, 0xFE88FCF4, 0x941FBE2D, 0xC03B55A3, 0xEE474898,
+ 0xEC9B3BD2, 0xDDE00C4B, 0x7F192B54, 0xA25A0DC1, 0xDCF18F59, 0x55F674B4, 0xF6734A46, 0x92B7A7E2,
+ 0xCEDA18D8, 0x90EA738E, 0x7C98FEE8, 0xFC3DE7ED, 0x4075569F, 0x8989B676, 0x326B34DA, 0x52AC749C,
+ 0xAF71ACF8, 0xDC1F65F4, 0x408459F9, 0xD46B650F, 0xFAEDB779, 0xBC0C6EDB, 0xF68DB879, 0x40071FCD,
+ 0x2D01AC86, 0x7952D58A, 0x4F7A42BA, 0xD5C9306C, 0xFA7CC252, 0x48285F83, 0x51CD6BC3, 0x8212BC4D,
+ 0x53828B06, 0x8986B36F, 0x6E00951C, 0x6505074F, 0xAB3AF4CC, 0x12D92810, 0x44F4D0B5, 0x0D7DBCDD,
+ 0x152A5968, 0xA92C4ECA, 0x6795E17F, 0xD02C875E, 0xA4B5A04C, 0x2F0C4295, 0x72678451, 0x59B87A4C,
+ 0xB3AD2988, 0x7B717173, 0x6D0EC6EB, 0xF73B4FC7, 0x645D56E0, 0xBC73769E, 0x9A83ED5C, 0xCE5B332A,
+ 0x151A4D6C, 0xDEB26C33, 0xBA7CFEA9, 0x0FB2D875, 0xE0045E66, 0x9DB0072A, 0x5CFB3C42, 0x8C3FEFD5,
+ 0x4E7CB65C, 0x2905EC79, 0xA2F6C308, 0x296A6794, 0xB589571E, 0x4638BC8F, 0x964B8B40, 0xBE27615F,
+ 0x4E95C30C, 0x2B56A6A8, 0x4BC50BC3, 0x497BB78B, 0x8860A6CC, 0x80830DB7, 0x9D726E3A, 0xE63600FD,
+ 0x7A68F80B, 0x1C5CCCA0, 0x1784B6A4, 0xBCA7EF08, 0x425ABF74, 0x3663AD11, 0x72F2AEC0, 0xA4A940F0,
+ 0xBBC08817, 0x5C158691, 0x7C1ECC0E, 0x1818BB5B, 0x0DE17D9F, 0x350D4BB6, 0xAC21F0FB, 0xB913C7B0,
+ 0xE9DC26F6, 0x25B995C5, 0x0D2E9E6F, 0xD39C93A8, 0x1C775CED, 0xF1E69A7D, 0x0025310F, 0x782BBDF8,
+ 0xFD3E83E4, 0xB5DD602E, 0x1CD9044C, 0x2AFC3405, 0x79E32E1E, 0xB59B4A79, 0x4609271E, 0x1C5E4D7A,
+ 0xA74D0009, 0x319A07E9, 0xCAC3A6FF, 0x8B515C07, 0xE80FE11D, 0x1D59CF05, 0x38F946AE, 0x6324D94E,
+ 0x313D3FE8, 0x310AF64C, 0x3CDE2571, 0x0644DA97, 0xEADBF286, 0x7B5DACA1, 0x8D5D3A54, 0x1376A003,
+ 0x51774091, 0x562A7891, 0xC246A9FA, 0x82C1C05F, 0x0D662D24, 0xAEDDA534, 0x5A96ED06, 0x2C055326,
+ 0xB0F2F5B0, 0x21C1F0F6, 0x6C39F1DE, 0xDE48E8FE, 0xB5CD1538, 0xC4E356AC, 0x1B24FE63, 0xF36D1426,
+ 0xB8B827D2, 0x1576F620, 0x3F49589E, 0xC438975C, 0x64880EDA, 0x7C322884, 0xD3978FBD, 0x4787B61E,
+ 0x2E192772, 0x0584B589, 0x0EAAA684, 0x6D81DE51, 0x63717598, 0x08A48B4D, 0x2DF88EC5, 0xA647285C,
+ 0xFC81F7AE, 0x10E48D34, 0x963F5C91, 0x8F592492, 0xC79010B8, 0x8A6D4936, 0x4759E38B, 0xACFC5255,
+ 0x0C9D02B7, 0x1B52A34E, 0x3B0A60A1, 0x1DB4E220, 0x23DCD523, 0xEA42AD41, 0x9B3CB86B, 0x6C503824,
+ 0x41DC835D, 0x22A311A5, 0x7B7AD03E, 0x6AFA5972, 0x3E506D92, 0x04FED79C, 0xCE801EEF, 0x7BA17C52,
+ 0x3AFFBB6A, 0x96A23185, 0x74316B7B, 0x11D330F6, 0x8484E528, 0xB643261D, 0xCC076540, 0x9116E092,
+ 0x4B6D5634, 0xC9532DCB, 0x0CBBB981, 0xE8D8E41F, 0x7573408A, 0x684F202D, 0x9A92649E, 0xF2CF0C39,
+ 0xF6C540AE, 0x29368636, 0x6A5BD7FB, 0x5044B256, 0x35AEC028, 0x8C12E363, 0xE0A2FE6D, 0x9E8EB149,
+ 0x2ED1CF45, 0x54A9880B, 0x4E295354, 0x83730F2E, 0x279AD027, 0x7051921F, 0xC4E219AC, 0x8B540A9B,
+ 0x947E9DF5, 0x28B61847, 0xC4E32434, 0xF9227028, 0x3D489511, 0xD5A41195, 0xA03EE1BD, 0xD761441F,
+ 0x402F7502, 0x5AB68BEF, 0x5555B735, 0x5918623F, 0x983735E9, 0xE332F1B8, 0x48D83C28, 0x81318EE2,
+ 0xABB8AA53, 0x01F0C3CE, 0xB4291A62, 0x89344F27, 0x5FDEEA6C, 0xE6D22F86, 0x9988C7DC, 0x051A1432,
+ 0xE11867BC, 0xEFA49EEF, 0x48AADD79, 0x33633BF3, 0xA56B57B4, 0xA253AB9F, 0x7FC8340A, 0xAB73B132,
+ 0xF1DFB6CC, 0xC5F02EDA, 0x426782CD, 0xF6648D35, 0xB4AB88A0, 0x9BA7B785, 0x67C03341, 0x22612D33,
+ 0xD32ED490, 0xAAA56F6A, 0x37ECD8CD, 0x518E8140, 0x7390301C, 0xB33A9E62, 0x244220D4, 0xD88AE216,
+ 0x9752DEEA, 0xB8A22F50, 0xBFB221CB, 0xDB4D57A0, 0x02D39A0D, 0x8C311F00, 0x1192748C, 0xB9505446,
+ 0x469C1E7B, 0x3AEFF9A6, 0x7CD5ABE8, 0xD849E5F5, 0x1E2FB30A, 0x18879BD8, 0x6DDD966E, 0xC9BD4B8F,
+ 0xCEEBCCD9, 0x0D881346, 0x20
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                             ` (8 preceding siblings ...)
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
@ 2019-06-24  2:52           ` Nicolas Chautru
  2019-06-30 23:04             ` Mokhtar, Amr
  2019-07-01 11:14             ` Akhil Goyal
  9 siblings, 2 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-06-24  2:52 UTC (permalink / raw)
  To: akhil.goyal, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar, Nicolas Chautru

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=a, Size: 1409 bytes --]

Update of the release notes for BBDEV features add
and extension of ABI in previous commit.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
---
 doc/guides/rel_notes/release_19_08.rst | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst
index 8c3932d..35d3a09 100644
--- a/doc/guides/rel_notes/release_19_08.rst
+++ b/doc/guides/rel_notes/release_19_08.rst
@@ -88,6 +88,19 @@ New Features
   * Added multi-queue support to allow one af_xdp vdev with multiple netdev
     queues
 
+* **Added a FPGA_LTE_FEC bbdev PMD.**
+
+  Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA PAC
+  (Programmable  Acceleration Card) N3000.  See the
+  :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver.
+  
+* **Updated TURBO_SW bbdev PMD.**
+
+  Updated the ``turbo_sw`` bbdev driver with changes including:
+
+  * Added option to build the driver with or without dependency of external
+    SDK libraries.
+  * Added support for 5GNR encode/decode operations.
 
 Removed Items
 -------------
@@ -140,6 +153,8 @@ ABI Changes
    Also, make sure to start the actual text at the margin.
    =========================================================
 
+* bbdev: New parameters added to support 5GNR operations.
+
 
 Shared Library Versions
 -----------------------
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
@ 2019-06-30 22:31             ` Mokhtar, Amr
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:31 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw:
> dependency patch
> 
> Not meant for review, purely for dependency for CI.
> This is a squash of the related serie which
> is not applied yet:
> option to build turbosw PMD without SDK
> https://patches.dpdk.org/project/dpdk/list/?series=5093
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
@ 2019-06-30 22:42             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:42 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh



> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch
> 
> Not meant for review, purely for dependency for CI.
> This is a squash of the related serie which
> is not applied yet:
> adding driver for FEC on FPGA
> https://patches.dpdk.org/project/dpdk/list/?series=5017
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---


> +++ b/doc/guides/bbdevs/fpga_lte_fec.rst
> @@ -0,0 +1,318 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(c) 2018 Intel Corporation
> +

Should this be copyrighted starting 2019? Note also that I see other
files related to FPGA driver are copyright 2019.

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 03/10] bbdev: renaming non-generic LTE specific structure
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
@ 2019-06-30 22:45             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:45 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 03/10] bbdev: renaming non-generic LTE specific
> structure
> 
> Renaming of the enums and structure which were LTE specific to
> allow for extension and support for 5GNR operations.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
@ 2019-06-30 22:48             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:48 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC
> 
> Extension to BBDEV operations to support 5G
> on top of existing 4G operations.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR operations
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
@ 2019-06-30 22:49             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:49 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR
> operations
> 
> The documentation captures the related change in
> BBDEV API to support 5GNR encode/decode operations.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
@ 2019-06-30 22:53             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:53 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD
> for 5G
> 
> Implementation still based on Intel SDK libraries
> optimized for AVX512 instructions set and 5GNR.
> This can be also build for AVX2 for 4G capability or
> without SDK dependency for maintenance.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 07/10] docs/guides: updating building steps for BBDEV PMD
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
@ 2019-06-30 22:54             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:54 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 07/10] docs/guides: updating building steps for BBDEV
> PMD
> 
> This now includes steps to build with either
> libraries for AVX2, or AVX512 or no dependency.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
@ 2019-06-30 22:55             ` Mokhtar, Amr
  0 siblings, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 22:55 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR
> 
> Extending test framework for FEC 5GNR operations
> for UT verification and profiling.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
@ 2019-06-30 23:03             ` Mokhtar, Amr
  2019-07-01 18:18               ` Chautru, Nicolas
  0 siblings, 1 reply; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 23:03 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification
> 
> Adding LDPC vectors for UT verification, coverage,
> and profiling for 5GNR encode/decode operations.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

> +++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
> @@ -0,0 +1,354 @@
> +# SPDX-License-Identifier: BSD-3-Clause
> +# Copyright(c) 2019 Intel Corporation
> +# Origin : FEC5G_UL_1/xxxx

Probably a new line between Origin and he license header helps to avoid
any misconception that his somehow relates to the copyright header.
Also, don't understand its purpose here?

> +op_type =
> +RTE_BBDEV_OP_LDPC_DEC

You may retain my ack in further edits..

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes Nicolas Chautru
@ 2019-06-30 23:04             ` Mokhtar, Amr
  2019-07-01 11:14             ` Akhil Goyal
  1 sibling, 0 replies; 95+ messages in thread
From: Mokhtar, Amr @ 2019-06-30 23:04 UTC (permalink / raw)
  To: Chautru, Nicolas, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh


> -----Original Message-----
> From: Chautru, Nicolas
> Sent: Monday 24 June 2019 03:53
> To: akhil.goyal@nxp.com; dev@dpdk.org
> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>;
> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Subject: [PATCH v4 10/10] doc: announce bbdev changes
> 
> Update of the release notes for BBDEV features add
> and extension of ABI in previous commit.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---

Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes Nicolas Chautru
  2019-06-30 23:04             ` Mokhtar, Amr
@ 2019-07-01 11:14             ` Akhil Goyal
  2019-07-01 18:14               ` Chautru, Nicolas
  1 sibling, 1 reply; 95+ messages in thread
From: Akhil Goyal @ 2019-07-01 11:14 UTC (permalink / raw)
  To: Nicolas Chautru, dev; +Cc: thomas, ferruh.yigit, amr.mokhtar

Hi Nicolas,

> 
> Update of the release notes for BBDEV features add
> and extension of ABI in previous commit.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---
>  doc/guides/rel_notes/release_19_08.rst | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/release_19_08.rst
> b/doc/guides/rel_notes/release_19_08.rst
> index 8c3932d..35d3a09 100644
> --- a/doc/guides/rel_notes/release_19_08.rst
> +++ b/doc/guides/rel_notes/release_19_08.rst
> @@ -88,6 +88,19 @@ New Features
>    * Added multi-queue support to allow one af_xdp vdev with multiple netdev
>      queues
> 
> +* **Added a FPGA_LTE_FEC bbdev PMD.**
> +
> +  Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA PAC
> +  (Programmable  Acceleration Card) N3000.  See the
> +  :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver.
> +
> +* **Updated TURBO_SW bbdev PMD.**
> +
> +  Updated the ``turbo_sw`` bbdev driver with changes including:
> +
> +  * Added option to build the driver with or without dependency of external
> +    SDK libraries.
> +  * Added support for 5GNR encode/decode operations.
> 
>  Removed Items
>  -------------
> @@ -140,6 +153,8 @@ ABI Changes
>     Also, make sure to start the actual text at the margin.
>     =========================================================
> 
> +* bbdev: New parameters added to support 5GNR operations.
> +
> 
>  Shared Library Versions
>  -----------------------
> --
> 1.8.3.1

Release note changes should be part of the same patch which is adding that change.

One more thing, if there is a change in ABI, should you also increment the bbdev ABI version?

Please also send a rebased version of your patchset, so that builds can be verified by CI. The dependent patches are applied on the sub-tree.

-Akhil


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
  2019-06-30 22:31             ` Mokhtar, Amr
@ 2019-07-01 18:06             ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
                                 ` (6 more replies)
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2 siblings, 7 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

v5 update: rebase and squashing release note update with related change. 
v4 update: cosmetic changes reported by ci/checkpatch

This set enables specifically bbdev to support 5GNR operations
(previously only LTE specific) and to add the related support 
to turbo_sw PMD driver, test framework and documentation.


Nicolas Chautru (7):
  bbdev: renaming non-generic LTE specific structure
  bbdev: extension of BBDEV API for 5G FEC
  docs/guides: updating bbdev API for 5GNR operations
  baseband/turbo_sw: extension of turbosw PMD for 5G
  docs/guides: updating building steps for BBDEV PMD
  test-bbdev: update of bbdev test-app for 5GNR
  test-bbdev: test vectors for 5GNR verification

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    3 +
 app/test-bbdev/test-bbdev.py                       |    7 +
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1233 ++++++++++++++++++--
 app/test-bbdev/test_bbdev_vector.c                 |  519 +++++++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  353 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  684 +++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  902 ++++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  745 ++++++++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  745 ++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   48 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   74 ++
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  255 ++++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1215 +++++++++++++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   41 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  151 +++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   43 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   70 ++
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  197 ++++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |   42 +-
 doc/guides/prog_guide/bbdev.rst                    |  505 +++++++-
 doc/guides/rel_notes/release_19_08.rst             |   17 +-
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       |  103 +-
 drivers/baseband/turbo_sw/Makefile                 |   15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  714 +++++++++++-
 drivers/baseband/turbo_sw/meson.build              |   10 +
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  138 ++-
 lib/librte_bbdev/rte_bbdev_op.h                    |  585 ++++++++--
 mk/rte.app.mk                                      |    8 +-
 38 files changed, 9181 insertions(+), 399 deletions(-)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 1/7] bbdev: renaming non-generic LTE specific structure
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 2/7] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
                                 ` (5 subsequent siblings)
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Renaming of the enums and structure which were LTE specific to
allow for extension and support for 5GNR operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     | 103 ++++++++++++-----------
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  39 +++++----
 lib/librte_bbdev/rte_bbdev_op.h                  |  26 +++---
 5 files changed, 89 insertions(+), 85 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index 19e7689..7e05b94 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -607,9 +607,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -621,9 +621,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1332,14 +1332,15 @@ struct __rte_cache_aligned fpga_queue {
 validate_enc_op(struct rte_bbdev_enc_op *op)
 {
 	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
-	struct rte_bbdev_op_enc_cb_params *cb = NULL;
-	struct rte_bbdev_op_enc_tb_params *tb = NULL;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
 	uint16_t kw, kw_neg, kw_pos;
 
 	if (turbo_enc->input.length >
-			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+			RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+				turbo_enc->input.length,
+				RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return -1;
 	}
@@ -1372,32 +1373,32 @@ struct __rte_cache_aligned fpga_queue {
 
 	if (turbo_enc->code_block_mode == 0) {
 		tb = &turbo_enc->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+		if (tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1406,23 +1407,23 @@ struct __rte_cache_aligned fpga_queue {
 					tb->cab, tb->c);
 			return -1;
 		}
-		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+		if ((tb->ea < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->ea % 2))
 				&& tb->r < tb->cab) {
 			rte_bbdev_log(ERR,
 					"ea (%u) is less than %u or it is not even",
-					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+					tb->ea, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
-		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+		if ((tb->eb < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->eb % 2))
 				&& tb->c > tb->cab) {
 			rte_bbdev_log(ERR,
 					"eb (%u) is less than %u or it is not even",
-					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+					tb->eb, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
 		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
 			rte_bbdev_log(ERR,
 					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
@@ -1431,7 +1432,7 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
 			rte_bbdev_log(ERR,
 					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
@@ -1446,23 +1447,23 @@ struct __rte_cache_aligned fpga_queue {
 		}
 	} else {
 		cb = &turbo_enc->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 
-		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+		if (cb->e < RTE_BBDEV_TURBO_MIN_CB_SIZE || (cb->e % 2)) {
 			rte_bbdev_log(ERR,
 					"e (%u) is less than %u or it is not even",
-					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+					cb->e, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
-		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 		if (cb->ncb < cb->k || cb->ncb > kw) {
 			rte_bbdev_log(ERR,
 					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
@@ -1655,8 +1656,8 @@ struct __rte_cache_aligned fpga_queue {
 validate_dec_op(struct rte_bbdev_dec_op *op)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
-	struct rte_bbdev_op_dec_cb_params *cb = NULL;
-	struct rte_bbdev_op_dec_tb_params *tb = NULL;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
 
 	if (op->mempool == NULL) {
 		rte_bbdev_log(ERR, "Invalid mempool pointer");
@@ -1713,33 +1714,33 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		tb = &turbo_dec->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c > tb->c_neg) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1757,12 +1758,12 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		cb = &turbo_dec->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 	}
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 94aa536..5551f84 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -34,9 +34,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -103,7 +103,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -158,9 +158,10 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -172,8 +173,10 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 #endif
@@ -257,7 +260,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -277,7 +280,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -295,7 +298,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -313,7 +316,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -439,9 +442,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -466,9 +469,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -773,9 +776,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1074,7 +1077,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index b6ca3b0..d860989 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,22 +26,22 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
  * Maximum number of Code Blocks in Transport Block. It is calculated based on
  * maximum size of one Code Block and one Transport Block (considering CRC24A
  * and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
@@ -133,7 +133,7 @@ struct rte_bbdev_op_data {
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -204,7 +204,7 @@ struct rte_bbdev_op_dec_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -288,7 +288,7 @@ struct rte_bbdev_op_turbo_dec {
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
+struct rte_bbdev_op_enc_turbo_cb_params {
 	/**< The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
@@ -305,7 +305,7 @@ struct rte_bbdev_op_enc_cb_params {
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
+struct rte_bbdev_op_enc_turbo_tb_params {
 	/**< The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
@@ -320,7 +320,7 @@ struct rte_bbdev_op_enc_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -375,9 +375,9 @@ struct rte_bbdev_op_turbo_enc {
 	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 2/7] bbdev: extension of BBDEV API for 5G FEC
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 3/7] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
                                 ` (4 subsequent siblings)
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Extension to BBDEV operations to support 5G
on top of existing 4G operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 doc/guides/rel_notes/release_19_08.rst |   4 +-
 lib/librte_bbdev/rte_bbdev.c           |  22 +-
 lib/librte_bbdev/rte_bbdev.h           | 138 +++++++-
 lib/librte_bbdev/rte_bbdev_op.h        | 567 ++++++++++++++++++++++++++-------
 4 files changed, 608 insertions(+), 123 deletions(-)

diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst
index 335d24a..55ae8ee 100644
--- a/doc/guides/rel_notes/release_19_08.rst
+++ b/doc/guides/rel_notes/release_19_08.rst
@@ -126,7 +126,6 @@ New Features
   Added telemetry mode to l3fwd-power application to report
   application level busyness, empty and full polls of rte_eth_rx_burst().
 
-
 Removed Items
 -------------
 
@@ -192,6 +191,9 @@ ABI Changes
 
   Disabling unused features would facilitate efficient usage of HW/SW offload.
 
+* bbdev: New operations and parameters added to support new 5GNR operations.
+  The bbdev ABI is still kept experimental.
+
 Shared Library Versions
 -----------------------
 
diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index 0c35480..f6fe05a 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev *
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev *
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev *
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev *
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev *
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev *
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool *
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index c5175cc..591fb79 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -167,7 +167,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -326,7 +326,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -448,6 +448,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -523,6 +531,69 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -585,6 +656,69 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index d860989..1e119a7 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -31,57 +31,61 @@
 #define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
 #define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
 #define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,114 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16),
+	/** Set if a device supports loop-back access to
+	 *  HARQ internal memory. Intended for troubleshooting.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK = (1ULL << 17)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +220,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +232,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +240,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +255,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +356,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
 	};
 };
 
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	 * per bit of the original CB.
+	 */
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {1,2,4,6,8}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+	};
+};
+
+/** Turbo encode code block parameters */
 struct rte_bbdev_op_enc_turbo_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
+/** Turbo encode transport block parameters */
 struct rte_bbdev_op_enc_turbo_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +549,38 @@ struct rte_bbdev_op_enc_turbo_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +597,131 @@ struct rte_bbdev_op_enc_turbo_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched CB or TB output buffer */
 	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
+		/** Struct which stores Code Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
+		/** Struct which stores Transport Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched TB or CB output buffer */
+	struct rte_bbdev_op_data output;
+
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+	};
+};
+
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Amount of memory for HARQ in external DDR in MB */
+	uint16_t harq_memory_size;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +729,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -516,7 +855,8 @@ struct rte_mempool *
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -552,7 +892,8 @@ struct rte_mempool *
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 3/7] docs/guides: updating bbdev API for 5GNR operations
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 2/7] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
                                 ` (3 subsequent siblings)
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

The documentation captures the related change in
BBDEV API to support 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 doc/guides/prog_guide/bbdev.rst | 505 ++++++++++++++++++++++++++++++++++++----
 1 file changed, 458 insertions(+), 47 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 607d2e7..ef05dcb 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -166,9 +166,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +220,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +234,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +266,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +336,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +406,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +455,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +525,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +552,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +627,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +658,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +679,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +710,376 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK                        |
+| Set if a device supports loopback access to HARQ internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {1,2,4,6,8} from pi/2-BPSK to 256QAM           |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (2 preceding siblings ...)
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 3/7] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 5/7] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
                                 ` (2 subsequent siblings)
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Implementation still based on Intel SDK libraries
optimized for AVX512 instructions set and 5GNR.
This can be also build for AVX2 for 4G capability or
without SDK dependency for maintenance.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 config/common_base                               |   1 +
 doc/guides/rel_notes/release_19_08.rst           |  15 +-
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 677 ++++++++++++++++++++++-
 drivers/baseband/turbo_sw/meson.build            |  10 +
 mk/rte.app.mk                                    |   8 +-
 6 files changed, 715 insertions(+), 11 deletions(-)

diff --git a/config/common_base b/config/common_base
index e5a4ebf..c2551b1 100644
--- a/config/common_base
+++ b/config/common_base
@@ -536,6 +536,7 @@ CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 CONFIG_RTE_BBDEV_SDK_AVX2=n
+CONFIG_RTE_BBDEV_SDK_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst
index 55ae8ee..7c508fc 100644
--- a/doc/guides/rel_notes/release_19_08.rst
+++ b/doc/guides/rel_notes/release_19_08.rst
@@ -126,6 +126,20 @@ New Features
   Added telemetry mode to l3fwd-power application to report
   application level busyness, empty and full polls of rte_eth_rx_burst().
 
+* **Added a FPGA_LTE_FEC bbdev PMD.**
+
+  Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA PAC
+  (Programmable  Acceleration Card) N3000.  See the
+  :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver.
+
+* **Updated TURBO_SW bbdev PMD.**
+
+  Updated the ``turbo_sw`` bbdev driver with changes including:
+
+  * Added option to build the driver with or without dependency of external
+    SDK libraries.
+  * Added support for 5GNR encode/decode operations.
+
 Removed Items
 -------------
 
@@ -165,7 +179,6 @@ API Changes
   structure (``rte_crypto_cipher_xform``, ``rte_crypto_auth_xform``, and
   ``rte_crypto_aead_xform``) have been changed to ``const uint8_t *data``.
 
-
 ABI Changes
 -----------
 
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index 414d0d9..4aa05d2 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -3,7 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-
 # library name
 LIB = librte_pmd_bbdev_turbo_sw.a
 
@@ -34,6 +33,20 @@ LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
 LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 endif
 
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),n)
+$(error "CONFIG_RTE_BBDEV_SDK_AVX512 requires CONFIG_RTE_BBDEV_SDK_AVX2 set")
+endif
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
 # library version
 LIBABIVER := 1
 
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5551f84..2f06369 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,11 +14,24 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
 #ifdef RTE_BBDEV_SDK_AVX2
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
 
 #define DRIVER_NAME baseband_turbo_sw
 
@@ -84,6 +97,7 @@ struct turbo_sw_queue {
 	enum rte_bbdev_op_type type;
 } __rte_cache_aligned;
 
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline char *
 mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
@@ -180,20 +194,53 @@ struct turbo_sw_queue {
 			}
 		},
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			}
+		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.harq_memory_size = 0,
+			.num_buffers_src =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
 	static struct rte_bbdev_queue_conf default_queue_conf = {
 		.queue_size = RTE_BBDEV_QUEUE_SIZE_LIMIT,
 	};
-
 #ifdef RTE_BBDEV_SDK_AVX2
 	static const enum rte_cpu_flag_t cpu_flag = RTE_CPUFLAG_SSE4_2;
 	dev_info->cpu_flag_reqs = &cpu_flag;
 #else
 	dev_info->cpu_flag_reqs = NULL;
 #endif
-
 	default_queue_conf.socket = dev->data->socket_id;
 
 	dev_info->driver_name = RTE_STR(DRIVER_NAME);
@@ -280,7 +327,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -288,7 +335,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -423,6 +470,7 @@ struct turbo_sw_queue {
 };
 
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -478,16 +526,21 @@ struct turbo_sw_queue {
 	return 0;
 }
 #endif
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -511,11 +564,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -544,11 +600,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -575,13 +634,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -757,6 +819,143 @@ struct turbo_sw_queue {
 #endif
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -850,6 +1049,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -866,6 +1152,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
@@ -890,7 +1193,11 @@ struct turbo_sw_queue {
 		struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -908,11 +1215,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -928,11 +1237,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -1025,6 +1335,202 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in LDPC decoder output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		harq_out = NULL;
+		if (m_harq_out != NULL) {
+			/* Initialize HARQ data length since we overwrite */
+			m_harq_out->data_len = 0;
+			/* Check there is enough space
+			 * in the HARQ outbound buffer
+			 */
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		}
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in HARQ output mbuf");
+			return;
+		}
+		/* get output data starting address and overwrite the data */
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1083,6 +1589,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1104,6 +1611,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1127,6 +1731,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1146,6 +1767,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1161,6 +1800,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1273,6 +1930,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
index 438b5a7..33345aa 100644
--- a/drivers/baseband/turbo_sw/meson.build
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -23,6 +23,16 @@ if dpdk_conf.has('RTE_BBDEV_SDK_AVX2')
 		includes += include_directories(path + '/lib_common')
 	endif
 endif
+if dpdk_conf.has('RTE_BBDEV_SDK_AVX512')
+	ext_deps += cc.find_library('libldpc_encoder_5gnr', dirs: [path + '/lib_ldpc_encoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libldpc_decoder_5gnr', dirs: [path + '/lib_ldpc_decoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libLDPC_ratematch_5gnr', dirs: [path + '/lib_LDPC_ratematch_5gnr'], required: true)
+	ext_deps += cc.find_library('librate_dematching_5gnr', dirs: [path + '/lib_rate_dematching_5gnr'], required: true)
+	includes += include_directories(path + '/lib_ldpc_encoder_5gnr')
+	includes += include_directories(path + '/lib_ldpc_decoder_5gnr')
+	includes += include_directories(path + '/lib_LDPC_ratematch_5gnr')
+	includes += include_directories(path + '/lib_rate_dematching_5gnr')
+endif
 
 deps += ['bbdev', 'bus_vdev', 'ring']
 name = 'bbdev_turbo_sw'
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index c9fbdd6..1036df7 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -232,7 +232,13 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcr
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif # CONFIG_RTE_BBDEV_SDK_AVX512
 endif # CONFIG_RTE_BBDEV_SDK_AVX2
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 5/7] docs/guides: updating building steps for BBDEV PMD
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (3 preceding siblings ...)
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 6/7] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 7/7] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

This now includes steps to build with either
libraries for AVX2, or AVX512 or no dependency.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 doc/guides/bbdevs/turbo_sw.rst | 42 +++++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 455fa1d..2785a50 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -5,20 +5,21 @@ SW Turbo Poll Mode Driver
 =========================
 
 The SW Turbo PMD (**baseband_turbo_sw**) provides a software only poll mode bbdev
-driver that can optionally utilize Intel optimized libraries for LTE Layer 1
-workloads acceleration.
+driver that can optionally utilize Intel optimized libraries for LTE and 5GNR
+Layer 1 workloads acceleration.
 
 Note that the driver can also be built without any dependency with reduced
 functionality for maintenance purpose.
 
 To enable linking to the SDK libraries see detailed installation section below.
-One flag can be enabled depending on whether the target machine can support
-AVX2 instructions sets and the related SDK libraries for vectorized
+Two flags can be enabled depending on whether the target machine can support
+AVX2 and AVX512 instructions sets and the related SDK libraries for vectorized
 signal processing functions are installed :
 - CONFIG_RTE_BBDEV_SDK_AVX2
-
-By default this flag is disabled. For AVX2 machine and SDK
-library installed then this flag can be enabled.
+- CONFIG_RTE_BBDEV_SDK_AVX512
+By default these 2 flags are disabled by default. For AVX2 machine and SDK
+library installed then the first flag can be enabled. For AVX512 machine and
+SDK library installed then both flags can be enabled for full real time capability.
 
 This PMD supports the functions: FEC, Rate Matching and CRC functions detailed
 in the Features section.
@@ -45,11 +46,25 @@ For the LTE decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the 5G NR LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the 5G NR LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -60,7 +75,7 @@ FlexRAN SDK Download
 As an option it is possible to link this driver with FleXRAN SDK libraries
 which can enable real time signal processing using AVX instructions.
 
-These libraries are available through this link `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
+These libraries are available through this `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
 
 After download is complete, the user needs to unpack and compile on their
 system before building DPDK.
@@ -115,14 +130,13 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
-
 Initialization
 --------------
 
-In order to enable this virtual bbdev PMD, the user must:
+In order to enable this virtual bbdev PMD, the user may:
 
 * Build the ``FLEXRAN SDK`` libraries (explained in Installation section).
 
@@ -137,9 +151,11 @@ Example:
     export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/install
     export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/
 
-* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y``
+* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y`` and ``CONFIG_RTE_BBDEV_SDK_AVX512=y``
   in DPDK common configuration file ``config/common_base`` to be able to use
   the SDK libraries as mentioned above.
+  For AVX2 machine it is possible to only enable CONFIG_RTE_BBDEV_SDK_AVX2
+  for limited 4G functionality.
   If no flag are set the PMD driver will still build but its capabilities
   will be limited accordingly.
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 6/7] test-bbdev: update of bbdev test-app for 5GNR
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (4 preceding siblings ...)
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 5/7] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 7/7] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Extending test framework for FEC 5GNR operations
for UT verification and profiling.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 app/test-bbdev/main.c                 |   48 +-
 app/test-bbdev/main.h                 |    6 +-
 app/test-bbdev/meson.build            |    3 +
 app/test-bbdev/test-bbdev.py          |    7 +
 app/test-bbdev/test_bbdev.c           |   12 +-
 app/test-bbdev/test_bbdev_perf.c      | 1233 ++++++++++++++++++++++++++++++---
 app/test-bbdev/test_bbdev_vector.c    |  515 +++++++++++++-
 app/test-bbdev/test_bbdev_vector.h    |   14 +-
 app/test-bbdev/turbo_enc_default.data |    2 +-
 9 files changed, 1714 insertions(+), 126 deletions(-)

diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..d3f2b77 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -7,3 +7,6 @@ sources = files('main.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
 deps += ['bbdev', 'bus_vdev']
+if dpdk_conf.has('RTE_LIBRTE_PMD_FPGA_LTE_FEC')
+	deps += ['bbdev_fpga_lte_fec']
+endif
\ No newline at end of file
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
index 25340ec..0194be0 100755
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..a166eaf 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,58 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifndef RTE_BUILD_SHARED_LIB
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set PF mode :
+		 * true if PF is used for data plane
+		 * false for VFs
+		 */
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+#endif
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +784,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +823,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +869,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +888,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +943,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +977,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +998,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1107,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1306,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1387,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1424,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1457,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1490,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1527,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1554,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1569,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1620,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
-		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
 
-		create_reference_dec_op(op_params->ref_dec_op);
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
+		}
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
+
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
+		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1707,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1731,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1776,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1799,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1884,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1899,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1988,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2099,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2286,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2299,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2452,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, itr mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2475,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2495,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2543,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1841,7 +2566,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	tp->ops_per_sec /= TEST_REPETITIONS;
 	tp->mbps /= TEST_REPETITIONS;
-	ret |= rte_atomic16_read(&tp->processing_status);
+	ret |= (int)rte_atomic16_read(&tp->processing_status);
 
 	/* Wait for slave lcores operations */
 	for (used_cores = 1; used_cores < num_lcores; used_cores++) {
@@ -1855,14 +2580,16 @@ typedef int (test_case_function)(struct active_device *ad,
 
 		tp->ops_per_sec /= TEST_REPETITIONS;
 		tp->mbps /= TEST_REPETITIONS;
-		ret |= rte_atomic16_read(&tp->processing_status);
+		ret |= (int)rte_atomic16_read(&tp->processing_status);
 	}
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2667,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2805,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2908,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2917,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2996,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3030,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3061,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3163,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3196,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3224,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3342,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3370,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3396,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3502,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3518,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..6b8e018 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
@@ -898,7 +1389,8 @@
 			goto exit;
 		}
 
-		strcpy(entry, line);
+		memset(entry, 0, strlen(line) + 1);
+		strncpy(entry, line, strlen(line));
 
 		/* check if entry ends with , or = */
 		if (entry[strlen(entry) - 1] == ','
@@ -920,8 +1412,7 @@
 				}
 
 				entry = entry_extended;
-				/* entry has been allocated accordingly */
-				strcpy(&entry[strlen(entry)], line);
+				strncat(entry, line, strlen(line));
 
 				if (entry[strlen(entry) - 1] != ',')
 					break;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v5 7/7] test-bbdev: test vectors for 5GNR verification
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (5 preceding siblings ...)
  2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 6/7] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
@ 2019-07-01 18:06               ` Nicolas Chautru
  6 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-01 18:06 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Adding LDPC vectors for UT verification, coverage,
and profiling for 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  353 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  684 +++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  902 +++++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  745 ++++++++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  745 ++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   48 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   74 ++
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  255 ++++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1215 ++++++++++++++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   41 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  151 +++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   43 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   70 ++
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  197 ++++
 17 files changed, 5574 insertions(+)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 120000
index 0000000..3058cc0
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_v2342.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 120000
index 0000000..371cbc6
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..5d4d27d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,353 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..63c2d3b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,684 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..2463df6
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,902 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..84a04e1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..eca4131
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,745 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..f30726e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,745 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..c656fd3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,48 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..ddebf7b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,74 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..0b95e4e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,255 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..e645602
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1215 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..e27ff6e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,41 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v2342.data b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
new file mode 100644
index 0000000..619b29b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
@@ -0,0 +1,151 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+# Origin : FEC5g_DL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+output0 =
+0xADE67AA9, 0x1CB4EBDD, 0x74E76684, 0xE3941FC7, 0x48DAC304, 0x1E2C198D, 0xFE88B908, 0xEC21A3DE,
+0xBF314AB7, 0x634E3DCB, 0x0DA84E23, 0x58B1B22B, 0x02B837A0, 0x8B04BF38, 0xFB8DB526, 0x1BFF82E9,
+0x4226C4D0, 0xF7A9950E, 0x6DA4D0B2, 0x38E15395, 0x94C1A379, 0x243ED666, 0x3E7255B3, 0x7DB378DB,
+0xA3CE1377, 0xE0137291, 0x42DB50AC, 0xEB2D0A13, 0xCA55944A, 0x223DF8E0, 0xB800D1CF, 0xAA2E7577,
+0x50153EC5, 0x5E3C8557, 0x63DDEC8F, 0x49A256F8, 0x41ABFD56, 0xEB76A4D7, 0x4F4E9C7C, 0x3508DA39,
+0x530F9DA0, 0xFFD20E32, 0x395F7963, 0x1C48B3F7, 0xD3BC29C7, 0x4D6ED90F, 0xC1C9EF58, 0x9B9D4A13,
+0x417BF36E, 0x1BB5FDD8, 0x72793F28, 0x2F297FA5, 0x204AA988, 0x28317636, 0x87878EC8, 0x33024F9D,
+0xE651388E, 0x560ACA6E, 0xEC3D0B64, 0xCB515AAE, 0xE42B9ECD, 0x2AE2B0D1, 0xCD659A28, 0x8BD5E4D8,
+0x0D618DD6, 0x14CF8DB1, 0xE9F82BB6, 0x558C50A4, 0xA9809F8C, 0x15646823, 0x6037DB27, 0x26A0ABAA,
+0xF8DC4AC6, 0x533494C9, 0x7BF60155, 0x7BB16D05, 0x89F7A1BA, 0xCB069606, 0x6572D71A, 0x001917EB,
+0xD353913B, 0x128F78BD, 0x83BCE2A3, 0xE0065266, 0x9E7E608F, 0x25889472, 0x184ADD42, 0xD42B429B,
+0x7A8D861F, 0x54C97AB8, 0xB8B04229, 0xDF3DE03A, 0xB97E311E, 0xBB2A1FF8, 0x53AC8D5B, 0x1825B5DC,
+0x9843DD95, 0x0214EAA6, 0x3B1CF504, 0xD3BE316F, 0x9B1D3C64, 0x8EF4A268, 0xFACBC9AD, 0xDCC6033F,
+0xF801E3D1, 0x92F3E3A1, 0x1EC121AC, 0xA6747F20, 0x6ACC34EF, 0x0F641DC0, 0x42CAB9C3, 0xE04036DD,
+0x97739381, 0x9843A304, 0x929E9AB7, 0x600E057F, 0x892D5F1F, 0x0F718281, 0xD345AA58, 0xF39215C4,
+0xBCAB0B51, 0x1EBEA1B0, 0x68885471, 0xB39AD728, 0x2FF70470, 0x80D01FE5, 0xB41A95C0, 0x01DB8079,
+0xA4C9F364, 0x41860F1A, 0xEBE24F2B, 0x086BFFF0, 0x7B66DE40, 0xFFF665D6, 0x18324792, 0x1D253106,
+0xC41B9BF0, 0xC79347BA, 0x6949A396, 0x279E7A4A, 0x4029B533, 0xE8B382E2, 0x89783E24, 0x3D945C74,
+0x49BD75D8, 0xBAD731A0, 0x48B4AFAB, 0x4383B903, 0x8A6966A6, 0x170B9958, 0x58307AB6, 0x3B627463,
+0x0B981BEA, 0xD8E9A038, 0x723219E7, 0x4F6E5470, 0xE4F3CF92, 0x37AACC8A, 0xA4E46500, 0xE44DDA39,
+0x68690180, 0x33143C47, 0x9A6EE438, 0x5FA00F23, 0xD2CEE248, 0x46090D1A, 0xDE5491AE, 0x417D853E,
+0xC607B731, 0x79D7DCCF, 0x13200C03, 0x07CAB5E9, 0xB59525EA, 0xE47B66A5, 0xB125AAAB, 0x20CCFE07,
+0x82F1F4E8, 0xCF44BD2B, 0xC462D58D, 0x60A6A73B, 0x0D0CA712, 0xFE342922, 0x15123217, 0x7A02E89D,
+0x49B44659, 0xB9F3AE54, 0xAFC472BC, 0x79AF1A6D, 0x7430BA59, 0xEA13F81C, 0x33592D7D, 0x1EF1E1DC,
+0xF51FF0C8, 0x80F7B07E, 0xC1536EBB, 0x586CB41D, 0x10AF823C, 0x390EA571, 0x7D54C302, 0xA049ECBE,
+0x368C3981, 0x38B72BEE, 0x833C5F98, 0x2E18D066, 0x5742B0D2, 0xA8F5F0B8, 0x9144935D, 0x7392A908,
+0x3175DBC0, 0x29AA2F7C, 0xF53FED73, 0xFE41236B, 0x091E47EC, 0xD2195647, 0xCAAEA8B5, 0x0ED9750E,
+0xF5027456, 0xF1838780, 0x16FFE8EE, 0xA21568C6, 0xC5E4FCAF, 0x27C24C4B, 0x3DE89E8E, 0x5464ADC6,
+0x865C8493, 0x41032697, 0xD5F82075, 0x49167AF7, 0xED1AA45C, 0xA6B20018, 0xB1776BA9, 0x9F2129B6,
+0x611C417D, 0x3B72E8B6, 0x1AA7DB22, 0xF4ADF40E, 0xA24B8EFB, 0xF25C5F9D, 0xE52C047E, 0x3B8C9A26,
+0x4C0760E4, 0x73027C0E, 0x1F5977D8, 0x6CAF979D, 0xEF39719F, 0x70129F6A, 0x0CC821CD, 0x9853AE70,
+0xC3EB24E5, 0xE4EED628, 0x9F904579, 0xFD680398, 0x2C84DF92, 0xF92DA147, 0xB2F7C7C3, 0x59052EB6,
+0x4DF89375, 0x275D0C58, 0xBE32DA96, 0x7A3C4C7F, 0xC5C2B02F, 0x651B2665, 0x36E5DC9B, 0x98B1F08B,
+0x175A5AE0, 0xBEC258CA, 0xDDF6B687, 0x49E3DBE6, 0x07C1C780, 0x63E3B861, 0x05FDAAEC, 0xFA7C38A4,
+0x5EE93618, 0xF8B78C2B, 0xBB5035B7, 0x7E297AC8, 0x6CC27636, 0x30D44C50, 0xECB1065B, 0xB00AB96E,
+0x87B3C67E, 0x0AA61403, 0xF514C18B, 0xDBF3CEEB, 0x62ACA4C1, 0x9A0D1691, 0x07E3DF50, 0xC42070E8,
+0x98F349F7, 0xC1556162, 0x6F7D7109, 0xF6C7B215, 0x73748B4E, 0xAF9F5BFF, 0xDD1B8AE6, 0xA9C710AA,
+0x5965A4DA, 0x762A0F38, 0xD42C7578, 0xBA69C66D, 0x2CCABCB7, 0x932E7065, 0xD6F3F37E, 0x729F1412,
+0xE5EAEB07, 0x1C2D7291, 0x07E5E6C9, 0xCA16EED5, 0xD488558D, 0x235C11EB, 0x579B8BCA, 0xAC352250,
+0x858BD553, 0xECCBE50A, 0x370421F0, 0xA66CD423, 0x1424CB84, 0x286FBE65, 0xDFF5A1E9, 0x71ABB615,
+0xAE331217, 0xE8E333A5, 0x99044B7D, 0x26264E30, 0x35A7FEA1, 0x3E933B79, 0x4151D8A3, 0x672D78D6,
+0xC586C999, 0xEFFEFF6F, 0xD1EC082A, 0x0EB38797, 0x85F77710, 0x5FEAE876, 0x78FBE4E2, 0x6284663A,
+0x6E54B0AF, 0x5C107AF7, 0x24005DF7, 0xA994E2EC, 0xAFDDB6FF, 0x79019A53, 0xE1B8A123, 0x997B7B95,
+0x9BFC63E3, 0xEAEEB40C, 0x14AECFE6, 0xC29A3F38, 0x21833356, 0x6B65DAAC, 0x9AEADA3F, 0x16582D82,
+0xD6E7B8EC, 0xEE67A365, 0x3F33FD50, 0xABD603DC, 0x0DA08D72, 0x69E01AFD, 0x4862B58E, 0xE1DFCA98,
+0x5FE11079, 0x40992E48, 0x0589689B, 0xE836FACC, 0x87FFD4D6, 0x9F5DF070, 0x6BC69520, 0x5CF6F087,
+0x66523DC9, 0x54D0EEA3, 0xDD820FC2, 0x663BFA8E, 0x2561E952, 0xA82EDAB8, 0x3FC1092B, 0x8591A2C1,
+0x0E9E67EF, 0x4A334D9C, 0x867BB16F, 0xB6A1713F, 0xED8D7EFE, 0xF2926C44, 0xD2E97512, 0xE8301103,
+0x3DD30957, 0xEFB71B3F, 0x4AE801D5, 0x8F75F730, 0x0C34FBC9, 0x7A60C668, 0x77908ED9, 0x963C0DE4,
+0x5279E29C, 0x6759B153, 0x747E5E7B, 0x4C510BE5, 0x32BE2132, 0x54B361E0, 0xCB4D9616, 0x3C404BA4,
+0x4BA0E910, 0x05F06AD1, 0xAE3FBC5C, 0x82CB03B4, 0xF0EC45FF, 0x9888791B, 0xDE4B9813, 0xF83B4090,
+0x3CC4BA28, 0x7CFE8854, 0x9CA7BC9D, 0x0E41843E, 0xF92535F6, 0xF19CC699, 0x0821CBF4, 0xF15F3F82,
+0xCF6CC14C, 0xF27DA57E, 0xB8DB8982, 0xFC7E263D, 0x63C36111, 0x61587ABA, 0xB87CB18D, 0x2C806A64,
+0xD8DFFF2C, 0xC8540E77, 0x1A340B85, 0xB6FBA97F, 0x77A1958D, 0x419648E8, 0x80A65729, 0xC3EC1141,
+0x3909010F, 0x84F8C534, 0x2FEDE987, 0x83851AC8, 0xAE88B841, 0xE8284692, 0x3243F04B, 0x9C845E80,
+0x4A7FC52E, 0xF6B1035A, 0x59E1C576, 0x21620CB8, 0xF047E16D, 0x079284B7, 0x00B6C955, 0xA7B19103,
+0x7B9EB069, 0x733E2443, 0x489A6EAE, 0x7BB17B2C, 0x6AB4F848, 0xEFA299A2, 0xC464BE42, 0x36F27FC5,
+0xE70CEAB2, 0x6FCB4031, 0x9C0A14C0, 0x682AA1A3, 0x36E7032C, 0x57BA22A8, 0x085288CE, 0xDE62ADD4,
+0xC0138A07, 0x4A5576F5, 0xC0F33DE3, 0x919ECA7A, 0x14FFDE87, 0x362897AF, 0xD542F683, 0x86FBC0FC,
+0x8CD6DD3E, 0x25832EDF, 0xC2C9EE74, 0xB244A89B, 0xFEAF2F44, 0x1D631217, 0x80BA2267, 0x097D3F4D,
+0x406264AC, 0x0571B5FF, 0x55658770, 0xE12F6AA3, 0x666D9831, 0x37E17306, 0x88D926AB, 0xBB0CC6D9,
+0xA857A201, 0xB24E5A82, 0xF259D2AE, 0xD09D0FAE, 0x87363A50, 0x583F1CC9, 0x653F73F3, 0x0D04970B,
+0x64D1F222, 0xEF7E0E0B, 0x7F5D49DB, 0xAC4549D9, 0x707D1FCF, 0x3A151C06, 0xFE5DEC4A, 0xE3D6CCBA,
+0x0AA3DA9B, 0x4665CBC5, 0xDF7BCD0F, 0x63DD0FF5, 0xC9C2A642, 0xB40B516D, 0xE259A165, 0xE2E454E1,
+0x0A384EDD, 0x1287018F, 0x2A7A8DFD, 0xF854FCF1, 0x79CAA64E, 0x351AC522, 0xEE65C527, 0x7F160E51,
+0xF465AF5C, 0xE671974B, 0xAF75CA8D, 0x47A5EC29, 0x5F93C8AD, 0x6420D4E9, 0xA5CA4610, 0x265F0BF4,
+0x6622036C, 0xB542C8CB, 0xDFD1FA4F, 0x5869BE19, 0x14605EAE, 0xA438FEA7, 0x9523F5FA, 0xE18FCF2B,
+0x5F11F7B1, 0x7A790EBA, 0xDBDD0005, 0x024E0D8B, 0xC387778B, 0x3C0F1274, 0xA722512C, 0xEAB3C2F3,
+0x11B55F3A, 0x9C2DBBD6, 0xA76C80DC, 0xD63A5DD2, 0x320F7AF2, 0xA707544C, 0x889A3C58, 0x50CCA3B0,
+0xD54FE248, 0x22EF12A3, 0xF618F564, 0x1D9266C8, 0x4E08FB46, 0x6D1D41EB, 0x5CFF2094, 0x116ECB97,
+0x46FD4058, 0x38FBE5CC, 0xE008E8EF, 0x578FAF14, 0x3BEED1D9, 0x8C89B4CE, 0xFC0C33D7, 0x0913ECF8,
+0x498D47D1, 0x5644A9B3, 0x6EA66735, 0xA0F3BA09, 0x948B258F, 0xFA8DE3BE, 0x2FB03145, 0x8D0B61B3,
+0x42D6F53D, 0x031FD745, 0xFF86C938, 0xA32BB471, 0x50208969, 0x9F6909C9, 0x680C6D55, 0x13054044,
+0xDFDEBEF7, 0x35600E83, 0xAFB26C47, 0xCAA86F9F, 0x5B5B65A7, 0x599DA0C3, 0x789EC931, 0x0163D6D4,
+0xF7BBA271, 0x5A755052, 0xFA27CE77, 0xD66ED111, 0x7A5BD527, 0x1B26B948, 0xAA11725B, 0x4A6AC4AD,
+0xDD8EA8DF, 0xF0C618D3, 0xF97999E5, 0x00C42C38, 0x8465BE06, 0x7B6912C9, 0x4AF1F070, 0x4F93EEB0,
+0x19A400FC, 0x0F8A6744, 0x7FD642F2, 0x3AE8F32F, 0x84501DDA, 0xB39068C6, 0x2A5BE1A6, 0x08E231F0,
+0xD52F4D13, 0x89326BE0, 0x3981DD90, 0xA986F547, 0xADF1B2E8, 0x6337CFB6, 0x595FCBC0, 0x2D774749,
+0x1D6C5FF1, 0xF403CE90, 0x16792051, 0xCE248A7D, 0x43E76774, 0xA85ED14A, 0xCFBDEB69, 0xDF559AF6,
+0xC3BF33D1, 0xF03BB486, 0x107D04B0, 0x9B9E9432, 0xE4873EC4, 0xFD7C2E89, 0xFA69FD26, 0xD04F8825,
+0xB9C4FF1F, 0x30F0826C, 0x825A8A34, 0x5EBB4ADC, 0xA71C9FF5, 0xE90ECF8A, 0xFEF3270F, 0x25612AB6,
+0xF8560C1F, 0x625A9ECE, 0x12B9B123, 0xA281D55C, 0x276F3B4A, 0x6CDE95D8, 0x7EE9F866, 0xDC769A4F,
+0xC590E1F4, 0xEA845796, 0x013AFD9E, 0x6F8E1A4D, 0xBEDF18E1, 0x2CC567BD, 0x56CBAE9D, 0xF81716E8,
+0x88834AAE, 0x1C67A0AE, 0xDDB4EB33, 0xF0F874E6, 0x4DE9C550, 0xCEAC73AD, 0x5C800FD8, 0x6A31B61A,
+0xA8B3A501, 0x73639607, 0xC95BAE
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..6e1acf5
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,43 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..e9bacd1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,70 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v9503.data b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
new file mode 100644
index 0000000..7fc8c95
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
@@ -0,0 +1,197 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+# Origin : FEC5g_DL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C, 0xE1952001, 0xB77912DE, 0x52E8BA16,
+0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403, 0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC,
+0xA40F8094, 0xABF43E46, 0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8, 0xBC563FD5,
+0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E, 0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854,
+0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB, 0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3,
+0xB8E4AFE9, 0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87, 0x3E146A49, 0x0391D092,
+0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024, 0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1,
+0xDCD211C3, 0xBF6B0B87, 0xA1624F47, 0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795, 0xEB08B437, 0x1A9899A0, 0x26484B82,
+0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B, 0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B,
+0xC01C79FA, 0x622B9FD8, 0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x6F4B
+
+output0 =
+0x6ED462FE, 0x29726470, 0xE49C87C1, 0x6594725E, 0x64C81AE1, 0xA30C91C2, 0x5B4261AB, 0x7A44E3A4,
+ 0xACBD3DC8, 0x319AF530, 0xF3B21EC1, 0xAC180011, 0x26319FF9, 0x5946FBFD, 0x6F31959A, 0x571501D9,
+ 0xFB1F62B7, 0xF19F6C36, 0x43436C4A, 0x8CA5F436, 0x18AF91B4, 0xD86ED79F, 0x8732D29C, 0x6CE3B559,
+ 0x2DEA712F, 0x52C2E21A, 0x5C4E884C, 0xD2F50500, 0x2140E848, 0xABE47066, 0x8AE3FC46, 0xF0298999,
+ 0x829FE184, 0x51D53B6B, 0x7546D03C, 0xF1CB22DA, 0xB9D6F966, 0x85660A1F, 0xC1296566, 0xB2122E16,
+ 0x2AA38C25, 0xD7AF18FC, 0x489BDDC5, 0x93183097, 0x4C694A3C, 0x40B325F8, 0xEE05DAB2, 0xA6E0C990,
+ 0x839A7753, 0x0251D207, 0x5E1EC6B5, 0xED523076, 0xD985E23A, 0x8CA88259, 0xB0EFF6D4, 0xA9D7749B,
+ 0x32CA6F0E, 0xAAA84E97, 0x0F137B83, 0xE73C3175, 0xA3940FDA, 0xD878B121, 0xFFC8D2EC, 0x95CB65AC,
+ 0xB1CBE446, 0x73520449, 0x7D929F16, 0x69D1873C, 0x85640C01, 0xF2228024, 0x0A5E0461, 0x58B0933A,
+ 0xD37E2375, 0x36CEECEF, 0xE57A48F8, 0x4A35B5C9, 0x016A16A0, 0x6F9BCF30, 0xEB7C3BD0, 0xB1AF27FE,
+ 0x9C389360, 0xA91F2142, 0x51E618D3, 0x5F045697, 0x654C6A49, 0x2E38E30C, 0x9E8F1E63, 0xF1B25686,
+ 0xA0CDFB02, 0xDAEC605D, 0xED910B79, 0xA8E1A341, 0xAD6BD0A3, 0x03BABB0D, 0x4059355C, 0x5ECB8646,
+ 0xFDD9E0C6, 0x69106FD2, 0x47BF857E, 0x740F6313, 0xAB15E1FF, 0x94B21225, 0x600FEDF3, 0x1EF83A71,
+ 0xCE6956EE, 0xE538FC7D, 0x47520BE0, 0xA1A20CF2, 0xCB452B91, 0xEACB9E3C, 0xBA242A34, 0x13C81868,
+ 0xA58AB271, 0x724B350D, 0x95131286, 0xCF74DD61, 0x1D0CF41B, 0x38D046D2, 0xB709708D, 0x4D479AA8,
+ 0x3CBF6817, 0xDF115777, 0xBE69B850, 0x071A2B4C, 0xF3246B56, 0x2881CBA0, 0xAE158E87, 0x36538CB0,
+ 0xEF879197, 0xDBA9C1C7, 0x4EF7235A, 0x56120670, 0xC22DBEC7, 0x7071A05C, 0x376ADBD4, 0x5DD586FC,
+ 0xA638A621, 0x6D49A92A, 0x66F0C925, 0x023FC9DE, 0xF7CA1D36, 0xAF19A18B, 0x2A787792, 0x518938D7,
+ 0x25DE7B4A, 0xDEBD9010, 0x9683558D, 0x9C5694C7, 0x8B2558D0, 0x790CD121, 0x0A35C0D8, 0xCD4FBCED,
+ 0xB89F3275, 0x64A49655, 0xED7992A1, 0xAFB0A4D0, 0x29A9EB1B, 0x9244B2C0, 0x2CD88F45, 0x4AA1E98E,
+ 0x8E32CC3C, 0x8BE5DC7B, 0x759C8B24, 0x8AA119BE, 0x9CFEA065, 0x071F86FD, 0xB83F8181, 0x604FF2FB,
+ 0xAACDC394, 0x0BCC72F5, 0xE9C0CB19, 0x56EAE15F, 0xD33B8DEF, 0x01A1B007, 0xBED7C1A3, 0x18788E49,
+ 0xB565EA30, 0xC269F619, 0x1CF1B024, 0x067E9F59, 0x78E61AB4, 0x3D46CFBB, 0xE58E910B, 0x8E7ACF53,
+ 0x1EB9C15D, 0x4E3C43BF, 0xEF3D8F20, 0x5CC0A030, 0xE10AE4E7, 0xABE24941, 0x9A0C4046, 0x24E090CF,
+ 0x3248C414, 0xAF76560F, 0xCD1B106C, 0x70438AD4, 0x3463D8B0, 0xD85860FE, 0xFCDF0D57, 0xA2DBC09E,
+ 0x44C728C1, 0xD8FEE73E, 0xB1E6B4A5, 0xD0CC95CD, 0xCCEF186F, 0x70AC5D98, 0x57D21267, 0x8543F446,
+ 0x15C8EAA9, 0x0DD357D4, 0x4CE9C090, 0x4E91FADF, 0xE0658E27, 0xFF7AA5D6, 0x176ED723, 0x70D009CB,
+ 0x416ADBAA, 0x1C45865D, 0x105F3A0E, 0x14730450, 0xD0FA1AC9, 0xB76F268C, 0x7B075289, 0xA9455796,
+ 0x65E02F3E, 0xB74521F2, 0xF6CAA6C7, 0x94ABFDAD, 0x1E6D1087, 0xC25A9257, 0x87FAF9A4, 0x5184A0FA,
+ 0x240023D7, 0x7AE0ED45, 0x06E0A838, 0xBB018F31, 0x0FA836D5, 0x09CF6AEC, 0x9BC4F2B2, 0xAE92D5BA,
+ 0xE724036E, 0xE5606DDE, 0x631448F9, 0xFD59B782, 0xF17052E4, 0x66EA4C50, 0xF72C1768, 0x5C24ECEC,
+ 0x6B01B118, 0x89F8A3AB, 0x465FF462, 0xC3896A00, 0xFEC06004, 0xE2DFC70C, 0x3ACF338F, 0x1552E9D0,
+ 0x9F699B77, 0x60AC6D29, 0xBF47FD38, 0x826B0CA8, 0x0515A7AC, 0x1380A222, 0x7D054EA0, 0x3D1BCEC0,
+ 0x21AB6CF3, 0xA889E915, 0xF09D9756, 0x08BA519A, 0xCFFB6BD3, 0x7D5EF4F9, 0x34A0E942, 0x8569A327,
+ 0xFDDC5269, 0x60D8D543, 0x88B34B88, 0x50DEAA10, 0xD0563E1F, 0x80CD122B, 0xDC11607F, 0xCD9D7E05,
+ 0xC0F3510E, 0x414A7545, 0xB8211557, 0x103E6F53, 0x08A47672, 0x04D9C391, 0x3281F25C, 0x7526AAD2,
+ 0x3C89B43B, 0xBA767E59, 0xA2788EAC, 0x5EF9DF3D, 0x8F72BBE6, 0xC4B52A2B, 0xE81A80E9, 0xCD6B24D5,
+ 0x4F934751, 0xA3FCC2B5, 0x1C4FB12A, 0x7C363E45, 0x237CB63A, 0x1F26D6FD, 0xAAF3FE61, 0x48D3B3A8,
+ 0xA2A77A81, 0xADCF4AB4, 0xDF94F9B4, 0x465EA838, 0xCE4BA15C, 0x75826F5A, 0xD537E32C, 0x85F8FECD,
+ 0xD07CAB1C, 0x34F91310, 0xC40B36CA, 0xCCE0297E, 0xFB276610, 0x67DF82EC, 0x8BB58FAA, 0xCEA3BDC2,
+ 0x02B21D68, 0xCC1F8A6C, 0xF902AF4E, 0x271828EA, 0x9028298A, 0xB5BF0156, 0x5A3B3188, 0x6CCB6806,
+ 0xE2F3A4A2, 0x3B776BB9, 0x66D01790, 0x133F2414, 0x1445FE7D, 0x5CC79E5B, 0xB95FD30F, 0x50971FC5,
+ 0x8D6AFECA, 0x3FB2427C, 0xC1A980EC, 0x54C9F2AF, 0x0F509DF3, 0x1B950AA4, 0x1E5B1596, 0x93E974B9,
+ 0x71D51A0F, 0xC973F4DD, 0x79BF62A6, 0xC72F58F9, 0xCAD478D6, 0x0F7C36C7, 0x05D08481, 0x43958D67,
+ 0x93F11E1A, 0xDCDDCE62, 0xB457AC62, 0xD4A98268, 0xA793471A, 0x7AB637E0, 0x1B9BA86C, 0x456B5EF7,
+ 0xD2E75711, 0xF95E6BCD, 0xD3043467, 0x056F1621, 0x21D58D4E, 0x0C9EF57E, 0x96B645B1, 0xF5A80340,
+ 0xBD9A4C7A, 0x4D94A305, 0x59D0F9B4, 0x113F56F9, 0xE0A948B5, 0xBF982299, 0xA05D1EA1, 0xE9C50F8A,
+ 0xAF6B8F04, 0x6B05485E, 0x17DD458A, 0xFB819464, 0x5CE2F61F, 0xECF95F48, 0xA26CFBA2, 0x6A0FD00F,
+ 0xA7A2CB0F, 0xFE10768D, 0x4A258743, 0xBBF2C41A, 0xF519DBEE, 0x9DA676B6, 0xE89449C9, 0x3E13EBE5,
+ 0x4A4A42A5, 0x42663182, 0xDAAF85AB, 0xCC671BCB, 0x217491EE, 0xDCC9B6F2, 0xE1A3A7EA, 0x7B13F2F9,
+ 0xCFFCBC9F, 0x3D8FF387, 0x71ABA888, 0x2D3FE4C1, 0x081AB3DC, 0xBF21BA4B, 0x4ACE0F00, 0x6F5AB592,
+ 0xD328F08C, 0x542388E9, 0xE7A4157A, 0xE8532856, 0xE8DC528E, 0x3F2356AE, 0x76867882, 0xEC11E6D0,
+ 0x0C2DD257, 0x40A7C558, 0x354F885C, 0x2A2E0757, 0x6C0A6D95, 0xE0C23A09, 0xD1F32FF7, 0x7E27842E,
+ 0x3CDFD97E, 0x2F6807FB, 0xDBED07BD, 0xA039645B, 0x324B0955, 0x73620D27, 0x0C47D75F, 0x511BD37A,
+ 0xE80C4C44, 0xA3D77AFE, 0x058B503D, 0x391AC187, 0xD7425F0B, 0x93876765, 0x10CADF4C, 0xC4F3539A,
+ 0xF17B776C, 0x017BDEFA, 0x74F4651F, 0x65FBC1E5, 0xF55CC6B6, 0x1752401A, 0x85FB6434, 0xB8FD0F06,
+ 0x4D0D80FF, 0x0DD8438D, 0x1C5844B7, 0x31ECF66B, 0xF8A8B528, 0xA9BE0373, 0xC401C7FC, 0x3BA1FFF4,
+ 0x63946BBD, 0x82514893, 0x9CE303D6, 0x51EA2484, 0x054CACA2, 0x3F812B32, 0x0F3C603F, 0x4B3D86B6,
+ 0xD33F5950, 0x3340BFC0, 0x47CEB79D, 0x1CAB5D3C, 0x74897EB5, 0x1C320D6D, 0x8F0480D2, 0x1384331B,
+ 0x8363A7B3, 0xA5439504, 0x0E06AA80, 0x4BBFF55C, 0x470094F3, 0x8DE8E9AA, 0xABA72796, 0x4333B263,
+ 0x6FEF04EB, 0xF921C722, 0x9599B4C8, 0xBFEFF55A, 0xF89AA502, 0xDFE85218, 0x0EE15930, 0x8B2AA7F8,
+ 0xDDB03823, 0x7427A3C2, 0x8E4AF556, 0x66A9640E, 0x2EA271AE, 0xFC5BB50C, 0xDC50B432, 0xF78BB3D6,
+ 0xA06156DE, 0x5A7D7A40, 0x40BD74BF, 0x882CC19B, 0xDB2B6143, 0x5532686C, 0xA6D65320, 0x6AB5B32A,
+ 0x34129535, 0x9E41D92F, 0x3D86A085, 0xA27DE0C1, 0x6FFBEC11, 0x77A4BE81, 0xCE1DF886, 0x318E96BA,
+ 0x82C84B84, 0x40B9874F, 0x39F9F9A9, 0x21E0AACB, 0x237FC858, 0xFF700E2D, 0xA840518D, 0x5E5ED583,
+ 0x7B11CB4E, 0x99733B7F, 0xFFAAF7A9, 0xB8CB13B7, 0xE67AE45C, 0xFFDA2FC2, 0x47D08BD7, 0xD68BACF6,
+ 0xDAAE30ED, 0x95735CAF, 0xF896B165, 0x395BC94E, 0xADF803B0, 0x76B82F4D, 0xF312DD33, 0x0DD0A49D,
+ 0x0852B35E, 0x4DF14366, 0xBA01C779, 0x1415A8FA, 0xDC10F525, 0x1CE06D80, 0x953089E6, 0x933C3EE5,
+ 0xC18B1022, 0xFAD11D71, 0xA1EA92BF, 0x2AE61798, 0x63D0C0CF, 0x1CF8CA34, 0xDF748AFB, 0xF0FDE897,
+ 0x26FC4399, 0xE563FFC5, 0xE6AFE218, 0x5EE3254B, 0x76565E08, 0x70F5EFBE, 0xBD66AC9A, 0x90853CB1,
+ 0xA002CE55, 0xAFE263F4, 0x804DA5A5, 0xBB971F95, 0x775BDE46, 0xEDA15B5F, 0x3D5A2CFE, 0x6D9FE953,
+ 0xE84541F5, 0x6574FB29, 0xFD3ADC69, 0x1BAEDDED, 0xE3F810C2, 0x87CC8D7C, 0xDC23F894, 0x7635A6DC,
+ 0x294E131B, 0x62FA4471, 0x83D3870E, 0xF82B9324, 0x8A493E04, 0xA8FCDF75, 0x20583A80, 0x5A94424E,
+ 0x18CED906, 0xB417F24A, 0x47089341, 0x62A432C0, 0xFDC17DFD, 0x5B89C6D2, 0xC8C8ED37, 0xD44D38B1,
+ 0x9A6DFF2C, 0x7C5ECB65, 0x76814C50, 0xB3D56A33, 0x5DF124F8, 0xDB92A5D9, 0x210F2E0D, 0x50FFFF1B,
+ 0x1B7ECD90, 0x481ED2FE, 0x094DA8E8, 0xF111F8FA, 0xAC7872DF, 0x4B8FE240, 0xA7CF01FD, 0x72AFAF1B,
+ 0x27BE7F7E, 0xE5F42B34, 0x02807296, 0x325F9CF6, 0x97EE1C92, 0xD5E6F65C, 0x7EA2490F, 0x666E3451,
+ 0xB17E6A43, 0x1AFBE46E, 0x8D2B871B, 0xD52A1A9E, 0x41EBA711, 0x9D4B906B, 0xAEB5A2F6, 0x7EC530E7,
+ 0x063FC87E, 0x48830732, 0xE5EC2B25, 0xA17B0F26, 0x2C63A878, 0x7A1362A1, 0x68B4DE31, 0x6EC14B7E,
+ 0xE65C3B05, 0x8EB452EC, 0xB6DD94CA, 0x8DC592C5, 0x402EA8BE, 0x689F131B, 0xDA3A54D1, 0x41D264AC,
+ 0xAD150ECF, 0xD7750790, 0xBD46E2A0, 0x2DC97F87, 0x2476F6AE, 0x28F4778E, 0xB4B9E75A, 0xE5532AD6,
+ 0xE58A7485, 0xDFDD2553, 0x779D3F91, 0xD89F3033, 0x42BB4152, 0x2F6EFB01, 0xF72C43BB, 0xF1DB8663,
+ 0x5BA625E2, 0x17180017, 0x151F03B3, 0x7FDA9772, 0x1DEB2F8D, 0x178DE5EE, 0xDFF10ACA, 0x2DC29F2A,
+ 0xF2797346, 0xC298535D, 0xB56C1D35, 0x6389138B, 0x54B732AE, 0x3FAF9958, 0x3BFE3E52, 0xA311D83E,
+ 0x50E7B0BD, 0xC28F97B4, 0x8C1FAAB7, 0xD22BD453, 0x4E6A4D65, 0x626B6251, 0x1F547F6C, 0xEF8105A0,
+ 0xB7A062B6, 0xE1325CC7, 0x8207E7A2, 0xB0A9E0D6, 0x097B78C1, 0xC41D4176, 0x13DB573C, 0x5291E598,
+ 0xF4D1AFB4, 0xA93FE970, 0x673042D8, 0xCC98A35A, 0xCEBD4AE5, 0x47B8BB39, 0x5F8A294E, 0x37FDA881,
+ 0x9E81D5BD, 0x47691BD1, 0xFB92FBF8, 0x24AA898D, 0x0D0B5B29, 0xE5E11928, 0x7D356637, 0xC4525D0E,
+ 0x72AFE781, 0xEBE53FCD, 0xBCBB299C, 0xC40B26D3, 0x1C049A63, 0x4621C7F8, 0xD3337531, 0xF5CCAE80,
+ 0x5D3D0BB7, 0x2246BD17, 0xF158D4F9, 0xE5CB58A2, 0x07F5F1E1, 0x9D420346, 0x952C186B, 0x9DBB2227,
+ 0x203D1639, 0xC022D8AD, 0x7A91F3DD, 0x9326CB7B, 0x2971F3FA, 0x7EF8C14B, 0xB7B468DA, 0x840A9104,
+ 0x6F811C48, 0xC0DAC40B, 0x68D75281, 0xB7DCB2D8, 0x9A216C54, 0xEE710DB9, 0x54ADDAC6, 0xF6F71ECF,
+ 0x6F1E0D83, 0xDE5ECA0D, 0xEA40DE93, 0x962D60E7, 0x6B575E29, 0xFFCC6677, 0x0D879692, 0x728CBE24,
+ 0x9011B3F8, 0xAB260F9E, 0x5D71E2CA, 0x501F6613, 0x5F16EE75, 0x0D33E974, 0x8865BBE8, 0x10495EA6,
+ 0x393032AB, 0x6C7F4A61, 0xB685D152, 0x29D429A4, 0x24CA7E33, 0xCD26F3F2, 0x78D85078, 0x0BA90BA3,
+ 0x360CB744, 0xDF999168, 0xB60B3644, 0x39EED49A, 0x4A794E4A, 0x3B6715BF, 0x92D35DC9, 0xF640ADB6,
+ 0xFA96EF3D, 0x0DC22AD1, 0x48262E68, 0x6F620F37, 0x6B29E242, 0xC6FBEEB6, 0x3034A0D9, 0x122EF44F,
+ 0x7EEF61DF, 0xF3854D20, 0x0F84C1DB, 0x0DE504BF, 0x8AE763ED, 0x369AD35F, 0x8BA7B643, 0x44933BB5,
+ 0x49E96357, 0x4C7F9884, 0x2A5BF491, 0xBB8DCDC2, 0x3873C5F5, 0x0DB1AB26, 0x09FF188A, 0x93DE180D,
+ 0xBA757CAC, 0x06AFFBE6, 0x12B37F82, 0x150D3234, 0xC2C0AB1E, 0xC8B4D8F3, 0x65B7BB96, 0xBBF951B8,
+ 0xC4A03C44, 0x7E2FF9B6, 0x86592827, 0xECE0BE1B, 0x0DB32865, 0x5FC2CD73, 0x34AD2D16, 0x3B2057A7,
+ 0xC32C663F, 0xA85CD1EB, 0xEBD5BCF3, 0x439DC2FF, 0x93379CAE, 0x99273984, 0x3659A11F, 0xD5FF53BD,
+ 0x38704C43, 0x3D782532, 0xD7306729, 0x420E909F, 0x4840C5F3, 0xDA80DF8D, 0x53395E04, 0xEF690DCF,
+ 0xF9738931, 0xE91F7065, 0x5EB901A8, 0x176C6A2C, 0x25D062AE, 0xE4CCCB95, 0x93C87277, 0xF8FF911C,
+ 0xD7AE6706, 0xE704A40E, 0x38BCF64B, 0xDDFFF9FD, 0xD1BDE381, 0xA4313A0B, 0x48DDA520, 0xD064D1E3,
+ 0xDBFD61EC, 0x7EA87E9A, 0xF894AAFD, 0xB5565368, 0x2C34933D, 0xF0F50DE9, 0xF91EB25C, 0xE3EC3B8E,
+ 0x5E9409A7, 0xB2A9D39A, 0xB6B19F3F, 0xA6685DC9, 0xCAFC5B74, 0x4CC15F7F, 0x114E5709, 0x31B6E0EB,
+ 0x8CDAA5C4, 0xF5ABD631, 0x12A4A9C0, 0x969011BE, 0x9AB39E96, 0x0D406569, 0x8AE25103, 0x68474C26,
+ 0x9E8D006F, 0x9C8E4F0B, 0x314630FD, 0x2F30B254, 0xFE88FCF4, 0x941FBE2D, 0xC03B55A3, 0xEE474898,
+ 0xEC9B3BD2, 0xDDE00C4B, 0x7F192B54, 0xA25A0DC1, 0xDCF18F59, 0x55F674B4, 0xF6734A46, 0x92B7A7E2,
+ 0xCEDA18D8, 0x90EA738E, 0x7C98FEE8, 0xFC3DE7ED, 0x4075569F, 0x8989B676, 0x326B34DA, 0x52AC749C,
+ 0xAF71ACF8, 0xDC1F65F4, 0x408459F9, 0xD46B650F, 0xFAEDB779, 0xBC0C6EDB, 0xF68DB879, 0x40071FCD,
+ 0x2D01AC86, 0x7952D58A, 0x4F7A42BA, 0xD5C9306C, 0xFA7CC252, 0x48285F83, 0x51CD6BC3, 0x8212BC4D,
+ 0x53828B06, 0x8986B36F, 0x6E00951C, 0x6505074F, 0xAB3AF4CC, 0x12D92810, 0x44F4D0B5, 0x0D7DBCDD,
+ 0x152A5968, 0xA92C4ECA, 0x6795E17F, 0xD02C875E, 0xA4B5A04C, 0x2F0C4295, 0x72678451, 0x59B87A4C,
+ 0xB3AD2988, 0x7B717173, 0x6D0EC6EB, 0xF73B4FC7, 0x645D56E0, 0xBC73769E, 0x9A83ED5C, 0xCE5B332A,
+ 0x151A4D6C, 0xDEB26C33, 0xBA7CFEA9, 0x0FB2D875, 0xE0045E66, 0x9DB0072A, 0x5CFB3C42, 0x8C3FEFD5,
+ 0x4E7CB65C, 0x2905EC79, 0xA2F6C308, 0x296A6794, 0xB589571E, 0x4638BC8F, 0x964B8B40, 0xBE27615F,
+ 0x4E95C30C, 0x2B56A6A8, 0x4BC50BC3, 0x497BB78B, 0x8860A6CC, 0x80830DB7, 0x9D726E3A, 0xE63600FD,
+ 0x7A68F80B, 0x1C5CCCA0, 0x1784B6A4, 0xBCA7EF08, 0x425ABF74, 0x3663AD11, 0x72F2AEC0, 0xA4A940F0,
+ 0xBBC08817, 0x5C158691, 0x7C1ECC0E, 0x1818BB5B, 0x0DE17D9F, 0x350D4BB6, 0xAC21F0FB, 0xB913C7B0,
+ 0xE9DC26F6, 0x25B995C5, 0x0D2E9E6F, 0xD39C93A8, 0x1C775CED, 0xF1E69A7D, 0x0025310F, 0x782BBDF8,
+ 0xFD3E83E4, 0xB5DD602E, 0x1CD9044C, 0x2AFC3405, 0x79E32E1E, 0xB59B4A79, 0x4609271E, 0x1C5E4D7A,
+ 0xA74D0009, 0x319A07E9, 0xCAC3A6FF, 0x8B515C07, 0xE80FE11D, 0x1D59CF05, 0x38F946AE, 0x6324D94E,
+ 0x313D3FE8, 0x310AF64C, 0x3CDE2571, 0x0644DA97, 0xEADBF286, 0x7B5DACA1, 0x8D5D3A54, 0x1376A003,
+ 0x51774091, 0x562A7891, 0xC246A9FA, 0x82C1C05F, 0x0D662D24, 0xAEDDA534, 0x5A96ED06, 0x2C055326,
+ 0xB0F2F5B0, 0x21C1F0F6, 0x6C39F1DE, 0xDE48E8FE, 0xB5CD1538, 0xC4E356AC, 0x1B24FE63, 0xF36D1426,
+ 0xB8B827D2, 0x1576F620, 0x3F49589E, 0xC438975C, 0x64880EDA, 0x7C322884, 0xD3978FBD, 0x4787B61E,
+ 0x2E192772, 0x0584B589, 0x0EAAA684, 0x6D81DE51, 0x63717598, 0x08A48B4D, 0x2DF88EC5, 0xA647285C,
+ 0xFC81F7AE, 0x10E48D34, 0x963F5C91, 0x8F592492, 0xC79010B8, 0x8A6D4936, 0x4759E38B, 0xACFC5255,
+ 0x0C9D02B7, 0x1B52A34E, 0x3B0A60A1, 0x1DB4E220, 0x23DCD523, 0xEA42AD41, 0x9B3CB86B, 0x6C503824,
+ 0x41DC835D, 0x22A311A5, 0x7B7AD03E, 0x6AFA5972, 0x3E506D92, 0x04FED79C, 0xCE801EEF, 0x7BA17C52,
+ 0x3AFFBB6A, 0x96A23185, 0x74316B7B, 0x11D330F6, 0x8484E528, 0xB643261D, 0xCC076540, 0x9116E092,
+ 0x4B6D5634, 0xC9532DCB, 0x0CBBB981, 0xE8D8E41F, 0x7573408A, 0x684F202D, 0x9A92649E, 0xF2CF0C39,
+ 0xF6C540AE, 0x29368636, 0x6A5BD7FB, 0x5044B256, 0x35AEC028, 0x8C12E363, 0xE0A2FE6D, 0x9E8EB149,
+ 0x2ED1CF45, 0x54A9880B, 0x4E295354, 0x83730F2E, 0x279AD027, 0x7051921F, 0xC4E219AC, 0x8B540A9B,
+ 0x947E9DF5, 0x28B61847, 0xC4E32434, 0xF9227028, 0x3D489511, 0xD5A41195, 0xA03EE1BD, 0xD761441F,
+ 0x402F7502, 0x5AB68BEF, 0x5555B735, 0x5918623F, 0x983735E9, 0xE332F1B8, 0x48D83C28, 0x81318EE2,
+ 0xABB8AA53, 0x01F0C3CE, 0xB4291A62, 0x89344F27, 0x5FDEEA6C, 0xE6D22F86, 0x9988C7DC, 0x051A1432,
+ 0xE11867BC, 0xEFA49EEF, 0x48AADD79, 0x33633BF3, 0xA56B57B4, 0xA253AB9F, 0x7FC8340A, 0xAB73B132,
+ 0xF1DFB6CC, 0xC5F02EDA, 0x426782CD, 0xF6648D35, 0xB4AB88A0, 0x9BA7B785, 0x67C03341, 0x22612D33,
+ 0xD32ED490, 0xAAA56F6A, 0x37ECD8CD, 0x518E8140, 0x7390301C, 0xB33A9E62, 0x244220D4, 0xD88AE216,
+ 0x9752DEEA, 0xB8A22F50, 0xBFB221CB, 0xDB4D57A0, 0x02D39A0D, 0x8C311F00, 0x1192748C, 0xB9505446,
+ 0x469C1E7B, 0x3AEFF9A6, 0x7CD5ABE8, 0xD849E5F5, 0x1E2FB30A, 0x18879BD8, 0x6DDD966E, 0xC9BD4B8F,
+ 0xCEEBCCD9, 0x0D881346, 0x20
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-07-01 11:14             ` Akhil Goyal
@ 2019-07-01 18:14               ` Chautru, Nicolas
  2019-07-01 19:17                 ` Thomas Monjalon
  0 siblings, 1 reply; 95+ messages in thread
From: Chautru, Nicolas @ 2019-07-01 18:14 UTC (permalink / raw)
  To: Akhil Goyal, dev; +Cc: thomas, Yigit, Ferruh, Mokhtar, Amr

Hi Akhil,

>> 
>> Update of the release notes for BBDEV features add and extension of 
>> ABI in previous commit.
>> 
>> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
>> ---
>>  doc/guides/rel_notes/release_19_08.rst | 15 +++++++++++++++
>>  1 file changed, 15 insertions(+)
>> 
>> diff --git a/doc/guides/rel_notes/release_19_08.rst
>> b/doc/guides/rel_notes/release_19_08.rst
>> index 8c3932d..35d3a09 100644
>> --- a/doc/guides/rel_notes/release_19_08.rst
>> +++ b/doc/guides/rel_notes/release_19_08.rst
>> @@ -88,6 +88,19 @@ New Features
>>    * Added multi-queue support to allow one af_xdp vdev with multiple netdev
>>      queues
>> 
>> +* **Added a FPGA_LTE_FEC bbdev PMD.**
>> +
>> +  Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA 
>> + PAC  (Programmable  Acceleration Card) N3000.  See the  
>> + :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver.
>> +
>> +* **Updated TURBO_SW bbdev PMD.**
>> +
>> +  Updated the ``turbo_sw`` bbdev driver with changes including:
>> +
>> +  * Added option to build the driver with or without dependency of external
>> +    SDK libraries.
>> +  * Added support for 5GNR encode/decode operations.
>> 
>>  Removed Items
>>  -------------
>> @@ -140,6 +153,8 @@ ABI Changes
>>     Also, make sure to start the actual text at the margin.
>>     =========================================================
>> 
>> +* bbdev: New parameters added to support 5GNR operations.
>> +
>> 
>>  Shared Library Versions
>>  -----------------------
>> --
>> 1.8.3.1
>
>Release note changes should be part of the same patch which is adding that change.

No problem, I am pushing an updated serie :  https://patches.dpdk.org/project/dpdk/list/?series=5259

>One more thing, if there is a change in ABI, should you also increment the bbdev ABI version?

The bbdev ABI is still marked as __rte_experimental hence I don't believe we have yet to increment it. 

>Please also send a rebased version of your patchset, so that builds can be verified by CI. The dependent patches are applied on the sub-tree.

OK, I did this on the serie above. Note that the previous was already verified with CI since I kept the dependency within the previous serie. Still cleaner now, you should just have to apply the serie as is now. 

Thanks!
Nic






^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification
  2019-06-30 23:03             ` Mokhtar, Amr
@ 2019-07-01 18:18               ` Chautru, Nicolas
  0 siblings, 0 replies; 95+ messages in thread
From: Chautru, Nicolas @ 2019-07-01 18:18 UTC (permalink / raw)
  To: Mokhtar, Amr, akhil.goyal, dev; +Cc: thomas, Yigit, Ferruh

Hi Amr, 

>> -----Original Message-----
>> From: Chautru, Nicolas
>> Sent: Monday 24 June 2019 03:53
>> To: akhil.goyal@nxp.com; dev@dpdk.org
>> Cc: thomas@monjalon.net; Yigit, Ferruh <ferruh.yigit@intel.com>; 
>> Mokhtar, Amr <amr.mokhtar@intel.com>; Chautru, Nicolas 
>> <nicolas.chautru@intel.com>
>> Subject: [PATCH v4 09/10] test-bbdev: test vectors for 5GNR 
>> verification
>> 
>> Adding LDPC vectors for UT verification, coverage, and profiling for 
>> 5GNR encode/decode operations.
>> 
>> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
>> ---
>
>> +++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
>> @@ -0,0 +1,354 @@
>> +# SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2019 Intel 
>> +Corporation # Origin : FEC5G_UL_1/xxxx
>
>Probably a new line between Origin and he license header helps to avoid any misconception that his somehow relates to the copyright header.
>Also, don't understand its purpose here?
>

This was for internal traceability so that to be able to regenerate these vectors if required. 
Still I am removing these from the vectors headers in the updated serie since this can lead confusion. 

Thanks
Nic

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-07-01 18:14               ` Chautru, Nicolas
@ 2019-07-01 19:17                 ` Thomas Monjalon
  2019-07-01 20:27                   ` Chautru, Nicolas
  0 siblings, 1 reply; 95+ messages in thread
From: Thomas Monjalon @ 2019-07-01 19:17 UTC (permalink / raw)
  To: Chautru, Nicolas; +Cc: Akhil Goyal, dev, Yigit, Ferruh, Mokhtar, Amr

01/07/2019 20:14, Chautru, Nicolas:
> 
> >One more thing, if there is a change in ABI, should you also increment the bbdev ABI version?
> 
> The bbdev ABI is still marked as __rte_experimental hence I don't believe we have yet to increment it.

ABI version and experimental state are two different things.
I think we should upgrade the version even for experimental libraries.




^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-07-01 19:17                 ` Thomas Monjalon
@ 2019-07-01 20:27                   ` Chautru, Nicolas
  2019-07-01 20:38                     ` Bruce Richardson
  0 siblings, 1 reply; 95+ messages in thread
From: Chautru, Nicolas @ 2019-07-01 20:27 UTC (permalink / raw)
  To: Thomas Monjalon, Richardson, Bruce
  Cc: Akhil Goyal, dev, Yigit,  Ferruh, Mokhtar, Amr


>-----Original Message-----
>From: Thomas Monjalon [mailto:thomas@monjalon.net] 
>Sent: Monday, July 1, 2019 12:18 PM
>To: Chautru, Nicolas <nicolas.chautru@intel.com>
>Cc: Akhil Goyal <akhil.goyal@nxp.com>; dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; Mokhtar, Amr <amr.mokhtar@intel.com>
>Subject: Re: [PATCH v4 10/10] doc: announce bbdev changes
>
>01/07/2019 20:14, Chautru, Nicolas:
>> 
>> >One more thing, if there is a change in ABI, should you also increment the bbdev ABI version?
>> 
>> The bbdev ABI is still marked as __rte_experimental hence I don't believe we have yet to increment it.
>
>ABI version and experimental state are two different things.
>I think we should upgrade the version even for experimental libraries.

Thanks Thomas. 

Bruce, Ferruh can you comment whether bumping ABI version is required for __rte_experimental API? Arguably the documentation may be interpreted either way : https://doc.dpdk.org/guides-18.08/contributing/versioning.html 

In the specific case of bbdev change in that serie, note that only new operations (for 5GNR signal processing) and related symbols are being added. 
Previous releases included BBDEV API changes without updating ABI version number ( librte_bbdev.so.1). 

Thanks for letting me know, in both cases we may make it more explicit on the versioning page. 
Nic


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes
  2019-07-01 20:27                   ` Chautru, Nicolas
@ 2019-07-01 20:38                     ` Bruce Richardson
  0 siblings, 0 replies; 95+ messages in thread
From: Bruce Richardson @ 2019-07-01 20:38 UTC (permalink / raw)
  To: Chautru, Nicolas
  Cc: Thomas Monjalon, Akhil Goyal, dev, Yigit, Ferruh, Mokhtar, Amr

On Mon, Jul 01, 2019 at 09:27:56PM +0100, Chautru, Nicolas wrote:
> 
> >-----Original Message-----
> >From: Thomas Monjalon [mailto:thomas@monjalon.net] 
> >Sent: Monday, July 1, 2019 12:18 PM
> >To: Chautru, Nicolas <nicolas.chautru@intel.com>
> >Cc: Akhil Goyal <akhil.goyal@nxp.com>; dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; Mokhtar, Amr <amr.mokhtar@intel.com>
> >Subject: Re: [PATCH v4 10/10] doc: announce bbdev changes
> >
> >01/07/2019 20:14, Chautru, Nicolas:
> >> 
> >> >One more thing, if there is a change in ABI, should you also increment the bbdev ABI version?
> >> 
> >> The bbdev ABI is still marked as __rte_experimental hence I don't believe we have yet to increment it.
> >
> >ABI version and experimental state are two different things.
> >I think we should upgrade the version even for experimental libraries.
> 
> Thanks Thomas. 
> 
> Bruce, Ferruh can you comment whether bumping ABI version is required for __rte_experimental API? Arguably the documentation may be interpreted either way : https://doc.dpdk.org/guides-18.08/contributing/versioning.html 
> 
> In the specific case of bbdev change in that serie, note that only new operations (for 5GNR signal processing) and related symbols are being added. 
> Previous releases included BBDEV API changes without updating ABI version number ( librte_bbdev.so.1). 
> 
> Thanks for letting me know, in both cases we may make it more explicit on the versioning page. 
> Nic

I think there may be some misunderstanding here, so long as no existing
APIs are changed or removed, we don't bump the ABI version.

/Bruce

^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC
  2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
  2019-06-30 22:31             ` Mokhtar, Amr
  2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
@ 2019-07-03 15:24             ` Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
                                 ` (7 more replies)
  2 siblings, 8 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

v6 update: minor fix for compilation issue reported on CI
v5 update: rebase and squashing release note update with related change. 
v4 update: cosmetic changes reported by ci/checkpatch

This set enables specifically bbdev to support 5GNR operations (previously only LTE specific) and to add the related support to turbo_sw PMD driver, test framework and documentation.

Nicolas Chautru (7):
  bbdev: renaming non-generic LTE specific structure
  bbdev: extension of BBDEV API for 5G FEC
  docs/guides: updating bbdev API for 5GNR operations
  baseband/turbo_sw: extension of turbosw PMD for 5G
  docs/guides: updating building steps for BBDEV PMD
  test-bbdev: update of bbdev test-app for 5GNR
  test-bbdev: test vectors for 5GNR verification

 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/main.c                              |   48 +-
 app/test-bbdev/main.h                              |    6 +-
 app/test-bbdev/meson.build                         |    3 +
 app/test-bbdev/test-bbdev.py                       |    7 +
 app/test-bbdev/test_bbdev.c                        |   12 +-
 app/test-bbdev/test_bbdev_perf.c                   | 1233 ++++++++++++++++++--
 app/test-bbdev/test_bbdev_vector.c                 |  513 +++++++-
 app/test-bbdev/test_bbdev_vector.h                 |   16 +-
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  353 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  684 +++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  902 ++++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  745 ++++++++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  745 ++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   48 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   74 ++
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  255 ++++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1215 +++++++++++++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   41 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  151 +++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   43 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   70 ++
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  197 ++++
 app/test-bbdev/turbo_enc_default.data              |    2 +-
 config/common_base                                 |    1 +
 doc/guides/bbdevs/turbo_sw.rst                     |   42 +-
 doc/guides/prog_guide/bbdev.rst                    |  505 +++++++-
 doc/guides/rel_notes/release_19_08.rst             |   17 +-
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c       |  103 +-
 drivers/baseband/turbo_sw/Makefile                 |   15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c   |  714 +++++++++++-
 drivers/baseband/turbo_sw/meson.build              |   10 +
 lib/librte_bbdev/rte_bbdev.c                       |   22 +-
 lib/librte_bbdev/rte_bbdev.h                       |  138 ++-
 lib/librte_bbdev/rte_bbdev_op.h                    |  585 ++++++++--
 mk/rte.app.mk                                      |    8 +-
 38 files changed, 9178 insertions(+), 396 deletions(-)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-07  8:43                 ` Thomas Monjalon
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 2/7] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
                                 ` (6 subsequent siblings)
  7 siblings, 1 reply; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Renaming of the enums and structure which were LTE specific to
allow for extension and support for 5GNR operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 app/test-bbdev/test_bbdev_vector.c               |   4 +-
 app/test-bbdev/test_bbdev_vector.h               |   2 +-
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c     | 103 ++++++++++++-----------
 drivers/baseband/turbo_sw/bbdev_turbo_software.c |  39 +++++----
 lib/librte_bbdev/rte_bbdev_op.h                  |  26 +++---
 5 files changed, 89 insertions(+), 85 deletions(-)

diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e4f68e2..e149ced 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -298,9 +298,9 @@
 	op_data = vector->entries[type].segments;
 	nb_ops = &vector->entries[type].nb_segments;
 
-	if (*nb_ops >= RTE_BBDEV_MAX_CODE_BLOCKS) {
+	if (*nb_ops >= RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 		printf("Too many segments (code blocks defined): %u, max %d!\n",
-				*nb_ops, RTE_BBDEV_MAX_CODE_BLOCKS);
+				*nb_ops, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 		return -1;
 	}
 
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index 476aae1..c85e94d 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -46,7 +46,7 @@ struct op_data_buf {
 };
 
 struct op_data_entries {
-	struct op_data_buf segments[RTE_BBDEV_MAX_CODE_BLOCKS];
+	struct op_data_buf segments[RTE_BBDEV_TURBO_MAX_CODE_BLOCKS];
 	unsigned int nb_segments;
 };
 
diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
index 19e7689..7e05b94 100644
--- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
+++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
@@ -607,9 +607,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP,
 				.max_llr_modulus = INT8_MAX,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-					RTE_BBDEV_MAX_CODE_BLOCKS,
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0
 			}
 		},
@@ -621,9 +621,9 @@ struct __rte_cache_aligned fpga_queue {
 					RTE_BBDEV_TURBO_RATE_MATCH |
 					RTE_BBDEV_TURBO_ENC_INTERRUPTS,
 				.num_buffers_src =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_dst =
-						RTE_BBDEV_MAX_CODE_BLOCKS
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS
 			}
 		},
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -1332,14 +1332,15 @@ struct __rte_cache_aligned fpga_queue {
 validate_enc_op(struct rte_bbdev_enc_op *op)
 {
 	struct rte_bbdev_op_turbo_enc *turbo_enc = &op->turbo_enc;
-	struct rte_bbdev_op_enc_cb_params *cb = NULL;
-	struct rte_bbdev_op_enc_tb_params *tb = NULL;
+	struct rte_bbdev_op_enc_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_enc_turbo_tb_params *tb = NULL;
 	uint16_t kw, kw_neg, kw_pos;
 
 	if (turbo_enc->input.length >
-			RTE_BBDEV_MAX_TB_SIZE >> 3) {
+			RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				turbo_enc->input.length, RTE_BBDEV_MAX_TB_SIZE);
+				turbo_enc->input.length,
+				RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return -1;
 	}
@@ -1372,32 +1373,32 @@ struct __rte_cache_aligned fpga_queue {
 
 	if (turbo_enc->code_block_mode == 0) {
 		tb = &turbo_enc->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE) {
+		if (tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1406,23 +1407,23 @@ struct __rte_cache_aligned fpga_queue {
 					tb->cab, tb->c);
 			return -1;
 		}
-		if ((tb->ea < RTE_BBDEV_MIN_CB_SIZE || (tb->ea % 2))
+		if ((tb->ea < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->ea % 2))
 				&& tb->r < tb->cab) {
 			rte_bbdev_log(ERR,
 					"ea (%u) is less than %u or it is not even",
-					tb->ea, RTE_BBDEV_MIN_CB_SIZE);
+					tb->ea, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
-		if ((tb->eb < RTE_BBDEV_MIN_CB_SIZE || (tb->eb % 2))
+		if ((tb->eb < RTE_BBDEV_TURBO_MIN_CB_SIZE || (tb->eb % 2))
 				&& tb->c > tb->cab) {
 			rte_bbdev_log(ERR,
 					"eb (%u) is less than %u or it is not even",
-					tb->eb, RTE_BBDEV_MIN_CB_SIZE);
+					tb->eb, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
 		kw_neg = 3 * RTE_ALIGN_CEIL(tb->k_neg + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_neg < tb->k_neg || tb->ncb_neg > kw_neg) {
 			rte_bbdev_log(ERR,
 					"ncb_neg (%u) is out of range (%u) k_neg <= value <= (%u) kw_neg",
@@ -1431,7 +1432,7 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		kw_pos = 3 * RTE_ALIGN_CEIL(tb->k_pos + 4,
-					RTE_BBDEV_C_SUBBLOCK);
+					RTE_BBDEV_TURBO_C_SUBBLOCK);
 		if (tb->ncb_pos < tb->k_pos || tb->ncb_pos > kw_pos) {
 			rte_bbdev_log(ERR,
 					"ncb_pos (%u) is out of range (%u) k_pos <= value <= (%u) kw_pos",
@@ -1446,23 +1447,23 @@ struct __rte_cache_aligned fpga_queue {
 		}
 	} else {
 		cb = &turbo_enc->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 
-		if (cb->e < RTE_BBDEV_MIN_CB_SIZE || (cb->e % 2)) {
+		if (cb->e < RTE_BBDEV_TURBO_MIN_CB_SIZE || (cb->e % 2)) {
 			rte_bbdev_log(ERR,
 					"e (%u) is less than %u or it is not even",
-					cb->e, RTE_BBDEV_MIN_CB_SIZE);
+					cb->e, RTE_BBDEV_TURBO_MIN_CB_SIZE);
 			return -1;
 		}
 
-		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(cb->k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 		if (cb->ncb < cb->k || cb->ncb > kw) {
 			rte_bbdev_log(ERR,
 					"ncb (%u) is out of range (%u) k <= value <= (%u) kw",
@@ -1655,8 +1656,8 @@ struct __rte_cache_aligned fpga_queue {
 validate_dec_op(struct rte_bbdev_dec_op *op)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &op->turbo_dec;
-	struct rte_bbdev_op_dec_cb_params *cb = NULL;
-	struct rte_bbdev_op_dec_tb_params *tb = NULL;
+	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
+	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;
 
 	if (op->mempool == NULL) {
 		rte_bbdev_log(ERR, "Invalid mempool pointer");
@@ -1713,33 +1714,33 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		tb = &turbo_dec->tb_params;
-		if ((tb->k_neg < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_neg > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_neg < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_neg > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c_neg > 0) {
 			rte_bbdev_log(ERR,
 					"k_neg (%u) is out of range %u <= value <= %u",
-					tb->k_neg, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_neg, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if ((tb->k_pos < RTE_BBDEV_MIN_CB_SIZE
-				|| tb->k_pos > RTE_BBDEV_MAX_CB_SIZE)
+		if ((tb->k_pos < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| tb->k_pos > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 				&& tb->c > tb->c_neg) {
 			rte_bbdev_log(ERR,
 					"k_pos (%u) is out of range %u <= value <= %u",
-					tb->k_pos, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					tb->k_pos, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
-		if (tb->c_neg > (RTE_BBDEV_MAX_CODE_BLOCKS - 1))
+		if (tb->c_neg > (RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1))
 			rte_bbdev_log(ERR,
 					"c_neg (%u) is out of range 0 <= value <= %u",
 					tb->c_neg,
-					RTE_BBDEV_MAX_CODE_BLOCKS - 1);
-		if (tb->c < 1 || tb->c > RTE_BBDEV_MAX_CODE_BLOCKS) {
+					RTE_BBDEV_TURBO_MAX_CODE_BLOCKS - 1);
+		if (tb->c < 1 || tb->c > RTE_BBDEV_TURBO_MAX_CODE_BLOCKS) {
 			rte_bbdev_log(ERR,
 					"c (%u) is out of range 1 <= value <= %u",
-					tb->c, RTE_BBDEV_MAX_CODE_BLOCKS);
+					tb->c, RTE_BBDEV_TURBO_MAX_CODE_BLOCKS);
 			return -1;
 		}
 		if (tb->cab > tb->c) {
@@ -1757,12 +1758,12 @@ struct __rte_cache_aligned fpga_queue {
 		}
 
 		cb = &turbo_dec->cb_params;
-		if (cb->k < RTE_BBDEV_MIN_CB_SIZE
-				|| cb->k > RTE_BBDEV_MAX_CB_SIZE) {
+		if (cb->k < RTE_BBDEV_TURBO_MIN_CB_SIZE
+				|| cb->k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 			rte_bbdev_log(ERR,
 					"k (%u) is out of range %u <= value <= %u",
-					cb->k, RTE_BBDEV_MIN_CB_SIZE,
-					RTE_BBDEV_MAX_CB_SIZE);
+					cb->k, RTE_BBDEV_TURBO_MIN_CB_SIZE,
+					RTE_BBDEV_TURBO_MAX_CB_SIZE);
 			return -1;
 		}
 	}
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 94aa536..5551f84 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -34,9 +34,9 @@
 	rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
 		##__VA_ARGS__)
 
-#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) + 1) * 48)
 #define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
-#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_TURBO_MAX_CB_SIZE + 4) * 48)
 
 /* private data structure */
 struct bbdev_private {
@@ -103,7 +103,7 @@ struct turbo_sw_queue {
 {
 	int32_t result = 0;
 
-	if (k < RTE_BBDEV_MIN_CB_SIZE || k > RTE_BBDEV_MAX_CB_SIZE)
+	if (k < RTE_BBDEV_TURBO_MIN_CB_SIZE || k > RTE_BBDEV_TURBO_MAX_CB_SIZE)
 		return -1;
 
 	if (k > 2048) {
@@ -158,9 +158,10 @@ struct turbo_sw_queue {
 					RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
 					RTE_BBDEV_TURBO_EARLY_TERMINATION,
 				.max_llr_modulus = 16,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_hard_out =
-						RTE_BBDEV_MAX_CODE_BLOCKS,
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 				.num_buffers_soft_out = 0,
 			}
 		},
@@ -172,8 +173,10 @@ struct turbo_sw_queue {
 						RTE_BBDEV_TURBO_CRC_24A_ATTACH |
 						RTE_BBDEV_TURBO_RATE_MATCH |
 						RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-				.num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-				.num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+				.num_buffers_src =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
 			}
 		},
 #endif
@@ -257,7 +260,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_out = rte_zmalloc_socket(name,
-			((RTE_BBDEV_MAX_TB_SIZE >> 3) + 3) *
+			((RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) + 3) *
 			sizeof(*q->enc_out) * 3,
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_out == NULL) {
@@ -277,7 +280,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -295,7 +298,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->ag = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * 10 * sizeof(*q->ag),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * 10 * sizeof(*q->ag),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->ag == NULL) {
 		rte_bbdev_log(ERR,
@@ -313,7 +316,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->code_block = rte_zmalloc_socket(name,
-			RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
+			RTE_BBDEV_TURBO_MAX_CB_SIZE * sizeof(*q->code_block),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->code_block == NULL) {
 		rte_bbdev_log(ERR,
@@ -439,9 +442,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (k > RTE_BBDEV_MAX_CB_SIZE) {
+	if (k > RTE_BBDEV_TURBO_MAX_CB_SIZE) {
 		rte_bbdev_log(ERR, "CB size (%u) is too big, max: %d",
-				k, RTE_BBDEV_MAX_CB_SIZE);
+				k, RTE_BBDEV_TURBO_MAX_CB_SIZE);
 		return -1;
 	}
 
@@ -466,9 +469,9 @@ struct turbo_sw_queue {
 		return -1;
 	}
 
-	if (kw > RTE_BBDEV_MAX_KW) {
+	if (kw > RTE_BBDEV_TURBO_MAX_KW) {
 		rte_bbdev_log(ERR, "Input length (%u) is too big, max: %d",
-				kw, RTE_BBDEV_MAX_KW);
+				kw, RTE_BBDEV_TURBO_MAX_KW);
 		return -1;
 	}
 
@@ -773,9 +776,9 @@ struct turbo_sw_queue {
 	/* Clear op status */
 	op->status = 0;
 
-	if (mbuf_total_left > RTE_BBDEV_MAX_TB_SIZE >> 3) {
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
 		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
-				mbuf_total_left, RTE_BBDEV_MAX_TB_SIZE);
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
 		op->status = 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
@@ -1074,7 +1077,7 @@ struct turbo_sw_queue {
 		 * where D is the size of each output from turbo encoder block
 		 * (k + 4).
 		 */
-		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_C_SUBBLOCK) * 3;
+		kw = RTE_ALIGN_CEIL(k + 4, RTE_BBDEV_TURBO_C_SUBBLOCK) * 3;
 
 		process_dec_cb(q, op, c, k, kw, m_in, m_out_head, m_out,
 				in_offset, out_offset, check_bit(dec->op_flags,
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index b6ca3b0..d860989 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -26,22 +26,22 @@
 #include <rte_mempool.h>
 
 /* Number of columns in sub-block interleaver (36.212, section 5.1.4.1.1) */
-#define RTE_BBDEV_C_SUBBLOCK (32)
+#define RTE_BBDEV_TURBO_C_SUBBLOCK (32)
 /* Maximum size of Transport Block (36.213, Table, Table 7.1.7.2.5-1) */
-#define RTE_BBDEV_MAX_TB_SIZE (391656)
+#define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MAX_CB_SIZE (6144)
+#define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
-#define RTE_BBDEV_MIN_CB_SIZE (40)
+#define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
-#define RTE_BBDEV_MAX_KW (18528)
+#define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
  * Maximum number of Code Blocks in Transport Block. It is calculated based on
  * maximum size of one Code Block and one Transport Block (considering CRC24A
  * and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
-#define RTE_BBDEV_MAX_CODE_BLOCKS (64)
+#define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
@@ -133,7 +133,7 @@ struct rte_bbdev_op_data {
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -204,7 +204,7 @@ struct rte_bbdev_op_dec_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -288,7 +288,7 @@ struct rte_bbdev_op_turbo_dec {
 	};
 };
 
-struct rte_bbdev_op_enc_cb_params {
+struct rte_bbdev_op_enc_turbo_cb_params {
 	/**< The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
@@ -305,7 +305,7 @@ struct rte_bbdev_op_enc_cb_params {
 	uint16_t ncb;
 };
 
-struct rte_bbdev_op_enc_tb_params {
+struct rte_bbdev_op_enc_turbo_tb_params {
 	/**< The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
@@ -320,7 +320,7 @@ struct rte_bbdev_op_enc_tb_params {
 	uint16_t k_pos;
 	/**< The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_MAX_CODE_BLOCKS] */
+	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
 	uint8_t c;
 	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
@@ -375,9 +375,9 @@ struct rte_bbdev_op_turbo_enc {
 	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_enc_cb_params cb_params;
+		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_enc_tb_params tb_params;
+		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 2/7] bbdev: extension of BBDEV API for 5G FEC
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 3/7] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
                                 ` (5 subsequent siblings)
  7 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Extension to BBDEV operations to support 5G
on top of existing 4G operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 doc/guides/rel_notes/release_19_08.rst |   4 +-
 lib/librte_bbdev/rte_bbdev.c           |  22 +-
 lib/librte_bbdev/rte_bbdev.h           | 138 +++++++-
 lib/librte_bbdev/rte_bbdev_op.h        | 567 ++++++++++++++++++++++++++-------
 4 files changed, 608 insertions(+), 123 deletions(-)

diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst
index 335d24a..55ae8ee 100644
--- a/doc/guides/rel_notes/release_19_08.rst
+++ b/doc/guides/rel_notes/release_19_08.rst
@@ -126,7 +126,6 @@ New Features
   Added telemetry mode to l3fwd-power application to report
   application level busyness, empty and full polls of rte_eth_rx_burst().
 
-
 Removed Items
 -------------
 
@@ -192,6 +191,9 @@ ABI Changes
 
   Disabling unused features would facilitate efficient usage of HW/SW offload.
 
+* bbdev: New operations and parameters added to support new 5GNR operations.
+  The bbdev ABI is still kept experimental.
+
 Shared Library Versions
 -----------------------
 
diff --git a/lib/librte_bbdev/rte_bbdev.c b/lib/librte_bbdev/rte_bbdev.c
index 0c35480..f6fe05a 100644
--- a/lib/librte_bbdev/rte_bbdev.c
+++ b/lib/librte_bbdev/rte_bbdev.c
@@ -6,7 +6,6 @@
 #include <string.h>
 #include <stdbool.h>
 
-#include <rte_string_fns.h>
 #include <rte_compat.h>
 #include <rte_common.h>
 #include <rte_errno.h>
@@ -215,7 +214,7 @@ struct rte_bbdev *
 	bbdev->data->dev_id = dev_id;
 	bbdev->state = RTE_BBDEV_INITIALIZED;
 
-	ret = strlcpy(bbdev->data->name, name, RTE_BBDEV_NAME_MAX_LEN);
+	ret = snprintf(bbdev->data->name, RTE_BBDEV_NAME_MAX_LEN, "%s", name);
 	if ((ret < 0) || (ret >= RTE_BBDEV_NAME_MAX_LEN)) {
 		rte_bbdev_log(ERR, "Copying device name \"%s\" failed", name);
 		return NULL;
@@ -499,7 +498,7 @@ struct rte_bbdev *
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_DEC &&
 			conf->priority > dev_info.max_ul_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_ul_queue_priority);
 			return -EINVAL;
@@ -507,7 +506,7 @@ struct rte_bbdev *
 		if (conf->op_type == RTE_BBDEV_OP_TURBO_ENC &&
 			conf->priority > dev_info.max_dl_queue_priority) {
 			rte_bbdev_log(ERR,
-					"Priority (%u) of queue %u of bdev %u must be <= %u",
+					"Priority (%u) of queue %u of bbdev %u must be <= %u",
 					conf->priority, queue_id, dev_id,
 					dev_info.max_dl_queue_priority);
 			return -EINVAL;
@@ -796,7 +795,7 @@ struct rte_bbdev *
 	memset(dev_info, 0, sizeof(*dev_info));
 	dev_info->dev_name = dev->data->name;
 	dev_info->num_queues = dev->data->num_queues;
-	dev_info->bus = rte_bus_find_by_device(dev->device);
+	dev_info->device = dev->device;
 	dev_info->socket_id = dev->data->socket_id;
 	dev_info->started = dev->data->started;
 
@@ -847,6 +846,12 @@ struct rte_bbdev *
 	case RTE_BBDEV_OP_TURBO_ENC:
 		result = sizeof(struct rte_bbdev_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		result = sizeof(struct rte_bbdev_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		result = sizeof(struct rte_bbdev_enc_op);
+		break;
 	default:
 		break;
 	}
@@ -861,11 +866,12 @@ struct rte_bbdev *
 {
 	enum rte_bbdev_op_type type = *(enum rte_bbdev_op_type *)arg;
 
-	if (type == RTE_BBDEV_OP_TURBO_DEC) {
+	if (type == RTE_BBDEV_OP_TURBO_DEC || type == RTE_BBDEV_OP_LDPC_DEC) {
 		struct rte_bbdev_dec_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
-	} else if (type == RTE_BBDEV_OP_TURBO_ENC) {
+	} else if (type == RTE_BBDEV_OP_TURBO_ENC ||
+			type == RTE_BBDEV_OP_LDPC_ENC) {
 		struct rte_bbdev_enc_op *op = element;
 		memset(op, 0, mempool->elt_size);
 		op->mempool = mempool;
@@ -1117,6 +1123,8 @@ struct rte_mempool *
 		"RTE_BBDEV_OP_NONE",
 		"RTE_BBDEV_OP_TURBO_DEC",
 		"RTE_BBDEV_OP_TURBO_ENC",
+		"RTE_BBDEV_OP_LDPC_DEC",
+		"RTE_BBDEV_OP_LDPC_ENC",
 	};
 
 	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index c5175cc..591fb79 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -167,7 +167,7 @@ struct rte_bbdev_queue_conf {
 
 /**
  * Start a device.
- * This is the last step needed before enqueuing operations is possible.
+ * This is the last step needed before enqueueing operations is possible.
  *
  * @param dev_id
  *   The identifier of the device.
@@ -326,7 +326,7 @@ struct rte_bbdev_driver_info {
 struct rte_bbdev_info {
 	int socket_id;  /**< NUMA socket that device is on */
 	const char *dev_name;  /**< Unique device name */
-	const struct rte_bus *bus;  /**< Bus information */
+	const struct rte_device *device; /**< Device Information */
 	uint16_t num_queues;  /**< Number of queues currently configured */
 	bool started;  /**< Set if device is currently started */
 	struct rte_bbdev_driver_info drv;  /**< Info from device driver */
@@ -448,6 +448,14 @@ struct __rte_cache_aligned rte_bbdev {
 	rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
 	/**< Dequeue decode function */
 	rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
+	/**< Enqueue encode function */
+	rte_bbdev_enqueue_enc_ops_t enqueue_ldpc_enc_ops;
+	/**< Enqueue decode function */
+	rte_bbdev_enqueue_dec_ops_t enqueue_ldpc_dec_ops;
+	/**< Dequeue encode function */
+	rte_bbdev_dequeue_enc_ops_t dequeue_ldpc_enc_ops;
+	/**< Dequeue decode function */
+	rte_bbdev_dequeue_dec_ops_t dequeue_ldpc_dec_ops;
 	const struct rte_bbdev_ops *dev_ops;  /**< Functions exported by PMD */
 	struct rte_bbdev_data *data;  /**< Pointer to device data */
 	enum rte_bbdev_state state;  /**< If device is currently used or not */
@@ -523,6 +531,69 @@ struct __rte_cache_aligned rte_bbdev {
 }
 
 /**
+ * Enqueue a burst of processed encode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_enqueue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Enqueue a burst of processed decode operations to a queue of the device.
+ * This functions only enqueues as many operations as currently possible and
+ * does not block until @p num_ops entries in the queue are available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array containing operations to be enqueued Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to enqueue.
+ *
+ * @return
+ *   The number of operations actually enqueued (this is the number of processed
+ *   entries in the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_enqueue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->enqueue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
+
+/**
  * Dequeue a burst of processed encode operations from a queue of the device.
  * This functions returns only the current contents of the queue, and does not
  * block until @ num_ops is available.
@@ -585,6 +656,69 @@ struct __rte_cache_aligned rte_bbdev {
 	return dev->dequeue_dec_ops(q_data, ops, num_ops);
 }
 
+
+/**
+ * Dequeue a burst of processed encode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_dequeue_ldpc_enc_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_enc_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_enc_ops(q_data, ops, num_ops);
+}
+
+/**
+ * Dequeue a burst of processed decode operations from a queue of the device.
+ * This functions returns only the current contents of the queue, and does not
+ * block until @ num_ops is available.
+ * This function does not provide any error notification to avoid the
+ * corresponding overhead.
+ *
+ * @param dev_id
+ *   The identifier of the device.
+ * @param queue_id
+ *   The index of the queue.
+ * @param ops
+ *   Pointer array where operations will be dequeued to. Must have at least
+ *   @p num_ops entries
+ * @param num_ops
+ *   The maximum number of operations to dequeue.
+ *
+ * @return
+ *   The number of operations actually dequeued (this is the number of entries
+ *   copied into the @p ops array).
+ */
+__rte_experimental
+static inline uint16_t
+rte_bbdev_dequeue_ldpc_dec_ops(uint16_t dev_id, uint16_t queue_id,
+		struct rte_bbdev_dec_op **ops, uint16_t num_ops)
+{
+	struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
+	struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
+	return dev->dequeue_ldpc_dec_ops(q_data, ops, num_ops);
+}
+
 /** Definitions of device event types */
 enum rte_bbdev_event_type {
 	RTE_BBDEV_EVENT_UNKNOWN,  /**< unknown event type */
diff --git a/lib/librte_bbdev/rte_bbdev_op.h b/lib/librte_bbdev/rte_bbdev_op.h
index d860989..1e119a7 100644
--- a/lib/librte_bbdev/rte_bbdev_op.h
+++ b/lib/librte_bbdev/rte_bbdev_op.h
@@ -31,57 +31,61 @@
 #define RTE_BBDEV_TURBO_MAX_TB_SIZE (391656)
 /* Maximum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MAX_CB_SIZE (6144)
+/* Maximum size of Code Block  */
+#define RTE_BBDEV_LDPC_MAX_CB_SIZE (8448)
 /* Minimum size of Code Block (36.212, Table 5.1.3-3) */
 #define RTE_BBDEV_TURBO_MIN_CB_SIZE (40)
 /* Maximum size of circular buffer */
 #define RTE_BBDEV_TURBO_MAX_KW (18528)
 /*
- * Maximum number of Code Blocks in Transport Block. It is calculated based on
- * maximum size of one Code Block and one Transport Block (considering CRC24A
- * and CRC24B):
+ * Turbo: Maximum number of Code Blocks in Transport Block. It is calculated
+ * based on maximum size of one Code Block and one Transport Block
+ * (considering CRC24A and CRC24B):
  * (391656 + 24) / (6144 - 24) = 64
  */
 #define RTE_BBDEV_TURBO_MAX_CODE_BLOCKS (64)
+/* LDPC:  Maximum number of Code Blocks in Transport Block.*/
+#define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)
 
 /** Flags for turbo decoder operation and capability structure */
 enum rte_bbdev_op_td_flag_bitmasks {
-	/**< If sub block de-interleaving is to be performed. */
+	/** If sub block de-interleaving is to be performed. */
 	RTE_BBDEV_TURBO_SUBBLOCK_DEINTERLEAVE = (1ULL << 0),
-	/**< To use CRC Type 24B (otherwise use CRC Type 24A). */
+	/** To use CRC Type 24B (otherwise use CRC Type 24A). */
 	RTE_BBDEV_TURBO_CRC_TYPE_24B = (1ULL << 1),
-	/**< If turbo equalization is to be performed. */
+	/** If turbo equalization is to be performed. */
 	RTE_BBDEV_TURBO_EQUALIZER = (1ULL << 2),
-	/**< If set, saturate soft output to +/-127 */
+	/** If set, saturate soft output to +/-127 */
 	RTE_BBDEV_TURBO_SOFT_OUT_SATURATE = (1ULL << 3),
-	/**< Set to 1 to start iteration from even, else odd; one iteration =
+	/** Set to 1 to start iteration from even, else odd; one iteration =
 	 * max_iteration + 0.5
 	 */
 	RTE_BBDEV_TURBO_HALF_ITERATION_EVEN = (1ULL << 4),
-	/**< If 0, TD stops after CRC matches; else if 1, runs to end of next
+	/** If 0, TD stops after CRC matches; else if 1, runs to end of next
 	 * odd iteration after CRC matches
 	 */
 	RTE_BBDEV_TURBO_CONTINUE_CRC_MATCH = (1ULL << 5),
-	/**< Set if soft output is required to be output  */
+	/** Set if soft output is required to be output  */
 	RTE_BBDEV_TURBO_SOFT_OUTPUT = (1ULL << 6),
-	/**< Set to enable early termination mode */
+	/** Set to enable early termination mode */
 	RTE_BBDEV_TURBO_EARLY_TERMINATION = (1ULL << 7),
-	/**< Set if a device supports decoder dequeue interrupts */
+	/** Set if a device supports decoder dequeue interrupts */
 	RTE_BBDEV_TURBO_DEC_INTERRUPTS = (1ULL << 9),
-	/**< Set if positive LLR encoded input is supported. Positive LLR value
+	/** Set if positive LLR encoded input is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN = (1ULL << 10),
-	/**< Set if negative LLR encoded input is supported. Negative LLR value
+	/** Set if negative LLR encoded input is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with RTE_BBDEV_TURBO_POS_LLR_1_BIT_IN
 	 * when used to formalize the input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN = (1ULL << 11),
-	/**< Set if positive LLR soft output is supported. Positive LLR value
+	/** Set if positive LLR soft output is supported. Positive LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -89,7 +93,7 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * the input data format.
 	 */
 	RTE_BBDEV_TURBO_POS_LLR_1_BIT_SOFT_OUT = (1ULL << 12),
-	/**< Set if negative LLR soft output is supported. Negative LLR value
+	/** Set if negative LLR soft output is supported. Negative LLR value
 	 * represents the level of confidence for bit '1', and vice versa for
 	 * bit '0'.
 	 * This is mutually exclusive with
@@ -97,43 +101,114 @@ enum rte_bbdev_op_td_flag_bitmasks {
 	 * input data format.
 	 */
 	RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT = (1ULL << 13),
-	/**< Set if driver supports flexible parallel MAP engine decoding. If
+	/** Set if driver supports flexible parallel MAP engine decoding. If
 	 * not supported, num_maps (number of MAP engines) argument is unusable.
 	 */
 	RTE_BBDEV_TURBO_MAP_DEC = (1ULL << 14),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_DEC_SCATTER_GATHER = (1ULL << 15),
-	/**< Set to keep CRC24B bits appended while decoding. Only usable when
+	/** Set to keep CRC24B bits appended while decoding. Only usable when
 	 * decoding Transport Blocks (code_block_mode = 0).
 	 */
 	RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16)
 };
 
+
 /** Flags for turbo encoder operation and capability structure */
 enum rte_bbdev_op_te_flag_bitmasks {
-	/**< Ignore rv_index and set K0 = 0 */
+	/** Ignore rv_index and set K0 = 0 */
 	RTE_BBDEV_TURBO_RV_INDEX_BYPASS = (1ULL << 0),
-	/**< If rate matching is to be performed */
+	/** If rate matching is to be performed */
 	RTE_BBDEV_TURBO_RATE_MATCH = (1ULL << 1),
-	/**< This bit must be set to enable CRC-24B generation */
+	/** This bit must be set to enable CRC-24B generation */
 	RTE_BBDEV_TURBO_CRC_24B_ATTACH = (1ULL << 2),
-	/**< This bit must be set to enable CRC-24A generation */
+	/** This bit must be set to enable CRC-24A generation */
 	RTE_BBDEV_TURBO_CRC_24A_ATTACH = (1ULL << 3),
-	/**< Set if a device supports encoder dequeue interrupts */
+	/** Set if a device supports encoder dequeue interrupts */
 	RTE_BBDEV_TURBO_ENC_INTERRUPTS = (1ULL << 4),
-	/**< Set if a device supports scatter-gather functionality */
+	/** Set if a device supports scatter-gather functionality */
 	RTE_BBDEV_TURBO_ENC_SCATTER_GATHER = (1ULL << 5)
 };
 
-/**< Data input and output buffer for BBDEV operations */
+/** Flags for LDPC decoder operation and capability structure */
+enum rte_bbdev_op_ldpcdec_flag_bitmasks {
+	/** Set for transport block CRC-24A checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK = (1ULL << 0),
+	/** Set for code block CRC-24B checking */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1),
+	/** Set to drop the last CRC bits decoding output */
+	RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2),
+	/** Set for bit-level de-interleaver bypass on Rx stream. */
+	RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3),
+	/** Set for HARQ combined input stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4),
+	/** Set for HARQ combined output stream enable. */
+	RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5),
+	/** Set for LDPC decoder bypass.
+	 *  RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set.
+	 */
+	RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6),
+	/** Set for soft-output stream enable */
+	RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7),
+	/** Set for Rate-Matching bypass on soft-out stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8),
+	/** Set for bit-level de-interleaver bypass on soft-output stream. */
+	RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9),
+	/** Set for iteration stopping on successful decode condition
+	 *  i.e. a successful syndrome check.
+	 */
+	RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10),
+	/** Set if a device supports decoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12),
+	/** Set if a device supports input/output HARQ compression. */
+	RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13),
+	/** Set if a device supports input LLR compression. */
+	RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14),
+	/** Set if a device supports HARQ input from
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15),
+	/** Set if a device supports HARQ output to
+	 *  device's internal memory.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16),
+	/** Set if a device supports loop-back access to
+	 *  HARQ internal memory. Intended for troubleshooting.
+	 */
+	RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK = (1ULL << 17)
+};
+
+/** Flags for LDPC encoder operation and capability structure */
+enum rte_bbdev_op_ldpcenc_flag_bitmasks {
+	/** Set for bit-level interleaver bypass on output stream. */
+	RTE_BBDEV_LDPC_INTERLEAVER_BYPASS = (1ULL << 0),
+	/** If rate matching is to be performed */
+	RTE_BBDEV_LDPC_RATE_MATCH = (1ULL << 1),
+	/** Set for transport block CRC-24A attach */
+	RTE_BBDEV_LDPC_CRC_24A_ATTACH = (1ULL << 2),
+	/** Set for code block CRC-24B attach */
+	RTE_BBDEV_LDPC_CRC_24B_ATTACH = (1ULL << 3),
+	/** Set for code block CRC-16 attach */
+	RTE_BBDEV_LDPC_CRC_16_ATTACH = (1ULL << 4),
+	/** Set if a device supports encoder dequeue interrupts. */
+	RTE_BBDEV_LDPC_ENC_INTERRUPTS = (1ULL << 5),
+	/** Set if a device supports scatter-gather functionality. */
+	RTE_BBDEV_LDPC_ENC_SCATTER_GATHER = (1ULL << 6),
+	/** Set if a device supports concatenation of non byte aligned output */
+	RTE_BBDEV_LDPC_ENC_CONCATENATION = (1ULL << 7)
+};
+
+/** Data input and output buffer for BBDEV operations */
 struct rte_bbdev_op_data {
-	/**< The mbuf data structure representing the data for BBDEV operation.
+	/** The mbuf data structure representing the data for BBDEV operation.
 	 *
 	 * This mbuf pointer can point to one Code Block (CB) data buffer or
 	 * multiple CBs contiguously located next to each other.
 	 * A Transport Block (TB) represents a whole piece of data that is
 	 * divided into one or more CBs. Maximum number of CBs can be contained
-	 * in one TB is defined by RTE_BBDEV_TURBO_MAX_CODE_BLOCKS.
+	 * in one TB is defined by RTE_BBDEV_(TURBO/LDPC)_MAX_CODE_BLOCKS.
 	 *
 	 * An mbuf data structure cannot represent more than one TB. The
 	 * smallest piece of data that can be contained in one mbuf is one CB.
@@ -145,8 +220,8 @@ struct rte_bbdev_op_data {
 	 * then it is capable of collecting (gathering) non-contiguous
 	 * (scattered) data from multiple locations in the memory.
 	 * This capability is reported by the capability flags:
-	 * - RTE_BBDEV_TURBO_ENC_SCATTER_GATHER and
-	 * - RTE_BBDEV_TURBO_DEC_SCATTER_GATHER.
+	 * - RTE_BBDEV_(TURBO/LDPC)_ENC_SCATTER_GATHER and
+	 * - RTE_BBDEV_(TURBO/LDPC)_DEC_SCATTER_GATHER.
 	 * Only if a BBDEV PMD supports this feature, chained mbuf data
 	 * structures are accepted. A chained mbuf can represent one
 	 * non-contiguous CB or multiple non-contiguous CBs.
@@ -157,7 +232,7 @@ struct rte_bbdev_op_data {
 	 * was a chained mbuf.
 	 */
 	struct rte_mbuf *data;
-	/**< The starting point of the BBDEV (encode/decode) operation,
+	/** The starting point of the BBDEV (encode/decode) operation,
 	 * in bytes.
 	 *
 	 * BBDEV starts to read data past this offset.
@@ -165,13 +240,13 @@ struct rte_bbdev_op_data {
 	 * segment.
 	 */
 	uint32_t offset;
-	/**< The total data length to be processed in one operation, in bytes.
+	/** The total data length to be processed in one operation, in bytes.
 	 *
 	 * In case the mbuf data is representing one CB, this is the length of
 	 * the CB undergoing the operation.
 	 * If it's for multiple CBs, this is the total length of those CBs
 	 * undergoing the operation.
-	 * If it's for one TB, this is the total length of the TB under
+	 * If it is for one TB, this is the total length of the TB under
 	 * operation.
 	 *
 	 * In case of chained mbuf, this data length includes the lengths of the
@@ -180,51 +255,83 @@ struct rte_bbdev_op_data {
 	uint32_t length;
 };
 
-struct rte_bbdev_op_dec_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+/** Turbo decode code block parameters */
+struct rte_bbdev_op_dec_turbo_cb_params {
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC bits, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched LLR output, in bytes, as in
+	/** The E length of the CB rate matched LLR output, in bytes, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
 };
 
-struct rte_bbdev_op_dec_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+/** LDPC decode code block parameters */
+struct rte_bbdev_op_dec_ldpc_cb_params {
+	/** Rate matching output sequence length in bits or LLRs.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** Turbo decode transport block parameters */
+struct rte_bbdev_op_dec_turbo_tb_params {
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The index of the first CB in the inbound mbuf data, default is 0 */
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo decode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically belonging
- * to one TB "TB-mode".
- * The provided K size parameter of the CB is its size out coming from the
+/** LDPC decode transport block parameters */
+struct rte_bbdev_op_dec_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo decode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
+ * The provided K size parameter of the CB is its size coming from the
  * decode operation.
  * CRC24A/B check is requested by the application by setting the flag
  * RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise.
@@ -249,94 +356,192 @@ struct rte_bbdev_op_dec_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_dec {
-	/**< The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
+	/** The Virtual Circular Buffer, wk, size 3*Kpi for each CB */
 	struct rte_bbdev_op_data input;
-	/**< The hard decisions buffer for the decoded output,
+	/** The hard decisions buffer for the decoded output,
 	 * size K for each CB
 	 */
 	struct rte_bbdev_op_data hard_output;
-	/**< The soft LLR output buffer - optional */
+	/** The soft LLR output buffer - optional */
 	struct rte_bbdev_op_data soft_output;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_td_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-	/**< The minimum number of iterations to perform in decoding all CBs in
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** The minimum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_min:4;
-	/**< The maximum number of iterations to perform in decoding all CBs in
+	/** The maximum number of iterations to perform in decoding all CBs in
 	 * this operation - input
 	 */
 	uint8_t iter_max:4;
-	/**< The maximum number of iterations that were perform in decoding all
-	 * CBs in this decode operation - output
+	/** The maximum number of iterations that were performed in decoding
+	 * all CBs in this decode operation - output
 	 */
 	uint8_t iter_count;
-	/**< 5 bit extrinsic scale (scale factor on extrinsic info) */
+	/** 5 bit extrinsic scale (scale factor on extrinsic info) */
 	uint8_t ext_scale;
-	/**< Number of MAP engines to use in decode,
-	 * must be power of 2 (or 0 to auto-select)
+	/** Number of MAP engines to use in decode,
+	 *  must be power of 2 (or 0 to auto-select)
 	 */
 	uint8_t num_maps;
 
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/**< [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
 		/**< Struct which stores Code Block specific parameters */
-		struct rte_bbdev_op_dec_cb_params cb_params;
+		struct rte_bbdev_op_dec_turbo_cb_params cb_params;
 		/**< Struct which stores Transport Block specific parameters */
-		struct rte_bbdev_op_dec_tb_params tb_params;
+		struct rte_bbdev_op_dec_turbo_tb_params tb_params;
 	};
 };
 
+/** Operation structure for LDPC decode.
+ *
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can also be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode" (Currently not supported).
+ *
+ * The input encoded CB data is the Virtual Circular Buffer data stream.
+ *
+ * Each byte in the input circular buffer is the LLR value of each bit of the
+ * original CB.
+ *
+ * Hard output is a mandatory capability that all BBDEV PMDs support. This is
+ * the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).
+ *
+ * Soft output is an optional capability for BBDEV PMDs. If supported, an LLR
+ * rate matched output is computed in the soft_output buffer structure.
+ * These are A Posteriori Probabilities (APP) LLR samples for coded bits.
+ *
+ * HARQ combined output is an optional capability for BBDEV PMDs.
+ * If supported, a LLR output is streamed to the harq_combined_output
+ * buffer.
+ *
+ * HARQ combined input is an optional capability for BBDEV PMDs.
+ * If supported, a LLR input is streamed from the harq_combined_input
+ * buffer.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_dec {
+	/** The Virtual Circular Buffer for this code block, one LLR
+	 * per bit of the original CB.
+	 */
+	struct rte_bbdev_op_data input;
+	/** The hard decisions buffer for the decoded output,
+	 * size K for each CB
+	 */
+	struct rte_bbdev_op_data hard_output;
+	/** The soft LLR output LLR stream buffer - optional */
+	struct rte_bbdev_op_data soft_output;
+	/** The HARQ combined LLR stream input buffer - optional */
+	struct rte_bbdev_op_data harq_combined_input;
+	/** The HARQ combined LLR stream output buffer - optional */
+	struct rte_bbdev_op_data harq_combined_output;
+
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint8_t rv_index;
+	/** The maximum number of iterations to perform in decoding CB in
+	 *  this operation - input
+	 */
+	uint8_t iter_max;
+	/** The number of iterations that were performed in decoding
+	 * CB in this decode operation - output
+	 */
+	uint8_t iter_count;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 * [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {1,2,4,6,8}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+	};
+};
+
+/** Turbo encode code block parameters */
 struct rte_bbdev_op_enc_turbo_cb_params {
-	/**< The K size of the input CB, in bits [40:6144], as specified in
+	/** The K size of the input CB, in bits [40:6144], as specified in
 	 * 3GPP TS 36.212.
 	 * This size is inclusive of CRC24A, regardless whether it was
 	 * pre-calculated by the application or not.
 	 */
 	uint16_t k;
-	/**< The E length of the CB rate matched output, in bits, as in
+	/** The E length of the CB rate matched output, in bits, as in
 	 * 3GPP TS 36.212.
 	 */
 	uint32_t e;
-	/**< The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
+	/** The Ncb soft buffer size of the CB rate matched output [K:3*Kpi],
 	 * in bits, as specified in 3GPP TS 36.212.
 	 */
 	uint16_t ncb;
 };
 
+/** Turbo encode transport block parameters */
 struct rte_bbdev_op_enc_turbo_tb_params {
-	/**< The K- size of the input CB, in bits [40:6144], that is in the
+	/** The K- size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r < C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_neg;
-	/**< The K+ size of the input CB, in bits [40:6144], that is in the
+	/** The K+ size of the input CB, in bits [40:6144], that is in the
 	 * Turbo operation when r >= C-, as in 3GPP TS 36.212.
 	 * This size is inclusive of CRC24B, regardless whether it was
 	 * pre-calculated and appended by the application or not.
 	 */
 	uint16_t k_pos;
-	/**< The number of CBs that have K- size, [0:63] */
+	/** The number of CBs that have K- size, [0:63] */
 	uint8_t c_neg;
-	/**< The total number of CBs in the TB, [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS] */
+	/** The total number of CBs in the TB,
+	 * [1:RTE_BBDEV_TURBO_MAX_CODE_BLOCKS]
+	 */
 	uint8_t c;
-	/**< The number of CBs that uses Ea before switching to Eb, [0:63] */
+	/** The number of CBs that uses Ea before switching to Eb, [0:63] */
 	uint8_t cab;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r < cab
 	 */
 	uint32_t ea;
-	/**< The E size of the CB rate matched output to use in the Turbo
+	/** The E size of the CB rate matched output to use in the Turbo
 	 * operation when r >= cab
 	 */
 	uint32_t eb;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r < C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_neg;
-	/**< The Ncb soft buffer size for the rate matched CB that is used in
+	/** The Ncb soft buffer size for the rate matched CB that is used in
 	 * the Turbo operation when r >= C-, [K:3*Kpi]
 	 */
 	uint16_t ncb_pos;
@@ -344,10 +549,38 @@ struct rte_bbdev_op_enc_turbo_tb_params {
 	uint8_t r;
 };
 
-/**< Operation structure for Turbo encode.
- * An operation can perform on one CB at a time "CB-mode".
- * An operation can perform on one or multiple CBs that are logically
- * belonging to one TB "TB-mode".
+/** LDPC encode code block parameters */
+struct rte_bbdev_op_enc_ldpc_cb_params {
+	/** E, length after rate matching in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t e;
+};
+
+/** LDPC encode transport block parameters */
+struct rte_bbdev_op_enc_ldpc_tb_params {
+	/** Ea, length after rate matching in bits, r < cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t ea;
+	/** Eb, length after rate matching in bits, r >= cab.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint32_t eb;
+	/** The total number of CBs in the TB or partial TB
+	 * [1:RTE_BBDEV_LDPC_MAX_CODE_BLOCKS]
+	 */
+	uint8_t c;
+	/** The index of the first CB in the inbound mbuf data, default is 0 */
+	uint8_t r;
+	/** The number of CBs that use Ea before switching to Eb, [0:63] */
+	uint8_t cab;
+};
+
+/** Operation structure for Turbo encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can pbe erformd on one or multiple CBs that logically
+ * belong to one TB "TB-mode".
  *
  * In CB-mode, CRC24A/B is an optional operation. K size parameter is not
  * affected by CRC24A/B inclusion, this only affects the inbound mbuf data
@@ -364,44 +597,131 @@ struct rte_bbdev_op_enc_turbo_tb_params {
  * application with enough room for the output data.
  */
 struct rte_bbdev_op_turbo_enc {
-	/**< The input CB or TB data */
+	/** The input CB or TB data */
 	struct rte_bbdev_op_data input;
-	/**< The rate matched CB or TB output buffer */
+	/** The rate matched CB or TB output buffer */
 	struct rte_bbdev_op_data output;
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
+	uint32_t op_flags;
 
-	uint32_t op_flags;  /**< Flags from rte_bbdev_op_te_flag_bitmasks */
-	uint8_t rv_index;  /**< Rv index for rate matching [0:3] */
-
-	uint8_t code_block_mode; /**< [0 - TB : 1 - CB] */
+	/** Rv index for rate matching [0:3] */
+	uint8_t rv_index;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
 	union {
-		/**< Struct which stores Code Block specific parameters */
+		/** Struct which stores Code Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_cb_params cb_params;
-		/**< Struct which stores Transport Block specific parameters */
+		/** Struct which stores Transport Block specific parameters */
 		struct rte_bbdev_op_enc_turbo_tb_params tb_params;
 	};
 };
 
-/**< List of the capabilities for the Turbo Decoder */
+/** Operation structure for LDPC encode.
+ * An operation can be performed on one CB at a time "CB-mode".
+ * An operation can be performed on one or multiple CBs that logically
+ * belong to a TB "TB-mode".
+ *
+ * The input data is the CB or TB input to the decoder.
+ *
+ * The output data is the ratematched CB or TB data, or the output after
+ * bit-selection if RTE_BBDEV_LDPC_INTERLEAVER_BYPASS is set.
+ *
+ * The output mbuf data structure is expected to be allocated by the
+ * application with enough room for the output data.
+ */
+struct rte_bbdev_op_ldpc_enc {
+	/** The input TB or CB data */
+	struct rte_bbdev_op_data input;
+	/** The rate matched TB or CB output buffer */
+	struct rte_bbdev_op_data output;
+
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t op_flags;
+
+	/** Rate matching redundancy version */
+	uint8_t rv_index;
+	/** 1: LDPC Base graph 1, 2: LDPC Base graph 2.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint8_t basegraph;
+	/** Zc, LDPC lifting size.
+	 *  [3GPP TS38.212, section 5.2.2]
+	 */
+	uint16_t z_c;
+	/** Ncb, length of the circular buffer in bits.
+	 *  [3GPP TS38.212, section 5.4.2.1]
+	 */
+	uint16_t n_cb;
+	/** Qm, modulation order {2,4,6,8,10}.
+	 *  [3GPP TS38.212, section 5.4.2.2]
+	 */
+	uint8_t q_m;
+	/** Number of Filler bits, n_filler = K – K’
+	 *  [3GPP TS38.212 section 5.2.2]
+	 */
+	uint16_t n_filler;
+	/** [0 - TB : 1 - CB] */
+	uint8_t code_block_mode;
+	union {
+		/** Struct which stores Code Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+		/** Struct which stores Transport Block specific parameters */
+		struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+	};
+};
+
+/** List of the capabilities for the Turbo Decoder */
 struct rte_bbdev_op_cap_turbo_dec {
-	/**< Flags from rte_bbdev_op_td_flag_bitmasks */
+	/** Flags from rte_bbdev_op_td_flag_bitmasks */
 	uint32_t capability_flags;
 	/** Maximal LLR absolute value. Acceptable LLR values lie in range
 	 * [-max_llr_modulus, max_llr_modulus].
 	 */
 	int8_t max_llr_modulus;
+	/** Num input code block buffers */
 	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	/**< Num hard output code block buffers */
+	/** Num hard output code block buffers */
 	uint8_t num_buffers_hard_out;
-	/**< Num soft output code block buffers if supported by the driver */
+	/** Num soft output code block buffers if supported by the driver */
 	uint8_t num_buffers_soft_out;
 };
 
-/**< List of the capabilities for the Turbo Encoder */
+/** List of the capabilities for the Turbo Encoder */
 struct rte_bbdev_op_cap_turbo_enc {
-	/**< Flags from rte_bbdev_op_te_flag_bitmasks */
+	/** Flags from rte_bbdev_op_te_flag_bitmasks */
 	uint32_t capability_flags;
-	uint8_t num_buffers_src;  /**< Num input code block buffers */
-	uint8_t num_buffers_dst;  /**< Num output code block buffers */
+	/** Num input code block buffers */
+	uint8_t num_buffers_src;
+	/** Num output code block buffers */
+	uint8_t num_buffers_dst;
+};
+
+/** List of the capabilities for the LDPC Decoder */
+struct rte_bbdev_op_cap_ldpc_dec {
+	/** Flags from rte_bbdev_op_ldpcdec_flag_bitmasks */
+	uint32_t capability_flags;
+	/** LLR size in bits. LLR is a two’s complement number. */
+	int8_t llr_size;
+	/** LLR numbers of decimals bit for arithmetic representation */
+	int8_t llr_decimals;
+	/** Amount of memory for HARQ in external DDR in MB */
+	uint16_t harq_memory_size;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num hard output code block buffers */
+	uint16_t num_buffers_hard_out;
+	/** Num soft output code block buffers if supported by the driver */
+	uint16_t num_buffers_soft_out;
+};
+
+/** List of the capabilities for the LDPC Encoder */
+struct rte_bbdev_op_cap_ldpc_enc {
+	/** Flags from rte_bbdev_op_ldpcenc_flag_bitmasks */
+	uint32_t capability_flags;
+	/** Num input code block buffers */
+	uint16_t num_buffers_src;
+	/** Num output code block buffers */
+	uint16_t num_buffers_dst;
 };
 
 /** Different operation types supported by the device */
@@ -409,40 +729,59 @@ enum rte_bbdev_op_type {
 	RTE_BBDEV_OP_NONE,  /**< Dummy operation that does nothing */
 	RTE_BBDEV_OP_TURBO_DEC,  /**< Turbo decode */
 	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
+	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
+	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
 	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */
 };
 
-/**< Bit indexes of possible errors reported through status field */
+/** Bit indexes of possible errors reported through status field */
 enum {
 	RTE_BBDEV_DRV_ERROR,
 	RTE_BBDEV_DATA_ERROR,
 	RTE_BBDEV_CRC_ERROR,
+	RTE_BBDEV_SYNDROME_ERROR
 };
 
-/**< Structure specifying a single encode operation */
+/** Structure specifying a single encode operation */
 struct rte_bbdev_enc_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains encoder specific parameters */
-	struct rte_bbdev_op_turbo_enc turbo_enc;
+	/**< Status of operation that was performed */
+	int status;
+	/**< Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/**< Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_enc turbo_enc;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
+	};
 };
 
-/**< Structure specifying a single decode operation */
+/** Structure specifying a single decode operation */
 struct rte_bbdev_dec_op {
-	int status;  /**< Status of operation that was performed */
-	struct rte_mempool *mempool;  /**< Mempool which op instance is in */
-	void *opaque_data;  /**< Opaque pointer for user data */
-	/**< Contains decoder specific parameters */
-	struct rte_bbdev_op_turbo_dec turbo_dec;
+	/** Status of operation that was performed */
+	int status;
+	/** Mempool which op instance is in */
+	struct rte_mempool *mempool;
+	/** Opaque pointer for user data */
+	void *opaque_data;
+	union {
+		/** Contains turbo decoder specific parameters */
+		struct rte_bbdev_op_turbo_dec turbo_dec;
+		/** Contains LDPC decoder specific parameters */
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+	};
 };
 
-/**< Operation capabilities supported by a device */
+/** Operation capabilities supported by a device */
 struct rte_bbdev_op_cap {
 	enum rte_bbdev_op_type type;  /**< Type of operation */
 	union {
 		struct rte_bbdev_op_cap_turbo_dec turbo_dec;
 		struct rte_bbdev_op_cap_turbo_enc turbo_enc;
+		struct rte_bbdev_op_cap_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_cap_ldpc_enc ldpc_enc;
 	} cap;  /**< Operation-type specific capabilities */
 };
 
@@ -516,7 +855,8 @@ struct rte_mempool *
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_ENC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_ENC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_ENC)))
 		return -EINVAL;
 
 	/* Get elements */
@@ -552,7 +892,8 @@ struct rte_mempool *
 	/* Check type */
 	priv = (struct rte_bbdev_op_pool_private *)
 			rte_mempool_get_priv(mempool);
-	if (unlikely(priv->type != RTE_BBDEV_OP_TURBO_DEC))
+	if (unlikely((priv->type != RTE_BBDEV_OP_TURBO_DEC) &&
+					(priv->type != RTE_BBDEV_OP_LDPC_DEC)))
 		return -EINVAL;
 
 	/* Get elements */
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 3/7] docs/guides: updating bbdev API for 5GNR operations
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 2/7] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
                                 ` (4 subsequent siblings)
  7 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

The documentation captures the related change in
BBDEV API to support 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 doc/guides/prog_guide/bbdev.rst | 505 ++++++++++++++++++++++++++++++++++++----
 1 file changed, 458 insertions(+), 47 deletions(-)

diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst
index 607d2e7..ef05dcb 100644
--- a/doc/guides/prog_guide/bbdev.rst
+++ b/doc/guides/prog_guide/bbdev.rst
@@ -166,9 +166,9 @@ stopped individually.
 Logical Cores, Memory and Queues Relationships
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The bbdev device Library as the Poll Mode Driver library support NUMA for when
-a processor's logical cores and interfaces utilize its local memory. Therefore
-baseband operations, the mbuf being operated on should be allocated from memory
+The bbdev poll mode device driver library supports NUMA architecture, in which
+a processor's logical cores and interfaces utilize it's local memory. Therefore
+with baseband operations, the mbuf being operated on should be allocated from memory
 pools created in the local memory. The buffers should, if possible, remain on
 the local processor to obtain the best performance results and buffer
 descriptors should be populated with mbufs allocated from a mempool allocated
@@ -220,9 +220,9 @@ relation to Turbo Encoding and Decoding operations.
                     RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP |
                     RTE_BBDEV_TURBO_EARLY_TERMINATION,
                 .max_llr_modulus = 16,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_hard_out =
-                        RTE_BBDEV_MAX_CODE_BLOCKS,
+                        RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
                 .num_buffers_soft_out = 0,
             }
         },
@@ -234,8 +234,8 @@ relation to Turbo Encoding and Decoding operations.
                         RTE_BBDEV_TURBO_CRC_24A_ATTACH |
                         RTE_BBDEV_TURBO_RATE_MATCH |
                         RTE_BBDEV_TURBO_RV_INDEX_BYPASS,
-                .num_buffers_src = RTE_BBDEV_MAX_CODE_BLOCKS,
-                .num_buffers_dst = RTE_BBDEV_MAX_CODE_BLOCKS,
+                .num_buffers_src = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
+                .num_buffers_dst = RTE_BBDEV_TURBO_MAX_CODE_BLOCKS,
             }
         },
         RTE_BBDEV_END_OF_CAPABILITIES_LIST()
@@ -266,12 +266,13 @@ information:
     struct rte_bbdev_info {
         int socket_id;
         const char *dev_name;
-        const struct rte_bus *bus;
+        const struct rte_device *device;
         uint16_t num_queues;
         bool started;
         struct rte_bbdev_driver_info drv;
     };
 
+
 Operation Processing
 --------------------
 
@@ -335,14 +336,20 @@ processed on a particular bbdev device poll mode driver.
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_enc turbo_enc;
+        union {
+            struct rte_bbdev_op_turbo_enc turbo_enc;
+            struct rte_bbdev_op_ldpc_enc ldpc_enc;
+        }
     };
 
     struct rte_bbdev_dec_op {
         int status;
         struct rte_mempool *mempool;
         void *opaque_data;
-        struct rte_bbdev_op_turbo_dec turbo_dec;
+        union {
+            struct rte_bbdev_op_turbo_dec turbo_enc;
+            struct rte_bbdev_op_ldpc_dec ldpc_enc;
+        }
     };
 
 The operation structure by itself defines the operation type. It includes an
@@ -399,19 +406,31 @@ BBDEV Inbound/Outbound Memory
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The bbdev operation structure contains all the mutable data relating to
-performing Turbo coding on a referenced mbuf data buffer. It is used for either
+performing Turbo and LDPC coding on a referenced mbuf data buffer. It is used for either
 encode or decode operations.
 
-Turbo Encode operation accepts one input and one output.
-Turbo Decode operation accepts one input and two outputs, called *hard-decision*
-and *soft-decision* outputs. *Soft-decision* output is optional.
+
+.. csv-table:: Operation I/O
+   :header: "FEC", "In", "Out"
+   :widths: 20, 30, 30
+
+   "Turbo Encode", "input", "output"
+   "Turbo Decode", "input", "hard output"
+   " ", " ", "soft output (optional)"
+   "LDPC Encode", "input", "output"
+   "LDPC Decode", "input", "hard output"
+   "", "HQ combine (optional)", "HQ combine (optional)"
+   " ", "", "soft output (optional)"
+
 
 It is expected that the application provides input and output mbuf pointers
-allocated and ready to use. The baseband framework supports turbo coding on
-Code Blocks (CB) and Transport Blocks (TB).
+allocated and ready to use.
+
+The baseband framework supports FEC coding on Code Blocks (CB) and
+Transport Blocks (TB).
 
 For the output buffer(s), the application is required to provide an allocated
-and free mbuf, so that bbdev write back the resulting output.
+and free mbuf, to which the resulting output will be written.
 
 The support of split "scattered" buffers is a driver-specific feature, so it is
 reported individually by the supporting driver as a capability.
@@ -436,26 +455,26 @@ This structure has three elements:
   This mbuf pointer can point to one Code Block (CB) data buffer or multiple CBs
   contiguously located next to each other. A Transport Block (TB) represents a
   whole piece of data that is divided into one or more CBs. Maximum number of
-  CBs can be contained in one TB is defined by ``RTE_BBDEV_MAX_CODE_BLOCKS``.
+  CBs can be contained in one TB is defined by
+  ``RTE_BBDEV_(TURBO/LDPC)MAX_CODE_BLOCKS``.
 
   An mbuf data structure cannot represent more than one TB. The smallest piece
   of data that can be contained in one mbuf is one CB.
   An mbuf can include one contiguous CB, subset of contiguous CBs that are
-  belonging to one TB, or all contiguous CBs that are belonging to one TB.
+  belonging to one TB, or all contiguous CBs that belong to one TB.
 
   If a BBDEV PMD supports the extended capability "Scatter-Gather", then it is
   capable of collecting (gathering) non-contiguous (scattered) data from
   multiple locations in the memory.
   This capability is reported by the capability flags:
 
-  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, and
+  - ``RTE_BBDEV_TURBO_ENC_SCATTER_GATHER``, ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``,
 
-  - ``RTE_BBDEV_TURBO_DEC_SCATTER_GATHER``.
+  - ``RTE_BBDEV_LDPC_ENC_SCATTER_GATHER``, ``RTE_BBDEV_LDPC_DEC_SCATTER_GATHER``.
 
-  Only if a BBDEV PMD supports this feature, chained mbuf data structures are
-  accepted. A chained mbuf can represent one non-contiguous CB or multiple
-  non-contiguous CBs.
-  The first mbuf segment in the given chained mbuf represents the first piece
+  Chained mbuf data structures are only accepted if a BBDEV PMD supports this
+  feature. A chained mbuf can represent one non-contiguous CB or multiple non-contiguous
+  CBs. The first mbuf segment in the given chained mbuf represents the first piece
   of the CB. Offset is only applicable to the first segment. ``length`` is the
   total length of the CB.
 
@@ -506,14 +525,22 @@ BBDEV Turbo Encode Operation
         };
     };
 
-The Turbo encode structure is composed of the ``input`` and ``output`` mbuf
-data pointers. The provided mbuf pointer of ``input`` needs to be big enough to
-stretch for extra CRC trailers.
+The Turbo encode structure includes the ``input`` and ``output`` mbuf
+data pointers. The provided mbuf pointer of ``input`` needs to be big
+enough to stretch for extra CRC trailers.
 
-``op_flags`` parameter holds all operation related flags, like whether CRC24A is
-included by the application or not.
+.. csv-table:: **struct rte_bbdev_op_turbo_enc** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","input CB or TB data"
+   "output","rate matched CB or TB output buffer"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
 
 The encode interface works on both the code block (CB) and the transport block
 (TB). An operation executes in "CB-mode" when the CB is standalone. While
@@ -525,21 +552,21 @@ are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-In case that the CB is smaller than Z (6144 bits), then effectively the TB = CB.
+In case that the TB is smaller than Z (6144 bits), then effectively the TB = CB.
 CRC24A is appended to the tail of the CB. The application is responsible for
 calculating and appending CRC24A before calling BBDEV in case that the
 underlying driver does not support CRC24A generation.
 
 In CB-mode, CRC24A/B is an optional operation.
-The input ``k`` is the size of the CB (this maps to K as described in 3GPP TS
-36.212 section 5.1.2), this size is inclusive of CRC24A/B.
+The CB parameter ``k`` is the size of the CB (this maps to K as described
+in 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
 Not all BBDEV PMDs are capable of CRC24A/B calculation. Flags
 ``RTE_BBDEV_TURBO_CRC_24A_ATTACH`` and ``RTE_BBDEV_TURBO_CRC_24B_ATTACH``
 informs the application with relevant capability. These flags can be set in the
-``op_flags`` parameter to indicate BBDEV to calculate and append CRC24A to CB
-before going forward with Turbo encoding.
+``op_flags`` parameter to indicate to BBDEV to calculate and append CRC24A/B
+to CB before going forward with Turbo encoding.
 
 Output format of the CB encode will have the encoded CB in ``e`` size output
 (this maps to E described in 3GPP TS 36.212 section 5.1.4.1.2). The output mbuf
@@ -600,13 +627,26 @@ BBDEV Turbo Decode Operation
         };
     };
 
-The Turbo decode structure is composed of the ``input`` and ``output`` mbuf
-data pointers.
-
-``op_flags`` parameter holds all operation related flags, like whether CRC24B is
-retained or not.
-
-``code_block_mode`` flag identifies the mode in which bbdev is operating in.
+The Turbo decode structure includes the ``input``, ``hard_output`` and
+optionally the ``soft_output`` mbuf data pointers.
+
+.. csv-table:: **struct rte_bbdev_op_turbo_dec** parameters
+   :header: "Parameter", "Description"
+   :widths: 10, 30
+
+   "input","virtual circular buffer, wk, size 3*Kpi for each CB"
+   "hard output","hard decisions buffer, decoded output, size K for each CB"
+   "soft output","soft LLR output buffer (optional)"
+   "op_flags","bitmask of all active operation capabilities"
+   "rv_index","redundancy version index [0..3]"
+   "iter_max","maximum number of iterations to perofrm in decode all CBs"
+   "iter_min","minimum number of iterations to perform in decoding all CBs"
+   "iter_count","number of iterations to performed in decoding all CBs"
+   "ext_scale","scale factor on extrinsic info (5 bits)"
+   "num_maps","number of MAP engines to use in decode"
+   "code_block_mode","code block or transport block mode"
+   "cb_params", "code block specific parameters (code block mode only)"
+   "tb_params", "transport block specific parameters (transport block mode only)"
 
 Similarly, the decode interface works on both the code block (CB) and the
 transport block (TB). An operation executes in "CB-mode" when the CB is
@@ -618,7 +658,8 @@ to a bigger TB are being enqueued.
   **NOTE:** It is assumed that all enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
   call belong to one mode, either CB-mode or TB-mode.
 
-The input ``k`` is the size of the decoded CB (this maps to K as described in
+
+The CB parameter ``k`` is the size of the decoded CB (this maps to K as described in
 3GPP TS 36.212 section 5.1.2), this size is inclusive of CRC24A/B.
 The ``length`` is inclusive of CRC24A/B and equals to ``k`` in this case.
 
@@ -638,9 +679,9 @@ Soft output is an optional capability for BBDEV PMDs. Setting flag
 CRC24B at the end of each CB. This might be useful for the application in debug
 mode.
 An LLR rate matched output is computed in the ``soft_output`` buffer structure
-for the given ``e`` size (this maps to E described in 3GPP TS 36.212 section
-5.1.4.1.2). The output mbuf buffer size needs to be big enough to hold the
-encoded buffer of size ``e``.
+for the given CB parameter ``e`` size (this maps to E described in
+3GPP TS 36.212 section 5.1.4.1.2). The output mbuf buffer size needs to be big
+enough to hold the encoded buffer of size ``e``.
 
 The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
 number of the remaining CB VCBs is calculated automatically by BBDEV before
@@ -669,6 +710,376 @@ TB-mode. CB-mode is a reduced version, where only one CB exists:
 
     Turbo decoding of Code Blocks in mbuf structure
 
+BBDEV LDPC Encode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC encode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC encode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_INTERLEAVER_BYPASS                                   |
+| Set to bypass bit-level interleaver on output stream               |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_RATE_MATCH                                           |
+| Set to enabling the RATE_MATCHING processing                       |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24A_ATTACH                                       |
+| Set to attach transport block CRC-24A                              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_24B_ATTACH                                       |
+| Set to attach code block CRC-24B                                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_16_ATTACH                                        |
+| Set to attach code block CRC-16                                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_INTERRUPTS                                       |
+| Set if a device supports encoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ENC_CONCATENATION                                    |
+| Set if a device supports concatenation of non byte aligned output  |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC encode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+    struct rte_bbdev_op_ldpc_enc {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_enc_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_enc_ldpc_tb_params tb_params;
+        };
+    };
+
+The LDPC encode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|output          |rate matched CB or TB output buffer                                 |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {2,4,6,8,10}                                   |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
++                +c_ab        +number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits, r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` is mandatory for all BBDEV PMDs and is the
+incoming code block or transport block data.
+
+The mbuf output ``output`` is mandatory and is the encoded CB(s). In
+CB-mode ut contains the encoded CB of size ``e`` (E  in 3GPP TS 38.212
+section 6.2.5). In TB-mode it contains multiple contiguous encoded CBs
+of size ``ea`` or ``eb``.
+The ``output`` buffer is allocated by the application with enough room
+for the output data.
+
+The encode interface works on both a code block (CB) and a transport
+block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_enc_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (attach CRC24B if required)
+* CB-mode: one CB making up one TB (attach CRC24A if required)
+* TB-mode: one or more CB of a partial TB (attach CRC24B(s) if required)
+* TB-mode: one or more CB of a complete TB (attach CRC24AB(s) if required)
+
+In CB-mode if ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is set then CRC24A
+is appended to the CB. If ``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` is not
+set the application is responsible for calculating and appending CRC24A
+before calling BBDEV. The input data mbuf ``length`` is inclusive of
+CRC24A/B where present and is equal to the code block size ``K``.
+
+In TB-mode, CRC24A is assumed to be pre-calculated and appended to the
+inbound TB data buffer, unless the ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+flag is set when it is the  responsibility of BBDEV. The input data
+mbuf ``length`` is total size of the CBs inclusive of any CRC24A and
+CRC24B in the case they were appended by the application.
+
+Not all BBDEV PMDs may be capable of CRC24A/B calculation. Flags
+``RTE_BBDEV_LDPC_CRC_24A_ATTACH`` and ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+inform the application of the relevant capability. These flags can be set
+in the ``op_flags`` parameter to indicate BBDEV to calculate and append
+CRC24A to CB before going forward with LDPC encoding.
+
+The difference between the partial and full-size TB is that BBDEV needs
+the index of the first CB in this group and the number of CBs in the group.
+The first CB index is given by ``r`` but the number of the CBs is
+calculated by BBDEV before signalling to the driver.
+
+The number of CBs in the group should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+Figure 13.1 above showing the Turbo encoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC encode.
+
+BBDEV LDPC Decode Operation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The operation flags that can be set for each LDPC decode operation are
+given below.
+
+  **NOTE:** The actual operation flags that may be used with a specific
+  BBDEV PMD are dependent on the driver capabilities as reported via
+  ``rte_bbdev_info_get()``, and may be a subset of those below.
+
++--------------------------------------------------------------------+
+|Description of LDPC decode capability flags                         |
++====================================================================+
+|RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK                                   |
+| Set for transport block CRC-24A checking                           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK                                   |
+| Set for code block CRC-24B checking                                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP                                    |
+| Set to drop the last CRC bits decoding output                      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS                                 |
+| Set for bit-level de-interleaver bypass on input stream            |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE                                 |
+| Set for HARQ combined input stream enable                          |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE                                |
+| Set for HARQ combined output stream enable                         |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_BYPASS                                        |
+| Set for LDPC decoder bypass                                        |
+|                                                                    |
+| RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set                   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DECODE_SOFT_OUT                                      |
+| Set for soft-output stream  enable                                 |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS                                   |
+| Set for Rate-Matching bypass on soft-out stream                    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS                        |
+| Set for bit-level de-interleaver bypass on soft-output stream      |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE                                |
+| Set for iteration stopping on successful decode condition enable   |
+|                                                                    |
+| Where a successful decode is a successful syndrome check           |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_INTERRUPTS                                       |
+| Set if a device supports decoder dequeue interrupts                |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_DEC_SCATTER_GATHER                                   |
+| Set if a device supports scatter-gather functionality              |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION                                |
+| Set if a device supports input/output HARQ compression             |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_LLR_COMPRESSION                                      |
+| Set if a device supports input LLR compression                     |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE                       |
+| Set if a device supports HARQ input to device's internal memory    |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE                      |
+| Set if a device supports HARQ output to device's internal memory   |
++--------------------------------------------------------------------+
+|RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK                        |
+| Set if a device supports loopback access to HARQ internal memory   |
++--------------------------------------------------------------------+
+
+The structure passed for each LDPC decode operation is given below,
+with the operation flags forming a bitmask in the ``op_flags`` field.
+
+.. code-block:: c
+
+
+    struct rte_bbdev_op_ldpc_dec {
+
+        struct rte_bbdev_op_data input;
+        struct rte_bbdev_op_data hard_output;
+        struct rte_bbdev_op_data soft_output;
+        struct rte_bbdev_op_data harq_combined_input;
+        struct rte_bbdev_op_data harq_combined_output;
+
+        uint32_t op_flags;
+        uint8_t rv_index;
+        uint8_t basegraph;
+        uint16_t z_c;
+        uint16_t n_cb;
+        uint8_t q_m;
+        uint16_t n_filler;
+        uint8_t iter_max;
+        uint8_t iter_count;
+        uint8_t code_block_mode;
+        union {
+            struct rte_bbdev_op_dec_ldpc_cb_params cb_params;
+            struct rte_bbdev_op_dec_ldpc_tb_params tb_params;
+        };
+    };
+
+
+The LDPC decode parameters are set out in the table below.
+
++----------------+--------------------------------------------------------------------+
+|Parameter       |Description                                                         |
++================+====================================================================+
+|input           |input CB or TB data                                                 |
++----------------+--------------------------------------------------------------------+
+|hard_output     |hard decisions buffer, decoded output                               |
++----------------+--------------------------------------------------------------------+
+|soft_output     |soft LLR output buffer (optional)                                   |
++----------------+--------------------------------------------------------------------+
+|harq_comb_input |HARQ combined input buffer (optional)                               |
++----------------+--------------------------------------------------------------------+
+|harq_comb_output|HARQ combined output buffer (optional)                              |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|rv_index        |redundancy version index [0..3]                                     |
++----------------+--------------------------------------------------------------------+
+|basegraph       |Basegraph 1 or 2                                                    |
++----------------+--------------------------------------------------------------------+
+|z_c             |Zc, LDPC lifting size                                               |
++----------------+--------------------------------------------------------------------+
+|n_cb            |Ncb, length of the circular buffer in bits.                         |
++----------------+--------------------------------------------------------------------+
+|q_m             |Qm, modulation order {1,2,4,6,8} from pi/2-BPSK to 256QAM           |
++----------------+--------------------------------------------------------------------+
+|n_filler        |number of filler bits                                               |
++----------------+--------------------------------------------------------------------+
+|iter_max        |maximum number of iterations to perform in decode all CBs           |
++----------------+--------------------------------------------------------------------+
+|iter_count      |number of iterations performed in decoding all CBs                  |
++----------------+--------------------------------------------------------------------+
+|code_block_mode |code block or transport block mode                                  |
++----------------+--------------------------------------------------------------------+
+|op_flags        |bitmask of all active operation capabilities                        |
++----------------+--------------------------------------------------------------------+
+|**cb_params**   |code block specific parameters (code block mode only)               |
++----------------+------------+-------------------------------------------------------+
+|                |e           |E, length of the rate matched output sequence in bits  |
++----------------+------------+-------------------------------------------------------+
+|**tb_params**   | transport block specific parameters (transport block mode only)    |
++----------------+------------+-------------------------------------------------------+
+|                |c           |number of CBs in the TB or partial TB                  |
++----------------+------------+-------------------------------------------------------+
+|                |r           |index of the first CB in the inbound mbuf data         |
++----------------+------------+-------------------------------------------------------+
+|                |c_ab        |number of CBs that use Ea before switching to Eb       |
++----------------+------------+-------------------------------------------------------+
+|                |ea          |Ea, length of the RM output sequence in bits, r < cab  |
++----------------+------------+-------------------------------------------------------+
+|                |eb          |Eb, length of the RM output sequence in bits  r >= cab |
++----------------+------------+-------------------------------------------------------+
+
+The mbuf input ``input`` encoded CB data is mandatory for all BBDEV PMDs
+and is the Virtual Circular Buffer data stream with null padding.
+Each byte in the input circular buffer is the LLR value of each bit of
+the original CB.
+
+The mbuf output ``hard_output`` is mandatory and is the decoded CBs size
+K (CRC24A/B is the last 24-bit in each decoded CB).
+
+The mbuf output ``soft_output`` is optional and is an LLR rate matched
+output of size ``e`` (this is ``E`` as per 3GPP TS 38.212 section 6.2.5).
+
+The mbuf input ``harq_combine_input`` is optional and is a buffer with
+the input to the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The mbuf output ``harq_combine_output`` is optional and is a buffer for
+the output of the HARQ combination function of the device. If the
+capability RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE is set
+then the HARQ is stored in memory internal to the device and not visible
+to BBDEV.
+
+The output mbuf data structures are expected to be allocated by the
+application with enough room for the output data.
+
+As with the LDPC encode, the decode interface works on both a code block
+(CB) and a transport block (TB) basis.
+
+  **NOTE:** All enqueued ops in one ``rte_bbdev_enqueue_dec_ops()``
+  call belong to one mode, either CB-mode or TB-mode.
+
+The valid modes of operation are:
+
+* CB-mode: one CB (check CRC24B if required)
+* CB-mode: one CB making up one TB (check CRC24A if required)
+* TB-mode: one or more CB making up a partial TB (check CRC24B(s) if required)
+* TB-mode: one or more CB making up a complete TB (check CRC24B(s) if required)
+
+The mbuf ``length`` is inclusive of CRC24A/B where present and is equal
+the code block size ``K``.
+
+The first CB Virtual Circular Buffer (VCB) index is given by ``r`` but the
+the number of the remaining CB VCBs is calculated automatically by BBDEV
+and passed down to the driver.
+
+The number of remaining CB VCBs should not be confused with ``c``, the
+total number of CBs in the full TB (``C`` as per 3GPP TS 38.212 section 5.2.2)
+
+The ``length`` is total size of the CBs inclusive of any CRC24A and CRC24B in
+case they were appended by the application.
+
+Figure 13.2 above showing the Turbo decoding of CBs using BBDEV
+interface in TB-mode is also valid for LDPC decode.
+
 
 Sample code
 -----------
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (2 preceding siblings ...)
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 3/7] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 5/7] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
                                 ` (3 subsequent siblings)
  7 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Implementation still based on Intel SDK libraries
optimized for AVX512 instructions set and 5GNR.
This can be also build for AVX2 for 4G capability or
without SDK dependency for maintenance.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 config/common_base                               |   1 +
 doc/guides/rel_notes/release_19_08.rst           |  15 +-
 drivers/baseband/turbo_sw/Makefile               |  15 +-
 drivers/baseband/turbo_sw/bbdev_turbo_software.c | 677 ++++++++++++++++++++++-
 drivers/baseband/turbo_sw/meson.build            |  10 +
 mk/rte.app.mk                                    |   8 +-
 6 files changed, 715 insertions(+), 11 deletions(-)

diff --git a/config/common_base b/config/common_base
index e5a4ebf..c2551b1 100644
--- a/config/common_base
+++ b/config/common_base
@@ -536,6 +536,7 @@ CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
 CONFIG_RTE_BBDEV_MAX_DEVS=128
 CONFIG_RTE_BBDEV_OFFLOAD_COST=y
 CONFIG_RTE_BBDEV_SDK_AVX2=n
+CONFIG_RTE_BBDEV_SDK_AVX512=n
 
 #
 # Compile PMD for NULL bbdev device
diff --git a/doc/guides/rel_notes/release_19_08.rst b/doc/guides/rel_notes/release_19_08.rst
index 55ae8ee..7c508fc 100644
--- a/doc/guides/rel_notes/release_19_08.rst
+++ b/doc/guides/rel_notes/release_19_08.rst
@@ -126,6 +126,20 @@ New Features
   Added telemetry mode to l3fwd-power application to report
   application level busyness, empty and full polls of rte_eth_rx_burst().
 
+* **Added a FPGA_LTE_FEC bbdev PMD.**
+
+  Added the new ``fpga_lte_fec`` bbdev driver for the Intel® FPGA PAC
+  (Programmable  Acceleration Card) N3000.  See the
+  :doc:`../bbdevs/fpga_lte_fec` BBDEV guide for more details on this new driver.
+
+* **Updated TURBO_SW bbdev PMD.**
+
+  Updated the ``turbo_sw`` bbdev driver with changes including:
+
+  * Added option to build the driver with or without dependency of external
+    SDK libraries.
+  * Added support for 5GNR encode/decode operations.
+
 Removed Items
 -------------
 
@@ -165,7 +179,6 @@ API Changes
   structure (``rte_crypto_cipher_xform``, ``rte_crypto_auth_xform``, and
   ``rte_crypto_aead_xform``) have been changed to ``const uint8_t *data``.
 
-
 ABI Changes
 -----------
 
diff --git a/drivers/baseband/turbo_sw/Makefile b/drivers/baseband/turbo_sw/Makefile
index 414d0d9..4aa05d2 100644
--- a/drivers/baseband/turbo_sw/Makefile
+++ b/drivers/baseband/turbo_sw/Makefile
@@ -3,7 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-
 # library name
 LIB = librte_pmd_bbdev_turbo_sw.a
 
@@ -34,6 +33,20 @@ LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
 LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
 endif
 
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),n)
+$(error "CONFIG_RTE_BBDEV_SDK_AVX512 requires CONFIG_RTE_BBDEV_SDK_AVX2 set")
+endif
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
+CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif
+
 # library version
 LIBABIVER := 1
 
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 5551f84..2f06369 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -14,11 +14,24 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_pmd.h>
 
+#include <rte_common.h>
+#include <rte_hexdump.h>
+#include <rte_log.h>
+
 #ifdef RTE_BBDEV_SDK_AVX2
+#include <ipp.h>
+#include <ipps.h>
 #include <phy_turbo.h>
 #include <phy_crc.h>
 #include <phy_rate_match.h>
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+#include <bit_reverse.h>
+#include <phy_ldpc_encoder_5gnr.h>
+#include <phy_ldpc_decoder_5gnr.h>
+#include <phy_LDPC_ratematch_5gnr.h>
+#include <phy_rate_dematching_5gnr.h>
+#endif
 
 #define DRIVER_NAME baseband_turbo_sw
 
@@ -84,6 +97,7 @@ struct turbo_sw_queue {
 	enum rte_bbdev_op_type type;
 } __rte_cache_aligned;
 
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline char *
 mbuf_append(struct rte_mbuf *m_head, struct rte_mbuf *m, uint16_t len)
@@ -180,20 +194,53 @@ struct turbo_sw_queue {
 			}
 		},
 #endif
+#ifdef RTE_BBDEV_SDK_AVX512
+		{
+			.type   = RTE_BBDEV_OP_LDPC_ENC,
+			.cap.ldpc_enc = {
+				.capability_flags =
+						RTE_BBDEV_LDPC_RATE_MATCH |
+						RTE_BBDEV_LDPC_CRC_24A_ATTACH |
+						RTE_BBDEV_LDPC_CRC_24B_ATTACH,
+				.num_buffers_src =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+				.num_buffers_dst =
+						RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			}
+		},
+		{
+		.type   = RTE_BBDEV_OP_LDPC_DEC,
+		.cap.ldpc_dec = {
+			.capability_flags =
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK |
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP |
+					RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE |
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE |
+					RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE,
+			.llr_size = 8,
+			.llr_decimals = 2,
+			.harq_memory_size = 0,
+			.num_buffers_src =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_hard_out =
+					RTE_BBDEV_LDPC_MAX_CODE_BLOCKS,
+			.num_buffers_soft_out = 0,
+		}
+		},
+#endif
 		RTE_BBDEV_END_OF_CAPABILITIES_LIST()
 	};
 
 	static struct rte_bbdev_queue_conf default_queue_conf = {
 		.queue_size = RTE_BBDEV_QUEUE_SIZE_LIMIT,
 	};
-
 #ifdef RTE_BBDEV_SDK_AVX2
 	static const enum rte_cpu_flag_t cpu_flag = RTE_CPUFLAG_SSE4_2;
 	dev_info->cpu_flag_reqs = &cpu_flag;
 #else
 	dev_info->cpu_flag_reqs = NULL;
 #endif
-
 	default_queue_conf.socket = dev->data->socket_id;
 
 	dev_info->driver_name = RTE_STR(DRIVER_NAME);
@@ -280,7 +327,7 @@ struct turbo_sw_queue {
 		return -ENAMETOOLONG;
 	}
 	q->enc_in = rte_zmalloc_socket(name,
-			(RTE_BBDEV_TURBO_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
+			(RTE_BBDEV_LDPC_MAX_CB_SIZE >> 3) * sizeof(*q->enc_in),
 			RTE_CACHE_LINE_SIZE, queue_conf->socket);
 	if (q->enc_in == NULL) {
 		rte_bbdev_log(ERR,
@@ -288,7 +335,7 @@ struct turbo_sw_queue {
 		goto free_q;
 	}
 
-	/* Allocate memory for Aplha Gamma temp buffer. */
+	/* Allocate memory for Alpha Gamma temp buffer. */
 	ret = snprintf(name, RTE_RING_NAMESIZE, RTE_STR(DRIVER_NAME)"_ag%u:%u",
 			dev->data->dev_id, q_id);
 	if ((ret < 0) || (ret >= (int)RTE_RING_NAMESIZE)) {
@@ -423,6 +470,7 @@ struct turbo_sw_queue {
 };
 
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 /* Checks if the encoder input buffer is correct.
  * Returns 0 if it's valid, -1 otherwise.
  */
@@ -478,16 +526,21 @@ struct turbo_sw_queue {
 	return 0;
 }
 #endif
+#endif
 
 static inline void
 process_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		uint8_t r, uint8_t c, uint16_t k, uint16_t ncb,
 		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
-		struct rte_mbuf *m_out, uint16_t in_offset, uint16_t out_offset,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
 		uint16_t in_length, struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int16_t k_idx;
 	uint16_t m;
 	uint8_t *in, *out0, *out1, *out2, *tmp_out, *rm_out;
@@ -511,11 +564,14 @@ struct turbo_sw_queue {
 	/* CRC24A (for TB) */
 	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH) &&
 		(enc->code_block_mode == 1)) {
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if not use
@@ -544,11 +600,14 @@ struct turbo_sw_queue {
 #endif
 	} else if (enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) {
 		/* CRC24B */
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 		ret = is_enc_input_valid(k - 24, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
+#endif
+
 		crc_req.data = in;
 		crc_req.len = k - 24;
 		/* Check if there is a room for CRC bits if this is the last
@@ -575,13 +634,16 @@ struct turbo_sw_queue {
 #ifdef RTE_BBDEV_OFFLOAD_COST
 		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
-	} else {
+	}
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
+	else {
 		ret = is_enc_input_valid(k, k_idx, in_length);
 		if (ret != 0) {
 			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 			return;
 		}
 	}
+#endif
 
 	/* Turbo encoder */
 
@@ -757,6 +819,143 @@ struct turbo_sw_queue {
 #endif
 }
 
+
+static inline void
+process_ldpc_enc_cb(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		uint32_t e, struct rte_mbuf *m_in, struct rte_mbuf *m_out_head,
+		struct rte_mbuf *m_out,	uint16_t in_offset, uint16_t out_offset,
+		uint16_t seg_total_left, struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(seg_total_left);
+	uint8_t *in, *rm_out;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	struct bblib_ldpc_encoder_5gnr_request ldpc_req;
+	struct bblib_ldpc_encoder_5gnr_response ldpc_resp;
+	struct bblib_LDPC_ratematch_5gnr_request rm_req;
+	struct bblib_LDPC_ratematch_5gnr_response rm_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	uint16_t msgLen, puntBits, parity_offset, out_len;
+	uint16_t K = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+	uint16_t in_length_in_bits = K - enc->n_filler;
+	uint16_t in_length_in_bytes = (in_length_in_bits + 7) >> 3;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	/* Masking the Filler bits explicitly */
+	memset(q->enc_in  + (in_length_in_bytes - 3), 0,
+			((K + 7) >> 3) - (in_length_in_bytes - 3));
+	/* CRC Generation */
+	if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24A_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24a_gen(&crc_req, &crc_resp);
+	} else if (enc->op_flags & RTE_BBDEV_LDPC_CRC_24B_ATTACH) {
+		rte_memcpy(q->enc_in, in, in_length_in_bytes - 3);
+		crc_req.data = in;
+		crc_req.len = in_length_in_bits - 24;
+		crc_resp.data = q->enc_in;
+		bblib_lte_crc24b_gen(&crc_req, &crc_resp);
+	} else
+		rte_memcpy(q->enc_in, in, in_length_in_bytes);
+
+	/* LDPC Encoding */
+	ldpc_req.Zc = enc->z_c;
+	ldpc_req.baseGraph = enc->basegraph;
+	/* Number of rows set to maximum */
+	ldpc_req.nRows = ldpc_req.baseGraph == 1 ? 46 : 42;
+	ldpc_req.numberCodeblocks = 1;
+	ldpc_req.input[0] = (int8_t *) q->enc_in;
+	ldpc_resp.output[0] = (int8_t *) q->enc_out;
+
+	bblib_bit_reverse(ldpc_req.input[0], in_length_in_bytes << 3);
+
+	if (bblib_ldpc_encoder_5gnr(&ldpc_req, &ldpc_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "LDPC Encoder failed");
+		return;
+	}
+
+	/*
+	 * Systematic + Parity : Recreating stream with filler bits, ideally
+	 * the bit select could handle this in the RM SDK
+	 */
+	msgLen = (ldpc_req.baseGraph == 1 ? 22 : 10) * ldpc_req.Zc;
+	puntBits = 2 * ldpc_req.Zc;
+	parity_offset = msgLen - puntBits;
+	ippsCopyBE_1u(((uint8_t *) ldpc_req.input[0]) + (puntBits / 8),
+			puntBits%8, q->adapter_output, 0, parity_offset);
+	ippsCopyBE_1u(q->enc_out, 0, q->adapter_output + (parity_offset / 8),
+			parity_offset % 8, ldpc_req.nRows * ldpc_req.Zc);
+
+	out_len = (e + 7) >> 3;
+	/* get output data starting address */
+	rm_out = (uint8_t *)mbuf_append(m_out_head, m_out, out_len);
+	if (rm_out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in output mbuf");
+		return;
+	}
+	/*
+	 * rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	rm_out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+
+	/* Rate-Matching */
+	rm_req.E = e;
+	rm_req.Ncb = enc->n_cb;
+	rm_req.Qm = enc->q_m;
+	rm_req.Zc = enc->z_c;
+	rm_req.baseGraph = enc->basegraph;
+	rm_req.input = q->adapter_output;
+	rm_req.nLen = enc->n_filler;
+	rm_req.nullIndex = parity_offset - enc->n_filler;
+	rm_req.rvidx = enc->rv_index;
+	rm_resp.output = q->deint_output;
+
+	if (bblib_LDPC_ratematch_5gnr(&rm_req, &rm_resp) != 0) {
+		op->status |= 1 << RTE_BBDEV_DRV_ERROR;
+		rte_bbdev_log(ERR, "Rate matching failed");
+		return;
+	}
+
+	/* RM SDK may provide non zero bits on last byte */
+	if ((e % 8) != 0)
+		q->deint_output[out_len-1] &= (1 << (e % 8)) - 1;
+
+	bblib_bit_reverse((int8_t *) q->deint_output, out_len << 3);
+
+	rte_memcpy(rm_out, q->deint_output, out_len);
+	enc->output.length += out_len;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(seg_total_left);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
 static inline void
 enqueue_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
 		struct rte_bbdev_stats *queue_stats)
@@ -850,6 +1049,93 @@ struct turbo_sw_queue {
 	}
 }
 
+
+static inline void
+enqueue_ldpc_enc_one_op(struct turbo_sw_queue *q, struct rte_bbdev_enc_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r, crc24_bits = 0;
+	uint32_t e;
+	struct rte_bbdev_op_ldpc_enc *enc = &op->ldpc_enc;
+	uint16_t in_offset = enc->input.offset;
+	uint16_t out_offset = enc->output.offset;
+	struct rte_mbuf *m_in = enc->input.data;
+	struct rte_mbuf *m_out = enc->output.data;
+	struct rte_mbuf *m_out_head = enc->output.data;
+	uint32_t in_length, mbuf_total_left = enc->input.length;
+
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (mbuf_total_left > RTE_BBDEV_TURBO_MAX_TB_SIZE >> 3) {
+		rte_bbdev_log(ERR, "TB size (%u) is too big, max: %d",
+				mbuf_total_left, RTE_BBDEV_TURBO_MAX_TB_SIZE);
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if ((enc->op_flags & RTE_BBDEV_TURBO_CRC_24B_ATTACH) ||
+		(enc->op_flags & RTE_BBDEV_TURBO_CRC_24A_ATTACH))
+		crc24_bits = 24;
+
+	if (enc->code_block_mode == 0) { /* For Transport Block mode */
+		c = enc->tb_params.c;
+		r = enc->tb_params.r;
+	} else { /* For Code Block mode */
+		c = 1;
+		r = 0;
+	}
+
+	while (mbuf_total_left > 0 && r < c) {
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		if (enc->code_block_mode == 0) {
+			e = (r < enc->tb_params.cab) ?
+				enc->tb_params.ea : enc->tb_params.eb;
+		} else {
+			e = enc->cb_params.e;
+		}
+
+		process_ldpc_enc_cb(q, op, e, m_in, m_out_head,
+				m_out, in_offset, out_offset, seg_total_left,
+				queue_stats);
+		/* Update total_left */
+		in_length = (enc->basegraph == 1 ? 22 : 10) * enc->z_c;
+		in_length = ((in_length - crc24_bits - enc->n_filler) >> 3);
+		mbuf_total_left -= in_length;
+		/* Update offsets for next CBs (if exist) */
+		in_offset += in_length;
+		out_offset += (e + 7) >> 3;
+
+		/* Update offsets */
+		if (seg_total_left == in_length) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			in_offset = 0;
+			out_offset = 0;
+		}
+		r++;
+	}
+
+	/* check if all input data was processed */
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included CBs sizes %d",
+				mbuf_total_left);
+	}
+}
+
 static inline uint16_t
 enqueue_enc_all_ops(struct turbo_sw_queue *q, struct rte_bbdev_enc_op **ops,
 		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
@@ -866,6 +1152,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_enc_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_enc_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_enc_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 #ifdef RTE_BBDEV_SDK_AVX2
 static inline void
 move_padding_bytes(const uint8_t *in, uint8_t *out, uint16_t k,
@@ -890,7 +1193,11 @@ struct turbo_sw_queue {
 		struct rte_bbdev_stats *q_stats)
 {
 #ifdef RTE_BBDEV_SDK_AVX2
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	int ret;
+#else
+	RTE_SET_USED(in_length);
+#endif
 	int32_t k_idx;
 	int32_t iter_cnt;
 	uint8_t *in, *out, *adapter_input;
@@ -908,11 +1215,13 @@ struct turbo_sw_queue {
 
 	k_idx = compute_idx(k);
 
+#ifdef RTE_LIBRTE_BBDEV_DEBUG
 	ret = is_dec_input_valid(k_idx, kw, in_length);
 	if (ret != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		return;
 	}
+#endif
 
 	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
 	ncb = kw;
@@ -928,11 +1237,12 @@ struct turbo_sw_queue {
 		deint_resp.pinteleavebuffer = q->deint_output;
 
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		start_time = rte_rdtsc_precise();
+	start_time = rte_rdtsc_precise();
 #endif
+		/* Sub-block De-Interleaving */
 		bblib_deinterleave_ul(&deint_req, &deint_resp);
 #ifdef RTE_BBDEV_OFFLOAD_COST
-		q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
 #endif
 	} else
 		move_padding_bytes(in, q->deint_output, k, ncb);
@@ -1025,6 +1335,202 @@ struct turbo_sw_queue {
 }
 
 static inline void
+process_ldpc_dec_cb(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		uint8_t c, uint16_t out_length, uint16_t e,
+		struct rte_mbuf *m_in,
+		struct rte_mbuf *m_out_head, struct rte_mbuf *m_out,
+		struct rte_mbuf *m_harq_in,
+		struct rte_mbuf *m_harq_out_head, struct rte_mbuf *m_harq_out,
+		uint16_t in_offset, uint16_t out_offset,
+		uint16_t harq_in_offset, uint16_t harq_out_offset,
+		bool check_crc_24b,
+		uint16_t crc24_overlap, uint16_t in_length,
+		struct rte_bbdev_stats *q_stats)
+{
+#ifdef RTE_BBDEV_SDK_AVX512
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(c);
+	uint8_t *in, *out, *harq_in, *harq_out, *adapter_input;
+	struct bblib_rate_dematching_5gnr_request derm_req;
+	struct bblib_rate_dematching_5gnr_response derm_resp;
+	struct bblib_ldpc_decoder_5gnr_request dec_req;
+	struct bblib_ldpc_decoder_5gnr_response dec_resp;
+	struct bblib_crc_request crc_req;
+	struct bblib_crc_response crc_resp;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	uint16_t K, parity_offset, sys_cols, outLenWithCrc;
+	int16_t deRmOutSize, numRows;
+
+	/* Compute some LDPC BG lengths */
+	outLenWithCrc = out_length + (crc24_overlap >> 3);
+	sys_cols = (dec->basegraph == 1) ? 22 : 10;
+	K = sys_cols * dec->z_c;
+	parity_offset = K - 2 * dec->z_c;
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	uint64_t start_time = rte_rdtsc_precise();
+#else
+	RTE_SET_USED(q_stats);
+#endif
+
+	in = rte_pktmbuf_mtod_offset(m_in, uint8_t *, in_offset);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE)) {
+		/**
+		 *  Single contiguous block from the first LLR of the
+		 *  circular buffer.
+		 */
+		harq_in = NULL;
+		if (m_harq_in != NULL)
+			harq_in = rte_pktmbuf_mtod_offset(m_harq_in,
+				uint8_t *, harq_in_offset);
+		if (harq_in == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in harq input mbuf");
+			return;
+		}
+		uint16_t harq_in_length = RTE_MIN(
+				dec->harq_combined_input.length,
+				(uint32_t) dec->n_cb);
+		memset(q->ag + harq_in_length, 0,
+				dec->n_cb - harq_in_length);
+		rte_memcpy(q->ag, harq_in, harq_in_length);
+	}
+
+	derm_req.p_in = (int8_t *) in;
+	derm_req.p_harq = q->ag; /* This doesn't include the filler bits */
+	derm_req.base_graph = dec->basegraph;
+	derm_req.zc = dec->z_c;
+	derm_req.ncb = dec->n_cb;
+	derm_req.e = e;
+	derm_req.k0 = 0; /* Actual output from SDK */
+	derm_req.isretx = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE);
+	derm_req.rvid = dec->rv_index;
+	derm_req.modulation_order = dec->q_m;
+	derm_req.start_null_index = parity_offset - dec->n_filler;
+	derm_req.num_of_null = dec->n_filler;
+
+	bblib_rate_dematching_5gnr(&derm_req, &derm_resp);
+
+	/* Compute RM out size and number of rows */
+	deRmOutSize = RTE_MIN(
+			derm_req.k0 + derm_req.e -
+			((derm_req.k0 < derm_req.start_null_index) ?
+					0 : dec->n_filler),
+			dec->n_cb - dec->n_filler);
+	if (m_harq_in != NULL)
+		deRmOutSize = RTE_MAX(deRmOutSize,
+				RTE_MIN(dec->n_cb - dec->n_filler,
+						m_harq_in->data_len));
+	numRows = ((deRmOutSize + dec->n_filler + dec->z_c - 1) / dec->z_c)
+			- sys_cols + 2;
+	numRows = RTE_MAX(4, numRows);
+
+	/* get output data starting address */
+	out = (uint8_t *)mbuf_append(m_out_head, m_out, out_length);
+	if (out == NULL) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Too little space in LDPC decoder output mbuf");
+		return;
+	}
+
+	/* rte_bbdev_op_data.offset can be different than the offset
+	 * of the appended bytes
+	 */
+	out = rte_pktmbuf_mtod_offset(m_out, uint8_t *, out_offset);
+	adapter_input = q->enc_out;
+
+	dec_req.Zc = dec->z_c;
+	dec_req.baseGraph = dec->basegraph;
+	dec_req.nRows = numRows;
+	dec_req.numChannelLlrs = deRmOutSize;
+	dec_req.varNodes = derm_req.p_harq;
+	dec_req.numFillerBits = dec->n_filler;
+	dec_req.maxIterations = dec->iter_max;
+	dec_req.enableEarlyTermination = check_bit(dec->op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE);
+	dec_resp.varNodes = (int16_t *) q->adapter_output;
+	dec_resp.compactedMessageBytes = q->enc_out;
+
+	bblib_ldpc_decoder_5gnr(&dec_req, &dec_resp);
+
+	dec->iter_count = RTE_MAX(dec_resp.iterationAtTermination,
+			dec->iter_count);
+	if (!dec_resp.parityPassedAtTermination)
+		op->status |= 1 << RTE_BBDEV_SYNDROME_ERROR;
+
+	bblib_bit_reverse((int8_t *) q->enc_out, outLenWithCrc << 3);
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK) ||
+			check_bit(dec->op_flags,
+					RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK)) {
+		crc_req.data = adapter_input;
+		crc_req.len  = K - dec->n_filler - 24;
+		crc_resp.check_passed = false;
+		crc_resp.data = adapter_input;
+		if (check_crc_24b)
+			bblib_lte_crc24b_check(&crc_req, &crc_resp);
+		else
+			bblib_lte_crc24a_check(&crc_req, &crc_resp);
+		if (!crc_resp.check_passed)
+			op->status |= 1 << RTE_BBDEV_CRC_ERROR;
+	}
+
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	q_stats->acc_offload_cycles += rte_rdtsc_precise() - start_time;
+#endif
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE)) {
+		harq_out = NULL;
+		if (m_harq_out != NULL) {
+			/* Initialize HARQ data length since we overwrite */
+			m_harq_out->data_len = 0;
+			/* Check there is enough space
+			 * in the HARQ outbound buffer
+			 */
+			harq_out = (uint8_t *)mbuf_append(m_harq_out_head,
+					m_harq_out, deRmOutSize);
+		}
+		if (harq_out == NULL) {
+			op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+			rte_bbdev_log(ERR, "No space in HARQ output mbuf");
+			return;
+		}
+		/* get output data starting address and overwrite the data */
+		harq_out = rte_pktmbuf_mtod_offset(m_harq_out, uint8_t *,
+				harq_out_offset);
+		rte_memcpy(harq_out, derm_req.p_harq, deRmOutSize);
+		dec->harq_combined_output.length += deRmOutSize;
+	}
+
+	rte_memcpy(out, adapter_input, out_length);
+	dec->hard_output.length += out_length;
+#else
+	RTE_SET_USED(q);
+	RTE_SET_USED(op);
+	RTE_SET_USED(c);
+	RTE_SET_USED(out_length);
+	RTE_SET_USED(e);
+	RTE_SET_USED(m_in);
+	RTE_SET_USED(m_out_head);
+	RTE_SET_USED(m_out);
+	RTE_SET_USED(m_harq_in);
+	RTE_SET_USED(m_harq_out_head);
+	RTE_SET_USED(m_harq_out);
+	RTE_SET_USED(harq_in_offset);
+	RTE_SET_USED(harq_out_offset);
+	RTE_SET_USED(in_offset);
+	RTE_SET_USED(out_offset);
+	RTE_SET_USED(check_crc_24b);
+	RTE_SET_USED(crc24_overlap);
+	RTE_SET_USED(in_length);
+	RTE_SET_USED(q_stats);
+#endif
+}
+
+
+static inline void
 enqueue_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
 		struct rte_bbdev_stats *queue_stats)
 {
@@ -1083,6 +1589,7 @@ struct turbo_sw_queue {
 				in_offset, out_offset, check_bit(dec->op_flags,
 				RTE_BBDEV_TURBO_CRC_TYPE_24B), crc24_overlap,
 				seg_total_left, queue_stats);
+
 		/* To keep CRC24 attached to end of Code block, use
 		 * RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag as it
 		 * removed by default once verified.
@@ -1104,6 +1611,103 @@ struct turbo_sw_queue {
 		}
 		r++;
 	}
+
+	if (mbuf_total_left != 0) {
+		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
+		rte_bbdev_log(ERR,
+				"Mismatch between mbuf length and included Circular buffer sizes");
+	}
+}
+
+static inline void
+enqueue_ldpc_dec_one_op(struct turbo_sw_queue *q, struct rte_bbdev_dec_op *op,
+		struct rte_bbdev_stats *queue_stats)
+{
+	uint8_t c, r = 0;
+	uint16_t e, out_length;
+	uint16_t crc24_overlap = 0;
+	struct rte_bbdev_op_ldpc_dec *dec = &op->ldpc_dec;
+	struct rte_mbuf *m_in = dec->input.data;
+	struct rte_mbuf *m_harq_in = dec->harq_combined_input.data;
+	struct rte_mbuf *m_harq_out = dec->harq_combined_output.data;
+	struct rte_mbuf *m_harq_out_head = dec->harq_combined_output.data;
+	struct rte_mbuf *m_out = dec->hard_output.data;
+	struct rte_mbuf *m_out_head = dec->hard_output.data;
+	uint16_t in_offset = dec->input.offset;
+	uint16_t harq_in_offset = dec->harq_combined_input.offset;
+	uint16_t harq_out_offset = dec->harq_combined_output.offset;
+	uint16_t out_offset = dec->hard_output.offset;
+	uint32_t mbuf_total_left = dec->input.length;
+	uint16_t seg_total_left;
+
+	/* Clear op status */
+	op->status = 0;
+
+	if (m_in == NULL || m_out == NULL) {
+		rte_bbdev_log(ERR, "Invalid mbuf pointer");
+		op->status = 1 << RTE_BBDEV_DATA_ERROR;
+		return;
+	}
+
+	if (dec->code_block_mode == 0) { /* For Transport Block mode */
+		c = dec->tb_params.c;
+		e = dec->tb_params.ea;
+	} else { /* For Code Block mode */
+		c = 1;
+		e = dec->cb_params.e;
+	}
+
+	if (check_bit(dec->op_flags, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP))
+		crc24_overlap = 24;
+
+	out_length = (dec->basegraph == 1 ? 22 : 10) * dec->z_c; /* K */
+	out_length = ((out_length - crc24_overlap - dec->n_filler) >> 3);
+
+	while (mbuf_total_left > 0) {
+		if (dec->code_block_mode == 0)
+			e = (r < dec->tb_params.cab) ?
+				dec->tb_params.ea : dec->tb_params.eb;
+
+		seg_total_left = rte_pktmbuf_data_len(m_in) - in_offset;
+
+		process_ldpc_dec_cb(q, op, c, out_length, e,
+				m_in, m_out_head, m_out,
+				m_harq_in, m_harq_out_head, m_harq_out,
+				in_offset, out_offset, harq_in_offset,
+				harq_out_offset,
+				check_bit(dec->op_flags,
+				RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK),
+				crc24_overlap,
+				seg_total_left, queue_stats);
+
+		/* To keep CRC24 attached to end of Code block, use
+		 * RTE_BBDEV_LDPC_DEC_TB_CRC_24B_KEEP flag as it
+		 * removed by default once verified.
+		 */
+
+		mbuf_total_left -= e;
+
+		/* Update offsets */
+		if (seg_total_left == e) {
+			/* Go to the next mbuf */
+			m_in = m_in->next;
+			m_out = m_out->next;
+			if (m_harq_in != NULL)
+				m_harq_in = m_harq_in->next;
+			if (m_harq_out != NULL)
+				m_harq_out = m_harq_out->next;
+			in_offset = 0;
+			out_offset = 0;
+			harq_in_offset = 0;
+			harq_out_offset = 0;
+		} else {
+			/* Update offsets for next CBs (if exist) */
+			in_offset += e;
+			out_offset += out_length;
+		}
+		r++;
+	}
+
 	if (mbuf_total_left != 0) {
 		op->status |= 1 << RTE_BBDEV_DATA_ERROR;
 		rte_bbdev_log(ERR,
@@ -1127,6 +1731,23 @@ struct turbo_sw_queue {
 			NULL);
 }
 
+static inline uint16_t
+enqueue_ldpc_dec_all_ops(struct turbo_sw_queue *q,
+		struct rte_bbdev_dec_op **ops,
+		uint16_t nb_ops, struct rte_bbdev_stats *queue_stats)
+{
+	uint16_t i;
+#ifdef RTE_BBDEV_OFFLOAD_COST
+	queue_stats->acc_offload_cycles = 0;
+#endif
+
+	for (i = 0; i < nb_ops; ++i)
+		enqueue_ldpc_dec_one_op(q, ops[i], queue_stats);
+
+	return rte_ring_enqueue_burst(q->processed_pkts, (void **)ops, nb_ops,
+			NULL);
+}
+
 /* Enqueue burst */
 static uint16_t
 enqueue_enc_ops(struct rte_bbdev_queue_data *q_data,
@@ -1146,6 +1767,24 @@ struct turbo_sw_queue {
 
 /* Enqueue burst */
 static uint16_t
+enqueue_ldpc_enc_ops(struct rte_bbdev_queue_data *q_data,
+		struct rte_bbdev_enc_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_enc_all_ops(
+			q, ops, nb_ops, &q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
+/* Enqueue burst */
+static uint16_t
 enqueue_dec_ops(struct rte_bbdev_queue_data *q_data,
 		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
 {
@@ -1161,6 +1800,24 @@ struct turbo_sw_queue {
 	return nb_enqueued;
 }
 
+/* Enqueue burst */
+static uint16_t
+enqueue_ldpc_dec_ops(struct rte_bbdev_queue_data *q_data,
+		 struct rte_bbdev_dec_op **ops, uint16_t nb_ops)
+{
+	void *queue = q_data->queue_private;
+	struct turbo_sw_queue *q = queue;
+	uint16_t nb_enqueued = 0;
+
+	nb_enqueued = enqueue_ldpc_dec_all_ops(q, ops, nb_ops,
+			&q_data->queue_stats);
+
+	q_data->queue_stats.enqueue_err_count += nb_ops - nb_enqueued;
+	q_data->queue_stats.enqueued_count += nb_enqueued;
+
+	return nb_enqueued;
+}
+
 /* Dequeue decode burst */
 static uint16_t
 dequeue_dec_ops(struct rte_bbdev_queue_data *q_data,
@@ -1273,6 +1930,10 @@ struct turbo_sw_queue {
 	bbdev->dequeue_dec_ops = dequeue_dec_ops;
 	bbdev->enqueue_enc_ops = enqueue_enc_ops;
 	bbdev->enqueue_dec_ops = enqueue_dec_ops;
+	bbdev->dequeue_ldpc_enc_ops = dequeue_enc_ops;
+	bbdev->dequeue_ldpc_dec_ops = dequeue_dec_ops;
+	bbdev->enqueue_ldpc_enc_ops = enqueue_ldpc_enc_ops;
+	bbdev->enqueue_ldpc_dec_ops = enqueue_ldpc_dec_ops;
 	((struct bbdev_private *) bbdev->data->dev_private)->max_nb_queues =
 			init_params->queues_num;
 
diff --git a/drivers/baseband/turbo_sw/meson.build b/drivers/baseband/turbo_sw/meson.build
index 438b5a7..33345aa 100644
--- a/drivers/baseband/turbo_sw/meson.build
+++ b/drivers/baseband/turbo_sw/meson.build
@@ -23,6 +23,16 @@ if dpdk_conf.has('RTE_BBDEV_SDK_AVX2')
 		includes += include_directories(path + '/lib_common')
 	endif
 endif
+if dpdk_conf.has('RTE_BBDEV_SDK_AVX512')
+	ext_deps += cc.find_library('libldpc_encoder_5gnr', dirs: [path + '/lib_ldpc_encoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libldpc_decoder_5gnr', dirs: [path + '/lib_ldpc_decoder_5gnr'], required: true)
+	ext_deps += cc.find_library('libLDPC_ratematch_5gnr', dirs: [path + '/lib_LDPC_ratematch_5gnr'], required: true)
+	ext_deps += cc.find_library('librate_dematching_5gnr', dirs: [path + '/lib_rate_dematching_5gnr'], required: true)
+	includes += include_directories(path + '/lib_ldpc_encoder_5gnr')
+	includes += include_directories(path + '/lib_ldpc_decoder_5gnr')
+	includes += include_directories(path + '/lib_LDPC_ratematch_5gnr')
+	includes += include_directories(path + '/lib_rate_dematching_5gnr')
+endif
 
 deps += ['bbdev', 'bus_vdev', 'ring']
 name = 'bbdev_turbo_sw'
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index c9fbdd6..1036df7 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -232,7 +232,13 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_crc -lcr
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_common -lcommon
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -lirc -limf -lstdc++ -lipps -lsvml
+ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
+endif # CONFIG_RTE_BBDEV_SDK_AVX512
 endif # CONFIG_RTE_BBDEV_SDK_AVX2
 endif # CONFIG_RTE_LIBRTE_BBDEV
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 5/7] docs/guides: updating building steps for BBDEV PMD
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (3 preceding siblings ...)
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 6/7] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
                                 ` (2 subsequent siblings)
  7 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

This now includes steps to build with either
libraries for AVX2, or AVX512 or no dependency.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 doc/guides/bbdevs/turbo_sw.rst | 42 +++++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

diff --git a/doc/guides/bbdevs/turbo_sw.rst b/doc/guides/bbdevs/turbo_sw.rst
index 455fa1d..2785a50 100644
--- a/doc/guides/bbdevs/turbo_sw.rst
+++ b/doc/guides/bbdevs/turbo_sw.rst
@@ -5,20 +5,21 @@ SW Turbo Poll Mode Driver
 =========================
 
 The SW Turbo PMD (**baseband_turbo_sw**) provides a software only poll mode bbdev
-driver that can optionally utilize Intel optimized libraries for LTE Layer 1
-workloads acceleration.
+driver that can optionally utilize Intel optimized libraries for LTE and 5GNR
+Layer 1 workloads acceleration.
 
 Note that the driver can also be built without any dependency with reduced
 functionality for maintenance purpose.
 
 To enable linking to the SDK libraries see detailed installation section below.
-One flag can be enabled depending on whether the target machine can support
-AVX2 instructions sets and the related SDK libraries for vectorized
+Two flags can be enabled depending on whether the target machine can support
+AVX2 and AVX512 instructions sets and the related SDK libraries for vectorized
 signal processing functions are installed :
 - CONFIG_RTE_BBDEV_SDK_AVX2
-
-By default this flag is disabled. For AVX2 machine and SDK
-library installed then this flag can be enabled.
+- CONFIG_RTE_BBDEV_SDK_AVX512
+By default these 2 flags are disabled by default. For AVX2 machine and SDK
+library installed then the first flag can be enabled. For AVX512 machine and
+SDK library installed then both flags can be enabled for full real time capability.
 
 This PMD supports the functions: FEC, Rate Matching and CRC functions detailed
 in the Features section.
@@ -45,11 +46,25 @@ For the LTE decode operation:
 * ``RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP``
 * ``RTE_BBDEV_TURBO_EARLY_TERMINATION``
 
+For the 5G NR LDPC encode operation:
+
+* ``RTE_BBDEV_LDPC_RATE_MATCH``
+* ``RTE_BBDEV_LDPC_CRC_24A_ATTACH``
+* ``RTE_BBDEV_LDPC_CRC_24B_ATTACH``
+
+For the 5G NR LDPC decode operation:
+
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK``
+* ``RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE``
+* ``RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE``
+* ``RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE``
 
 Limitations
 -----------
 
-* In-place operations for Turbo encode and decode are not supported
+* In-place operations for encode and decode are not supported
 
 Installation
 ------------
@@ -60,7 +75,7 @@ FlexRAN SDK Download
 As an option it is possible to link this driver with FleXRAN SDK libraries
 which can enable real time signal processing using AVX instructions.
 
-These libraries are available through this link `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
+These libraries are available through this `link <https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>`_.
 
 After download is complete, the user needs to unpack and compile on their
 system before building DPDK.
@@ -115,14 +130,13 @@ The following instructions should be followed in this exact order:
 
     .. code-block:: console
 
-        cd build-avx2-icc/
+        cd build-avx512-icc/
         make && make install
 
-
 Initialization
 --------------
 
-In order to enable this virtual bbdev PMD, the user must:
+In order to enable this virtual bbdev PMD, the user may:
 
 * Build the ``FLEXRAN SDK`` libraries (explained in Installation section).
 
@@ -137,9 +151,11 @@ Example:
     export FLEXRAN_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/install
     export DIR_WIRELESS_SDK=<path-to-workspace>/FlexRAN-FEC-SDK-19-04/sdk/build-avx2-icc/
 
-* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y``
+* Set ``CONFIG_RTE_BBDEV_SDK_AVX2=y`` and ``CONFIG_RTE_BBDEV_SDK_AVX512=y``
   in DPDK common configuration file ``config/common_base`` to be able to use
   the SDK libraries as mentioned above.
+  For AVX2 machine it is possible to only enable CONFIG_RTE_BBDEV_SDK_AVX2
+  for limited 4G functionality.
   If no flag are set the PMD driver will still build but its capabilities
   will be limited accordingly.
 
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 6/7] test-bbdev: update of bbdev test-app for 5GNR
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (4 preceding siblings ...)
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 5/7] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 7/7] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
  2019-07-03 18:05               ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Thomas Monjalon
  7 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Extending test framework for FEC 5GNR operations
for UT verification and profiling.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 app/test-bbdev/main.c                 |   48 +-
 app/test-bbdev/main.h                 |    6 +-
 app/test-bbdev/meson.build            |    3 +
 app/test-bbdev/test-bbdev.py          |    7 +
 app/test-bbdev/test_bbdev.c           |   12 +-
 app/test-bbdev/test_bbdev_perf.c      | 1233 ++++++++++++++++++++++++++++++---
 app/test-bbdev/test_bbdev_vector.c    |  509 +++++++++++++-
 app/test-bbdev/test_bbdev_vector.h    |   14 +-
 app/test-bbdev/turbo_enc_default.data |    2 +-
 9 files changed, 1711 insertions(+), 123 deletions(-)

diff --git a/app/test-bbdev/main.c b/app/test-bbdev/main.c
index a2f8722..8a42115 100644
--- a/app/test-bbdev/main.c
+++ b/app/test-bbdev/main.c
@@ -16,11 +16,13 @@
 
 #include "main.h"
 
+
 /* Defines how many testcases can be specified as cmdline args */
 #define MAX_CMDLINE_TESTCASES 8
 
 static const char tc_sep = ',';
 
+/* Declare structure for command line test parameters and options */
 static struct test_params {
 	struct test_command *test_to_run[MAX_CMDLINE_TESTCASES];
 	unsigned int num_tests;
@@ -28,6 +30,7 @@
 	unsigned int burst_sz;
 	unsigned int num_lcores;
 	char test_vector_filename[PATH_MAX];
+	bool init_device;
 } test_params;
 
 static struct test_commands_list commands_list =
@@ -46,9 +49,8 @@
 	unsigned int total = 0, skipped = 0, succeeded = 0, failed = 0;
 	uint64_t start, end;
 
-	printf(
-			"\n + ------------------------------------------------------- +\n");
-	printf(" + Starting Test Suite : %s\n", suite->suite_name);
+	printf("\n===========================================================\n");
+	printf("Starting Test Suite : %s\n", suite->suite_name);
 
 	start = rte_rdtsc_precise();
 
@@ -57,15 +59,13 @@
 		if (test_result == TEST_FAILED) {
 			printf(" + Test suite setup %s failed!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 1;
 		}
 		if (test_result == TEST_SKIPPED) {
 			printf(" + Test suite setup %s skipped!\n",
 					suite->suite_name);
-			printf(
-					" + ------------------------------------------------------- +\n");
+			printf(" + ------------------------------------------------------- +\n");
 			return 0;
 		}
 	}
@@ -82,15 +82,15 @@
 
 		if (test_result == TEST_SUCCESS) {
 			succeeded++;
-			printf(" + TestCase [%2d] : %s passed\n", total,
+			printf("TestCase [%2d] : %s passed\n", total,
 					suite->unit_test_cases[total].name);
 		} else if (test_result == TEST_SKIPPED) {
 			skipped++;
-			printf(" + TestCase [%2d] : %s skipped\n", total,
+			printf("TestCase [%2d] : %s skipped\n", total,
 					suite->unit_test_cases[total].name);
 		} else {
 			failed++;
-			printf(" + TestCase [%2d] : %s failed\n", total,
+			printf("TestCase [%2d] : %s failed\n", total,
 					suite->unit_test_cases[total].name);
 		}
 
@@ -103,7 +103,7 @@
 
 	end = rte_rdtsc_precise();
 
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 	printf(" + Test Suite Summary : %s\n", suite->suite_name);
 	printf(" + Tests Total :       %2d\n", total);
 	printf(" + Tests Skipped :     %2d\n", skipped);
@@ -111,7 +111,7 @@
 	printf(" + Tests Failed :      %2d\n", failed);
 	printf(" + Tests Lasted :       %lg ms\n",
 			((end - start) * 1000) / (double)rte_get_tsc_hz());
-	printf(" + ------------------------------------------------------- +\n");
+	printf(" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +\n");
 
 	return (failed > 0) ? 1 : 0;
 }
@@ -140,12 +140,18 @@
 	return test_params.num_lcores;
 }
 
+bool
+get_init_device(void)
+{
+	return test_params.init_device;
+}
+
 static void
 print_usage(const char *prog_name)
 {
 	struct test_command *t;
 
-	printf("Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
+	printf("***Usage: %s [EAL params] [-- [-n/--num-ops NUM_OPS]\n"
 			"\t[-b/--burst-size BURST_SIZE]\n"
 			"\t[-v/--test-vector VECTOR_FILE]\n"
 			"\t[-c/--test-cases TEST_CASE[,TEST_CASE,...]]]\n",
@@ -174,11 +180,12 @@
 		{ "test-cases", 1, 0, 'c' },
 		{ "test-vector", 1, 0, 'v' },
 		{ "lcores", 1, 0, 'l' },
+		{ "init-device", 0, 0, 'i'},
 		{ "help", 0, 0, 'h' },
 		{ NULL,  0, 0, 0 }
 	};
 
-	while ((opt = getopt_long(argc, argv, "hn:b:c:v:l:", lgopts,
+	while ((opt = getopt_long(argc, argv, "hin:b:c:v:l:", lgopts,
 			&option_index)) != EOF)
 		switch (opt) {
 		case 'n':
@@ -226,8 +233,9 @@
 			TEST_ASSERT(strlen(optarg) > 0,
 					"Config file name is null");
 
-			strlcpy(tp->test_vector_filename, optarg,
-				sizeof(tp->test_vector_filename));
+			snprintf(tp->test_vector_filename,
+					sizeof(tp->test_vector_filename),
+					"%s", optarg);
 			break;
 		case 'l':
 			TEST_ASSERT(strlen(optarg) > 0,
@@ -237,6 +245,10 @@
 					"Num of lcores mustn't be greater than %u",
 					RTE_MAX_LCORE);
 			break;
+		case 'i':
+			/* indicate fpga fec config required */
+			tp->init_device = true;
+			break;
 		case 'h':
 			print_usage(argv[0]);
 			return 0;
@@ -279,7 +291,7 @@
 	struct test_command *t;
 
 	TAILQ_FOREACH(t, &commands_list, next)
-		ret |= t->callback();
+		ret |= (int) t->callback();
 
 	return ret;
 }
@@ -291,7 +303,7 @@
 	unsigned int i;
 
 	for (i = 0; i < tp->num_tests; ++i)
-		ret |= tp->test_to_run[i]->callback();
+		ret |= (int) tp->test_to_run[i]->callback();
 
 	return ret;
 }
diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
index 2bbe1b8..23b4d58 100644
--- a/app/test-bbdev/main.h
+++ b/app/test-bbdev/main.h
@@ -20,6 +20,7 @@
 #define DEFAULT_BURST 32U
 #define DEFAULT_OPS 64U
 
+
 #define TEST_ASSERT(cond, msg, ...) do {  \
 		if (!(cond)) {  \
 			printf("TestCase %s() line %d failed: " \
@@ -103,7 +104,8 @@ struct test_command {
 		.command = RTE_STR(name), \
 		.callback = test_func_##name, \
 	}; \
-	RTE_INIT(test_register_##name) \
+	static void __attribute__((constructor, used)) \
+	test_register_##name(void) \
 	{ \
 		add_test_command(&test_struct_##name); \
 	}
@@ -116,4 +118,6 @@ struct test_command {
 
 unsigned int get_num_lcores(void);
 
+bool get_init_device(void);
+
 #endif
diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build
index eb8cc04..d3f2b77 100644
--- a/app/test-bbdev/meson.build
+++ b/app/test-bbdev/meson.build
@@ -7,3 +7,6 @@ sources = files('main.c',
 		'test_bbdev_vector.c')
 allow_experimental_apis = true
 deps += ['bbdev', 'bus_vdev']
+if dpdk_conf.has('RTE_LIBRTE_PMD_FPGA_LTE_FEC')
+	deps += ['bbdev_fpga_lte_fec']
+endif
\ No newline at end of file
diff --git a/app/test-bbdev/test-bbdev.py b/app/test-bbdev/test-bbdev.py
index 25340ec..0194be0 100755
--- a/app/test-bbdev/test-bbdev.py
+++ b/app/test-bbdev/test-bbdev.py
@@ -59,6 +59,9 @@ def kill(process):
                     type=int,
                     help="Number of lcores to run.",
                     default=16)
+parser.add_argument("-i", "--init-device",
+                    action='store_true',
+                    help="Initialise PF device with default values.")
 
 args = parser.parse_args()
 
@@ -82,6 +85,10 @@ def kill(process):
     params.extend(["-c"])
     params.extend([",".join(args.test_cases)])
 
+if args.init_device:
+    params.extend(["-i"])
+
+
 exit_status = 0
 for vector in args.test_vector:
     for burst_size in args.burst_size:
diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
index 137c74c..ac06d73 100644
--- a/app/test-bbdev/test_bbdev.c
+++ b/app/test-bbdev/test_bbdev.c
@@ -14,8 +14,6 @@
 #include <rte_bbdev.h>
 #include <rte_bbdev_op.h>
 #include <rte_bbdev_pmd.h>
-#include<string.h>
-#include <rte_string_fns.h>
 
 #include "main.h"
 
@@ -770,7 +768,7 @@ struct bbdev_testsuite_params {
 {
 	struct rte_bbdev *dev1, *dev2;
 	const char *name = "dev_name";
-	char name_tmp[16];
+	char name_tmp[32];
 	int num_devs, num_devs_tmp;
 
 	dev1 = rte_bbdev_allocate(NULL);
@@ -790,14 +788,14 @@ struct bbdev_testsuite_params {
 
 	/* Initialize the maximum amount of devices */
 	do {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_allocate(name_tmp);
 		TEST_ASSERT(dev2 != NULL,
 				"Failed to initialize bbdev driver");
 		++num_devs;
 	} while (num_devs < (RTE_BBDEV_MAX_DEVS - 1));
 
-	snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+	sprintf(name_tmp, "%s%i", "name_", num_devs);
 	dev2 = rte_bbdev_allocate(name_tmp);
 	TEST_ASSERT(dev2 == NULL, "Failed to initialize bbdev driver number %d "
 			"more drivers than RTE_BBDEV_MAX_DEVS: %d ", num_devs,
@@ -806,7 +804,7 @@ struct bbdev_testsuite_params {
 	num_devs--;
 
 	while (num_devs >= num_devs_tmp) {
-		snprintf(name_tmp, sizeof(name_tmp), "%s%i", "name_", num_devs);
+		sprintf(name_tmp, "%s%i", "name_", num_devs);
 		dev2 = rte_bbdev_get_named_dev(name_tmp);
 		TEST_ASSERT_SUCCESS(rte_bbdev_release(dev2),
 				"Failed to uninitialize bbdev driver %s ",
@@ -827,7 +825,7 @@ struct bbdev_testsuite_params {
 	TEST_ASSERT_FAIL(rte_bbdev_release(NULL),
 			"Failed to uninitialize bbdev driver with NULL bbdev");
 
-	strlcpy(name_tmp, "invalid_name", sizeof(name_tmp));
+	sprintf(name_tmp, "%s", "invalid_name");
 	dev2 = rte_bbdev_get_named_dev(name_tmp);
 	TEST_ASSERT_FAIL(rte_bbdev_release(dev2),
 			"Failed to uninitialize bbdev driver with invalid name");
diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index d18ddae..a166eaf 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -16,6 +16,11 @@
 #include <rte_malloc.h>
 #include <rte_random.h>
 #include <rte_hexdump.h>
+#include <rte_interrupts.h>
+
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#include <fpga_lte_fec.h>
+#endif
 
 #include "main.h"
 #include "test_bbdev_vector.h"
@@ -25,6 +30,18 @@
 #define MAX_QUEUES RTE_MAX_LCORE
 #define TEST_REPETITIONS 1000
 
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+#define FPGA_PF_DRIVER_NAME ("intel_fpga_lte_fec_pf")
+#define FPGA_VF_DRIVER_NAME ("intel_fpga_lte_fec_vf")
+#define VF_UL_QUEUE_VALUE 4
+#define VF_DL_QUEUE_VALUE 4
+#define UL_BANDWIDTH 3
+#define DL_BANDWIDTH 3
+#define UL_LOAD_BALANCE 128
+#define DL_LOAD_BALANCE 128
+#define FLR_TIMEOUT 610
+#endif
+
 #define OPS_CACHE_SIZE 256U
 #define OPS_POOL_SIZE_MIN 511U /* 0.5K per queue */
 
@@ -49,6 +66,8 @@
 	struct rte_mempool *in_mbuf_pool;
 	struct rte_mempool *hard_out_mbuf_pool;
 	struct rte_mempool *soft_out_mbuf_pool;
+	struct rte_mempool *harq_in_mbuf_pool;
+	struct rte_mempool *harq_out_mbuf_pool;
 } active_devs[RTE_BBDEV_MAX_DEVS];
 
 static uint8_t nb_active_devs;
@@ -58,6 +77,8 @@ struct test_buffers {
 	struct rte_bbdev_op_data *inputs;
 	struct rte_bbdev_op_data *hard_outputs;
 	struct rte_bbdev_op_data *soft_outputs;
+	struct rte_bbdev_op_data *harq_inputs;
+	struct rte_bbdev_op_data *harq_outputs;
 };
 
 /* Operation parameters specific for given test case */
@@ -128,6 +149,13 @@ typedef int (test_case_function)(struct active_device *ad,
 	} while (m != NULL);
 }
 
+/* Read flag value 0/1 from bitmap */
+static inline bool
+check_bit(uint32_t bitmap, uint32_t bitmask)
+{
+	return bitmap & bitmask;
+}
+
 static inline void
 set_avail_op(struct active_device *ad, enum rte_bbdev_op_type op_type)
 {
@@ -158,12 +186,15 @@ typedef int (test_case_function)(struct active_device *ad,
 check_dev_cap(const struct rte_bbdev_info *dev_info)
 {
 	unsigned int i;
-	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs;
+	unsigned int nb_inputs, nb_soft_outputs, nb_hard_outputs,
+		nb_harq_inputs, nb_harq_outputs;
 	const struct rte_bbdev_op_cap *op_cap = dev_info->drv.capabilities;
 
 	nb_inputs = test_vector.entries[DATA_INPUT].nb_segments;
 	nb_soft_outputs = test_vector.entries[DATA_SOFT_OUTPUT].nb_segments;
 	nb_hard_outputs = test_vector.entries[DATA_HARD_OUTPUT].nb_segments;
+	nb_harq_inputs  = test_vector.entries[DATA_HARQ_INPUT].nb_segments;
+	nb_harq_outputs = test_vector.entries[DATA_HARQ_OUTPUT].nb_segments;
 
 	for (i = 0; op_cap->type != RTE_BBDEV_OP_NONE; ++i, ++op_cap) {
 		if (op_cap->type != test_vector.op_type)
@@ -180,7 +211,7 @@ typedef int (test_case_function)(struct active_device *ad,
 					!(cap->capability_flags &
 					RTE_BBDEV_TURBO_SOFT_OUTPUT)) {
 				printf(
-					"WARNING: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
+					"INFO: Device \"%s\" does not support soft output - soft output flags will be ignored.\n",
 					dev_info->dev_name);
 				clear_soft_out_cap(
 					&test_vector.turbo_dec.op_flags);
@@ -233,7 +264,35 @@ typedef int (test_case_function)(struct active_device *ad,
 			if (nb_hard_outputs > cap->num_buffers_dst) {
 				printf(
 					"Too many hard outputs defined: %u, max: %u\n",
-					nb_hard_outputs, cap->num_buffers_src);
+					nb_hard_outputs, cap->num_buffers_dst);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_ENC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_ENC) {
+			const struct rte_bbdev_op_cap_ldpc_enc *cap =
+					&op_cap->cap.ldpc_enc;
+
+			if (!flags_match(test_vector.ldpc_enc.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_dst) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs, cap->num_buffers_dst);
 				return TEST_FAILED;
 			}
 			if (intr_enabled && !(cap->capability_flags &
@@ -244,6 +303,49 @@ typedef int (test_case_function)(struct active_device *ad,
 			}
 
 			return TEST_SUCCESS;
+		} else if (op_cap->type == RTE_BBDEV_OP_LDPC_DEC) {
+			const struct rte_bbdev_op_cap_ldpc_dec *cap =
+					&op_cap->cap.ldpc_dec;
+
+			if (!flags_match(test_vector.ldpc_dec.op_flags,
+					cap->capability_flags)){
+				printf("Flag Mismatch\n");
+				return TEST_FAILED;
+			}
+			if (nb_inputs > cap->num_buffers_src) {
+				printf("Too many inputs defined: %u, max: %u\n",
+					nb_inputs, cap->num_buffers_src);
+				return TEST_FAILED;
+			}
+			if (nb_hard_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many hard outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_inputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ inputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (nb_harq_outputs > cap->num_buffers_hard_out) {
+				printf(
+					"Too many HARQ outputs defined: %u, max: %u\n",
+					nb_hard_outputs,
+					cap->num_buffers_hard_out);
+				return TEST_FAILED;
+			}
+			if (intr_enabled && !(cap->capability_flags &
+					RTE_BBDEV_TURBO_DEC_INTERRUPTS)) {
+				printf(
+					"Dequeue interrupts are not supported!\n");
+				return TEST_FAILED;
+			}
+
+			return TEST_SUCCESS;
 		}
 	}
 
@@ -297,6 +399,10 @@ typedef int (test_case_function)(struct active_device *ad,
 			&test_vector.entries[DATA_HARD_OUTPUT];
 	struct op_data_entries *soft_out =
 			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_in =
+			&test_vector.entries[DATA_HARQ_INPUT];
+	struct op_data_entries *harq_out =
+			&test_vector.entries[DATA_HARQ_OUTPUT];
 
 	/* allocate ops mempool */
 	ops_pool_size = optimal_mempool_size(RTE_MAX(
@@ -350,22 +456,53 @@ typedef int (test_case_function)(struct active_device *ad,
 			socket_id);
 	ad->hard_out_mbuf_pool = mp;
 
-	if (soft_out->nb_segments == 0)
-		return TEST_SUCCESS;
 
 	/* Soft outputs */
-	mbuf_pool_size = optimal_mempool_size(ops_pool_size *
-			soft_out->nb_segments);
-	mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id, mbuf_pool_size,
-			"soft_out");
-	TEST_ASSERT_NOT_NULL(mp,
-			"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
-			mbuf_pool_size,
-			ad->dev_id,
-			socket_id);
-	ad->soft_out_mbuf_pool = mp;
+	if (soft_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				soft_out->nb_segments);
+		mp = create_mbuf_pool(soft_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"soft_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB soft output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->soft_out_mbuf_pool = mp;
+	}
 
-	return 0;
+	/* HARQ inputs */
+	if (harq_in->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_in->nb_segments);
+		mp = create_mbuf_pool(harq_in, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_in");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq input pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_in_mbuf_pool = mp;
+	}
+
+	/* HARQ outputs */
+	if (harq_out->nb_segments > 0) {
+		mbuf_pool_size = optimal_mempool_size(ops_pool_size *
+				harq_out->nb_segments);
+		mp = create_mbuf_pool(harq_out, ad->dev_id, socket_id,
+				mbuf_pool_size,
+				"harq_out");
+		TEST_ASSERT_NOT_NULL(mp,
+				"ERROR Failed to create %uB harq output pktmbuf pool for dev %u on socket %u.",
+				mbuf_pool_size,
+				ad->dev_id,
+				socket_id);
+		ad->harq_out_mbuf_pool = mp;
+	}
+
+	return TEST_SUCCESS;
 }
 
 static int
@@ -379,7 +516,58 @@ typedef int (test_case_function)(struct active_device *ad,
 	unsigned int nb_queues;
 	enum rte_bbdev_op_type op_type = vector->op_type;
 
+/* Configure fpga lte fec with PF & VF values
+ * if '-i' flag is set and using fpga device
+ */
+#ifndef RTE_BUILD_SHARED_LIB
+#ifdef RTE_LIBRTE_PMD_FPGA_LTE_FEC
+	if ((get_init_device() == true) &&
+		(!strcmp(info->drv.driver_name, FPGA_PF_DRIVER_NAME))) {
+		struct fpga_lte_fec_conf conf;
+		unsigned int i;
+
+		printf("Configure FPGA FEC Driver %s with default values\n",
+				info->drv.driver_name);
+
+		/* clear default configuration before initialization */
+		memset(&conf, 0, sizeof(struct fpga_lte_fec_conf));
+
+		/* Set PF mode :
+		 * true if PF is used for data plane
+		 * false for VFs
+		 */
+		conf.pf_mode_en = true;
+
+		for (i = 0; i < FPGA_LTE_FEC_NUM_VFS; ++i) {
+			/* Number of UL queues per VF (fpga supports 8 VFs) */
+			conf.vf_ul_queues_number[i] = VF_UL_QUEUE_VALUE;
+			/* Number of DL queues per VF (fpga supports 8 VFs) */
+			conf.vf_dl_queues_number[i] = VF_DL_QUEUE_VALUE;
+		}
+
+		/* UL bandwidth. Needed for schedule algorithm */
+		conf.ul_bandwidth = UL_BANDWIDTH;
+		/* DL bandwidth */
+		conf.dl_bandwidth = DL_BANDWIDTH;
+
+		/* UL & DL load Balance Factor to 64 */
+		conf.ul_load_balance = UL_LOAD_BALANCE;
+		conf.dl_load_balance = DL_LOAD_BALANCE;
+
+		/**< FLR timeout value */
+		conf.flr_time_out = FLR_TIMEOUT;
+
+		/* setup FPGA PF with configuration information */
+		ret = fpga_lte_fec_configure(info->dev_name, &conf);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to configure 4G FPGA PF for bbdev %s",
+				info->dev_name);
+	}
+#endif
+#endif
 	nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues);
+	nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES);
+
 	/* setup device */
 	ret = rte_bbdev_setup_queues(dev_id, nb_queues, info->socket_id);
 	if (ret < 0) {
@@ -596,7 +784,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		bufs[i].offset = 0;
 		bufs[i].length = 0;
 
-		if (op_type == DATA_INPUT) {
+		if ((op_type == DATA_INPUT) || (op_type == DATA_HARQ_INPUT)) {
 			data = rte_pktmbuf_append(m_head, seg->length);
 			TEST_ASSERT_NOT_NULL(data,
 					"Couldn't append %u bytes to mbuf from %d data type mbuf pool",
@@ -635,7 +823,6 @@ typedef int (test_case_function)(struct active_device *ad,
 						"Couldn't chain mbufs from %d data type mbuf pool",
 						op_type);
 			}
-
 		} else {
 
 			/* allocate chained-mbuf for output buffer */
@@ -682,7 +869,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 static void
 limit_input_llr_val_range(struct rte_bbdev_op_data *input_ops,
-		uint16_t n, int8_t max_llr_modulus)
+		const uint16_t n, const int8_t max_llr_modulus)
 {
 	uint16_t i, byte_idx;
 
@@ -701,10 +888,50 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+ldpc_input_llr_scaling(struct rte_bbdev_op_data *input_ops,
+		const uint16_t n, const int8_t llr_size,
+		const int8_t llr_decimals)
+{
+	if (input_ops == NULL)
+		return;
+
+	uint16_t i, byte_idx;
+
+	int16_t llr_max, llr_min, llr_tmp;
+	llr_max = (1 << (llr_size - 1)) - 1;
+	llr_min = -llr_max;
+	for (i = 0; i < n; ++i) {
+		struct rte_mbuf *m = input_ops[i].data;
+		while (m != NULL) {
+			int8_t *llr = rte_pktmbuf_mtod_offset(m, int8_t *,
+					input_ops[i].offset);
+			for (byte_idx = 0; byte_idx < rte_pktmbuf_data_len(m);
+					++byte_idx) {
+
+				llr_tmp = llr[byte_idx];
+				if (llr_decimals == 2)
+					llr_tmp *= 2;
+				else if (llr_decimals == 0)
+					llr_tmp /= 2;
+				llr_tmp = RTE_MIN(llr_max,
+						RTE_MAX(llr_min, llr_tmp));
+				llr[byte_idx] = (int8_t) llr_tmp;
+			}
+
+			m = m->next;
+		}
+	}
+}
+
+
+
 static int
 fill_queue_buffers(struct test_op_params *op_params,
 		struct rte_mempool *in_mp, struct rte_mempool *hard_out_mp,
-		struct rte_mempool *soft_out_mp, uint16_t queue_id,
+		struct rte_mempool *soft_out_mp,
+		struct rte_mempool *harq_in_mp, struct rte_mempool *harq_out_mp,
+		uint16_t queue_id,
 		const struct rte_bbdev_op_cap *capabilities,
 		uint16_t min_alignment, const int socket_id)
 {
@@ -716,12 +943,16 @@ typedef int (test_case_function)(struct active_device *ad,
 		in_mp,
 		soft_out_mp,
 		hard_out_mp,
+		harq_in_mp,
+		harq_out_mp,
 	};
 
 	struct rte_bbdev_op_data **queue_ops[DATA_NUM_TYPES] = {
 		&op_params->q_bufs[socket_id][queue_id].inputs,
 		&op_params->q_bufs[socket_id][queue_id].soft_outputs,
 		&op_params->q_bufs[socket_id][queue_id].hard_outputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_inputs,
+		&op_params->q_bufs[socket_id][queue_id].harq_outputs,
 	};
 
 	for (type = DATA_INPUT; type < DATA_NUM_TYPES; ++type) {
@@ -746,6 +977,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		limit_input_llr_val_range(*queue_ops[DATA_INPUT], n,
 			capabilities->cap.turbo_dec.max_llr_modulus);
 
+	if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		ldpc_input_llr_scaling(*queue_ops[DATA_INPUT], n,
+			capabilities->cap.ldpc_dec.llr_size,
+			capabilities->cap.ldpc_dec.llr_decimals);
+		ldpc_input_llr_scaling(*queue_ops[DATA_HARQ_INPUT], n,
+				capabilities->cap.ldpc_dec.llr_size,
+				capabilities->cap.ldpc_dec.llr_decimals);
+	}
+
 	return 0;
 }
 
@@ -758,12 +998,16 @@ typedef int (test_case_function)(struct active_device *ad,
 	rte_mempool_free(ad->in_mbuf_pool);
 	rte_mempool_free(ad->hard_out_mbuf_pool);
 	rte_mempool_free(ad->soft_out_mbuf_pool);
+	rte_mempool_free(ad->harq_in_mbuf_pool);
+	rte_mempool_free(ad->harq_out_mbuf_pool);
 
 	for (i = 0; i < rte_lcore_count(); ++i) {
 		for (j = 0; j < RTE_MAX_NUMA_NODES; ++j) {
 			rte_free(op_params->q_bufs[j][i].inputs);
 			rte_free(op_params->q_bufs[j][i].hard_outputs);
 			rte_free(op_params->q_bufs[j][i].soft_outputs);
+			rte_free(op_params->q_bufs[j][i].harq_inputs);
+			rte_free(op_params->q_bufs[j][i].harq_outputs);
 		}
 	}
 }
@@ -863,6 +1107,93 @@ typedef int (test_case_function)(struct active_device *ad,
 	}
 }
 
+static void
+copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *hard_outputs,
+		struct rte_bbdev_op_data *soft_outputs,
+		struct rte_bbdev_op_data *harq_inputs,
+		struct rte_bbdev_op_data *harq_outputs,
+		struct rte_bbdev_dec_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		if (ldpc_dec->code_block_mode == 0) {
+			ops[i]->ldpc_dec.tb_params.ea =
+					ldpc_dec->tb_params.ea;
+			ops[i]->ldpc_dec.tb_params.eb =
+					ldpc_dec->tb_params.eb;
+			ops[i]->ldpc_dec.tb_params.c =
+					ldpc_dec->tb_params.c;
+			ops[i]->ldpc_dec.tb_params.cab =
+					ldpc_dec->tb_params.cab;
+			ops[i]->ldpc_dec.tb_params.r =
+					ldpc_dec->tb_params.r;
+		} else {
+			ops[i]->ldpc_dec.cb_params.e = ldpc_dec->cb_params.e;
+		}
+
+		ops[i]->ldpc_dec.basegraph = ldpc_dec->basegraph;
+		ops[i]->ldpc_dec.z_c = ldpc_dec->z_c;
+		ops[i]->ldpc_dec.q_m = ldpc_dec->q_m;
+		ops[i]->ldpc_dec.n_filler = ldpc_dec->n_filler;
+		ops[i]->ldpc_dec.n_cb = ldpc_dec->n_cb;
+		ops[i]->ldpc_dec.iter_max = ldpc_dec->iter_max;
+		ops[i]->ldpc_dec.rv_index = ldpc_dec->rv_index;
+		ops[i]->ldpc_dec.op_flags = ldpc_dec->op_flags;
+		ops[i]->ldpc_dec.code_block_mode = ldpc_dec->code_block_mode;
+
+		ops[i]->ldpc_dec.hard_output = hard_outputs[start_idx + i];
+		ops[i]->ldpc_dec.input = inputs[start_idx + i];
+		if (soft_outputs != NULL)
+			ops[i]->ldpc_dec.soft_output =
+				soft_outputs[start_idx + i];
+		if (harq_inputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_input =
+					harq_inputs[start_idx + i];
+		if (harq_outputs != NULL)
+			ops[i]->ldpc_dec.harq_combined_output =
+				harq_outputs[start_idx + i];
+	}
+}
+
+
+static void
+copy_reference_ldpc_enc_op(struct rte_bbdev_enc_op **ops, unsigned int n,
+		unsigned int start_idx,
+		struct rte_bbdev_op_data *inputs,
+		struct rte_bbdev_op_data *outputs,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &ref_op->ldpc_enc;
+	for (i = 0; i < n; ++i) {
+		if (ldpc_enc->code_block_mode == 0) {
+			ops[i]->ldpc_enc.tb_params.ea = ldpc_enc->tb_params.ea;
+			ops[i]->ldpc_enc.tb_params.eb = ldpc_enc->tb_params.eb;
+			ops[i]->ldpc_enc.tb_params.cab =
+					ldpc_enc->tb_params.cab;
+			ops[i]->ldpc_enc.tb_params.c = ldpc_enc->tb_params.c;
+			ops[i]->ldpc_enc.tb_params.r = ldpc_enc->tb_params.r;
+		} else {
+			ops[i]->ldpc_enc.cb_params.e = ldpc_enc->cb_params.e;
+		}
+		ops[i]->ldpc_enc.basegraph = ldpc_enc->basegraph;
+		ops[i]->ldpc_enc.z_c = ldpc_enc->z_c;
+		ops[i]->ldpc_enc.q_m = ldpc_enc->q_m;
+		ops[i]->ldpc_enc.n_filler = ldpc_enc->n_filler;
+		ops[i]->ldpc_enc.n_cb = ldpc_enc->n_cb;
+		ops[i]->ldpc_enc.rv_index = ldpc_enc->rv_index;
+		ops[i]->ldpc_enc.op_flags = ldpc_enc->op_flags;
+		ops[i]->ldpc_enc.code_block_mode = ldpc_enc->code_block_mode;
+		ops[i]->ldpc_enc.output = outputs[start_idx + i];
+		ops[i]->ldpc_enc.input = inputs[start_idx + i];
+	}
+}
+
 static int
 check_dec_status_and_ordering(struct rte_bbdev_dec_op *op,
 		unsigned int order_idx, const int expected_status)
@@ -975,6 +1306,64 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+
+static int
+validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n,
+		struct rte_bbdev_dec_op *ref_op, const int vector_mask)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+	struct op_data_entries *soft_data_orig =
+			&test_vector.entries[DATA_SOFT_OUTPUT];
+	struct op_data_entries *harq_data_orig =
+				&test_vector.entries[DATA_HARQ_OUTPUT];
+	struct rte_bbdev_op_ldpc_dec *ops_td;
+	struct rte_bbdev_op_data *hard_output;
+	struct rte_bbdev_op_data *harq_output;
+	struct rte_bbdev_op_data *soft_output;
+	struct rte_bbdev_op_ldpc_dec *ref_td = &ref_op->ldpc_dec;
+
+	for (i = 0; i < n; ++i) {
+		ops_td = &ops[i]->ldpc_dec;
+		hard_output = &ops_td->hard_output;
+		harq_output = &ops_td->harq_combined_output;
+		soft_output = &ops_td->soft_output;
+
+		ret = check_dec_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for decoder failed");
+		if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT)
+			TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count,
+					"Returned iter_count (%d) > expected iter_count (%d)",
+					ops_td->iter_count, ref_td->iter_count);
+		/* We can ignore data when the decoding failed to converge */
+		if ((ops[i]->status &  (1 << RTE_BBDEV_SYNDROME_ERROR)) == 0)
+			TEST_ASSERT_SUCCESS(validate_op_chain(hard_output,
+					hard_data_orig),
+					"Hard output buffers (CB=%u) are not equal",
+					i);
+
+		if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE)
+			TEST_ASSERT_SUCCESS(validate_op_chain(soft_output,
+					soft_data_orig),
+					"Soft output buffers (CB=%u) are not equal",
+					i);
+		if (ref_op->ldpc_dec.op_flags &
+				RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) {
+			ldpc_input_llr_scaling(harq_output, 1, 8, 0);
+			TEST_ASSERT_SUCCESS(validate_op_chain(harq_output,
+					harq_data_orig),
+					"HARQ output buffers (CB=%u) are not equal",
+					i);
+		}
+	}
+
+	return TEST_SUCCESS;
+}
+
+
 static int
 validate_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
 		struct rte_bbdev_enc_op *ref_op)
@@ -998,6 +1387,29 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n,
+		struct rte_bbdev_enc_op *ref_op)
+{
+	unsigned int i;
+	int ret;
+	struct op_data_entries *hard_data_orig =
+			&test_vector.entries[DATA_HARD_OUTPUT];
+
+	for (i = 0; i < n; ++i) {
+		ret = check_enc_status_and_ordering(ops[i], i, ref_op->status);
+		TEST_ASSERT_SUCCESS(ret,
+				"Checking status and ordering for encoder failed");
+		TEST_ASSERT_SUCCESS(validate_op_chain(
+				&ops[i]->ldpc_enc.output,
+				hard_data_orig),
+				"Output buffers (CB=%u) are not equal",
+				i);
+	}
+
+	return TEST_SUCCESS;
+}
+
 static void
 create_reference_dec_op(struct rte_bbdev_dec_op *op)
 {
@@ -1012,6 +1424,27 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static void
+create_reference_ldpc_dec_op(struct rte_bbdev_dec_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_dec = test_vector.ldpc_dec;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_dec.input.length +=
+				entry->segments[i].length;
+	if (test_vector.ldpc_dec.op_flags &
+			RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE) {
+		entry = &test_vector.entries[DATA_HARQ_INPUT];
+		for (i = 0; i < entry->nb_segments; ++i)
+			op->ldpc_dec.harq_combined_input.length +=
+				entry->segments[i].length;
+	}
+}
+
+
+static void
 create_reference_enc_op(struct rte_bbdev_enc_op *op)
 {
 	unsigned int i;
@@ -1024,6 +1457,19 @@ typedef int (test_case_function)(struct active_device *ad,
 				entry->segments[i].length;
 }
 
+static void
+create_reference_ldpc_enc_op(struct rte_bbdev_enc_op *op)
+{
+	unsigned int i;
+	struct op_data_entries *entry;
+
+	op->ldpc_enc = test_vector.ldpc_enc;
+	entry = &test_vector.entries[DATA_INPUT];
+	for (i = 0; i < entry->nb_segments; ++i)
+		op->ldpc_enc.input.length +=
+				entry->segments[i].length;
+}
+
 static uint32_t
 calc_dec_TB_size(struct rte_bbdev_dec_op *op)
 {
@@ -1044,6 +1490,25 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static uint32_t
+calc_ldpc_dec_TB_size(struct rte_bbdev_dec_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_dec.basegraph == 1) ? 22 : 10;
+
+	if (op->ldpc_dec.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_dec.z_c - op->ldpc_dec.n_filler;
+	} else {
+		c = op->ldpc_dec.tb_params.c;
+		r = op->ldpc_dec.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_dec.z_c
+					- op->ldpc_dec.n_filler;
+	}
+	return tb_size;
+}
+
+static uint32_t
 calc_enc_TB_size(struct rte_bbdev_enc_op *op)
 {
 	uint8_t i;
@@ -1062,6 +1527,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	return tb_size;
 }
 
+static uint32_t
+calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op)
+{
+	uint8_t i;
+	uint32_t c, r, tb_size = 0;
+	uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10;
+
+	if (op->turbo_enc.code_block_mode) {
+		tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler;
+	} else {
+		c = op->turbo_enc.tb_params.c;
+		r = op->turbo_enc.tb_params.r;
+		for (i = 0; i < c-r; i++)
+			tb_size += sys_cols * op->ldpc_enc.z_c
+					- op->ldpc_enc.n_filler;
+	}
+	return tb_size;
+}
+
+
 static int
 init_test_op_params(struct test_op_params *op_params,
 		enum rte_bbdev_op_type op_type, const int expected_status,
@@ -1069,7 +1554,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		uint16_t burst_sz, uint16_t num_to_process, uint16_t num_lcores)
 {
 	int ret = 0;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		ret = rte_bbdev_dec_op_alloc_bulk(ops_mp,
 				&op_params->ref_dec_op, 1);
 	else
@@ -1083,11 +1569,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_params->num_to_process = num_to_process;
 	op_params->num_lcores = num_lcores;
 	op_params->vector_mask = vector_mask;
-	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			op_type == RTE_BBDEV_OP_LDPC_DEC)
 		op_params->ref_dec_op->status = expected_status;
-	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC
+			|| op_type == RTE_BBDEV_OP_LDPC_ENC)
 		op_params->ref_enc_op->status = expected_status;
-
 	return 0;
 }
 
@@ -1133,27 +1620,35 @@ typedef int (test_case_function)(struct active_device *ad,
 		goto fail;
 	}
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
-		/* Find Decoder capabilities */
-		const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
-		while (cap->type != RTE_BBDEV_OP_NONE) {
-			if (cap->type == RTE_BBDEV_OP_TURBO_DEC) {
-				capabilities = cap;
-				break;
-			}
-		}
-		TEST_ASSERT_NOT_NULL(capabilities,
-				"Couldn't find Decoder capabilities");
 
-		create_reference_dec_op(op_params->ref_dec_op);
+	/* Find capabilities */
+	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
+	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
+		if (cap->type == test_vector.op_type) {
+			capabilities = cap;
+			break;
+		}
+		cap++;
+	}
+	TEST_ASSERT_NOT_NULL(capabilities,
+			"Couldn't find capabilities");
+
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) {
+		create_reference_dec_op(op_params->ref_dec_op);
 	} else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
 		create_reference_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+		create_reference_ldpc_enc_op(op_params->ref_enc_op);
+	else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+		create_reference_ldpc_dec_op(op_params->ref_dec_op);
 
 	for (i = 0; i < ad->nb_queues; ++i) {
 		f_ret = fill_queue_buffers(op_params,
 				ad->in_mbuf_pool,
 				ad->hard_out_mbuf_pool,
 				ad->soft_out_mbuf_pool,
+				ad->harq_in_mbuf_pool,
+				ad->harq_out_mbuf_pool,
 				ad->queue_ids[i],
 				capabilities,
 				info.drv.min_alignment,
@@ -1212,9 +1707,7 @@ typedef int (test_case_function)(struct active_device *ad,
 	uint16_t deq, burst_sz, num_ops;
 	uint16_t queue_id = *(uint16_t *) ret_param;
 	struct rte_bbdev_info info;
-
 	double tb_len_bits;
-
 	struct thread_params *tp = cb_arg;
 
 	/* Find matching thread params using queue_id */
@@ -1238,7 +1731,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	burst_sz = rte_atomic16_read(&tp->burst_sz);
 	num_ops = tp->op_params->num_to_process;
 
-	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+	if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+			test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 		deq = rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
 				&tp->dec_ops[
 					rte_atomic16_read(&tp->nb_dequeued)],
@@ -1282,6 +1776,15 @@ typedef int (test_case_function)(struct active_device *ad,
 		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
 		ret = validate_enc_op(tp->enc_ops, num_ops, ref_op);
 		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+		ret = validate_ldpc_enc_op(tp->enc_ops, num_ops, ref_op);
+		rte_bbdev_enc_op_free_bulk(tp->enc_ops, deq);
+	} else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+		ret = validate_ldpc_dec_op(tp->dec_ops, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		rte_bbdev_dec_op_free_bulk(tp->dec_ops, deq);
 	}
 
 	if (ret) {
@@ -1296,6 +1799,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	case RTE_BBDEV_OP_TURBO_ENC:
 		tb_len_bits = calc_enc_TB_size(tp->op_params->ref_enc_op);
 		break;
+	case RTE_BBDEV_OP_LDPC_DEC:
+		tb_len_bits = calc_ldpc_dec_TB_size(tp->op_params->ref_dec_op);
+		break;
+	case RTE_BBDEV_OP_LDPC_ENC:
+		tb_len_bits = calc_ldpc_enc_TB_size(tp->op_params->ref_enc_op);
+		break;
 	case RTE_BBDEV_OP_NONE:
 		tb_len_bits = 0.0;
 		break;
@@ -1375,8 +1884,8 @@ typedef int (test_case_function)(struct active_device *ad,
 			enq = 0;
 			do {
 				enq += rte_bbdev_enqueue_dec_ops(tp->dev_id,
-					queue_id, &ops[enqueued],
-					num_to_enq);
+						queue_id, &ops[enqueued],
+						num_to_enq);
 			} while (unlikely(num_to_enq != enq));
 			enqueued += enq;
 
@@ -1390,7 +1899,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1479,7 +1988,7 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_atomic16_set(&tp->burst_sz, num_to_enq);
 
 			/* Wait until processing of previous batch is
-			 * completed.
+			 * completed
 			 */
 			while (rte_atomic16_read(&tp->nb_dequeued) !=
 					(int16_t) enqueued)
@@ -1590,6 +2099,116 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+throughput_pmd_lcore_ldpc_dec(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_dec_op *ops_enq[num_ops];
+	struct rte_bbdev_dec_op *ops_deq[num_ops];
+	struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops);
+
+	/* For throughput tests we need to disable early termination */
+	if (check_bit(ref_op->ldpc_dec.op_flags,
+			RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE))
+		ref_op->ldpc_dec.op_flags -=
+				RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	ref_op->ldpc_dec.iter_max = 6;
+	ref_op->ldpc_dec.iter_count = ref_op->ldpc_dec.iter_max;
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_dec_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, bufs->soft_outputs,
+				bufs->harq_inputs, bufs->harq_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+		for (j = 0; j < num_ops; ++j) {
+			mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data);
+			if (check_bit(ref_op->ldpc_dec.op_flags,
+					RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE))
+				mbuf_reset(
+				ops_enq[j]->ldpc_dec.harq_combined_output.data);
+		}
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	tp->iter_count = 0;
+	/* get the max of iter_count for all dequeued ops */
+	for (i = 0; i < num_ops; ++i) {
+		tp->iter_count = RTE_MAX(ops_enq[i]->ldpc_dec.iter_count,
+				tp->iter_count);
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_dec_op(ops_deq, num_ops, ref_op,
+				tp->op_params->vector_mask);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_dec_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_dec_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits)) /
+			1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
+static int
 throughput_pmd_lcore_enc(void *arg)
 {
 	struct thread_params *tp = arg;
@@ -1667,6 +2286,8 @@ typedef int (test_case_function)(struct active_device *ad,
 		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
 	}
 
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
 	double tb_len_bits = calc_enc_TB_size(ref_op);
 
 	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
@@ -1678,6 +2299,97 @@ typedef int (test_case_function)(struct active_device *ad,
 	return TEST_SUCCESS;
 }
 
+static int
+throughput_pmd_lcore_ldpc_enc(void *arg)
+{
+	struct thread_params *tp = arg;
+	uint16_t enq, deq;
+	uint64_t total_time = 0, start_time;
+	const uint16_t queue_id = tp->queue_id;
+	const uint16_t burst_sz = tp->op_params->burst_sz;
+	const uint16_t num_ops = tp->op_params->num_to_process;
+	struct rte_bbdev_enc_op *ops_enq[num_ops];
+	struct rte_bbdev_enc_op *ops_deq[num_ops];
+	struct rte_bbdev_enc_op *ref_op = tp->op_params->ref_enc_op;
+	struct test_buffers *bufs = NULL;
+	int i, j, ret;
+	struct rte_bbdev_info info;
+	uint16_t num_to_enq;
+
+	TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST),
+			"BURST_SIZE should be <= %u", MAX_BURST);
+
+	rte_bbdev_info_get(tp->dev_id, &info);
+
+	TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim),
+			"NUM_OPS cannot exceed %u for this device",
+			info.drv.queue_size_lim);
+
+	bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id];
+
+	while (rte_atomic16_read(&tp->op_params->sync) == SYNC_WAIT)
+		rte_pause();
+
+	ret = rte_bbdev_enc_op_alloc_bulk(tp->op_params->mp, ops_enq,
+			num_ops);
+	TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
+			num_ops);
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+		copy_reference_ldpc_enc_op(ops_enq, num_ops, 0, bufs->inputs,
+				bufs->hard_outputs, ref_op);
+
+	/* Set counter to validate the ordering */
+	for (j = 0; j < num_ops; ++j)
+		ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+	for (i = 0; i < TEST_REPETITIONS; ++i) {
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			for (j = 0; j < num_ops; ++j)
+				mbuf_reset(ops_enq[j]->turbo_enc.output.data);
+
+		start_time = rte_rdtsc_precise();
+
+		for (enq = 0, deq = 0; enq < num_ops;) {
+			num_to_enq = burst_sz;
+
+			if (unlikely(num_ops - enq < num_to_enq))
+				num_to_enq = num_ops - enq;
+
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_enq[enq], num_to_enq);
+
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		/* dequeue the remaining */
+		while (deq < enq) {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(tp->dev_id,
+					queue_id, &ops_deq[deq], enq - deq);
+		}
+
+		total_time += rte_rdtsc_precise() - start_time;
+	}
+
+	if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+		ret = validate_ldpc_enc_op(ops_deq, num_ops, ref_op);
+		TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+	}
+
+	rte_bbdev_enc_op_free_bulk(ops_enq, num_ops);
+
+	double tb_len_bits = calc_ldpc_enc_TB_size(ref_op);
+
+	tp->ops_per_sec = ((double)num_ops * TEST_REPETITIONS) /
+			((double)total_time / (double)rte_get_tsc_hz());
+	tp->mbps = (((double)(num_ops * TEST_REPETITIONS * tb_len_bits))
+			/ 1000000.0) / ((double)total_time /
+			(double)rte_get_tsc_hz());
+
+	return TEST_SUCCESS;
+}
+
 static void
 print_enc_throughput(struct thread_params *t_params, unsigned int used_cores)
 {
@@ -1740,8 +2452,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u",
 			test_vector.op_type);
 
-	printf(
-		"Throughput test: dev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, int mode: %s, GHz: %lg\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: throughput\ndev: %s, nb_queues: %u, burst size: %u, num ops: %u, num_lcores: %u, op type: %s, itr mode: %s, GHz: %lg\n",
 			info.dev_name, ad->nb_queues, op_params->burst_sz,
 			op_params->num_to_process, op_params->num_lcores,
 			op_type_str,
@@ -1763,6 +2475,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (intr_enabled) {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_intr_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_intr_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_intr_lcore_enc;
 		else
 			throughput_function = throughput_intr_lcore_enc;
 
@@ -1777,6 +2495,12 @@ typedef int (test_case_function)(struct active_device *ad,
 	} else {
 		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
 			throughput_function = throughput_pmd_lcore_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
+			throughput_function = throughput_pmd_lcore_ldpc_dec;
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+			throughput_function = throughput_pmd_lcore_enc;
+		else if (test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
+			throughput_function = throughput_pmd_lcore_ldpc_enc;
 		else
 			throughput_function = throughput_pmd_lcore_enc;
 	}
@@ -1819,7 +2543,8 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	/* Print throughput if interrupts are disabled and test passed */
 	if (!intr_enabled) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
 		else
 			print_enc_throughput(t_params, num_lcores);
@@ -1841,7 +2566,7 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	tp->ops_per_sec /= TEST_REPETITIONS;
 	tp->mbps /= TEST_REPETITIONS;
-	ret |= rte_atomic16_read(&tp->processing_status);
+	ret |= (int)rte_atomic16_read(&tp->processing_status);
 
 	/* Wait for slave lcores operations */
 	for (used_cores = 1; used_cores < num_lcores; used_cores++) {
@@ -1855,14 +2580,16 @@ typedef int (test_case_function)(struct active_device *ad,
 
 		tp->ops_per_sec /= TEST_REPETITIONS;
 		tp->mbps /= TEST_REPETITIONS;
-		ret |= rte_atomic16_read(&tp->processing_status);
+		ret |= (int)rte_atomic16_read(&tp->processing_status);
 	}
 
 	/* Print throughput if test passed */
 	if (!ret) {
-		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC)
+		if (test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_DEC)
 			print_dec_throughput(t_params, num_lcores);
-		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC)
+		else if (test_vector.op_type == RTE_BBDEV_OP_TURBO_ENC ||
+				test_vector.op_type == RTE_BBDEV_OP_LDPC_ENC)
 			print_enc_throughput(t_params, num_lcores);
 	}
 
@@ -1940,6 +2667,77 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op,
+		int vector_mask, uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_dec_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		enq = rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time = rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op,
+					vector_mask);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test_enc(struct rte_mempool *mempool,
 		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
 		uint16_t dev_id, uint16_t queue_id,
@@ -2007,6 +2805,84 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs, struct rte_bbdev_enc_op *ref_op,
+		uint16_t dev_id, uint16_t queue_id,
+		const uint16_t num_to_process, uint16_t burst_sz,
+		uint64_t *total_time, uint64_t *min_time, uint64_t *max_time)
+{
+	int ret = TEST_SUCCESS;
+	uint16_t i, j, dequeued;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t start_time = 0, last_time = 0;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+		bool first_time = true;
+		last_time = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+
+		TEST_ASSERT_SUCCESS(ret,
+				"rte_bbdev_enc_op_alloc_bulk() failed");
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Set counter to validate the ordering */
+		for (j = 0; j < burst_sz; ++j)
+			ops_enq[j]->opaque_data = (void *)(uintptr_t)j;
+
+		start_time = rte_rdtsc_precise();
+
+		/*
+		 * printf("Latency Debug %d\n",
+		 * ops_enq[0]->ldpc_enc.cb_params.z_c); REMOVEME
+		 */
+
+		enq = rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+				&ops_enq[enq], burst_sz);
+		TEST_ASSERT(enq == burst_sz,
+				"Error enqueueing burst, expected %u, got %u",
+				burst_sz, enq);
+
+		/* Dequeue */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+			if (likely(first_time && (deq > 0))) {
+				last_time += rte_rdtsc_precise() - start_time;
+				first_time = false;
+			}
+		} while (unlikely(burst_sz != deq));
+
+		*max_time = RTE_MAX(*max_time, last_time);
+		*min_time = RTE_MIN(*min_time, last_time);
+		*total_time += last_time;
+
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE) {
+			ret = validate_enc_op(ops_deq, burst_sz, ref_op);
+			TEST_ASSERT_SUCCESS(ret, "Validation failed!");
+		}
+
+		/*
+		 * printf("Ready to free - deq %d num_to_process %d\n", FIXME
+		 *		deq, num_to_process);
+		 * printf("cache %d\n", ops_enq[0]->mempool->cache_size);
+		 */
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 latency_test(struct active_device *ad,
 		struct test_op_params *op_params)
 {
@@ -2032,8 +2908,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nValidation/Latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: validation/latency\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2041,19 +2917,35 @@ typedef int (test_case_function)(struct active_device *ad,
 				op_params->ref_dec_op, op_params->vector_mask,
 				ad->dev_id, queue_id, num_to_process,
 				burst_sz, &total_time, &min_time, &max_time);
-	else
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
 		iter = latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &total_time,
 				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &total_time,
+				&min_time, &max_time);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = latency_test_ldpc_dec(op_params->mp, bufs,
+				op_params->ref_dec_op, op_params->vector_mask,
+				ad->dev_id, queue_id, num_to_process,
+				burst_sz, &total_time, &min_time, &max_time);
+	else
+		iter = latency_test_enc(op_params->mp, bufs,
+					op_params->ref_enc_op,
+					ad->dev_id, queue_id,
+					num_to_process, burst_sz, &total_time,
+					&min_time, &max_time);
 
 	if (iter <= 0)
 		return TEST_FAILED;
 
 	printf("Operation latency:\n"
-			"\tavg latency: %lg cycles, %lg us\n"
-			"\tmin latency: %lg cycles, %lg us\n"
-			"\tmax latency: %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)total_time / (double)iter,
 			(double)(total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)min_time,
@@ -2104,10 +2996,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_dec_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2141,7 +3030,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2172,6 +3061,91 @@ typedef int (test_case_function)(struct active_device *ad,
 }
 
 static int
+offload_latency_test_ldpc_dec(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_dec_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_dec_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_dec_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					bufs->soft_outputs,
+					bufs->harq_inputs,
+					bufs->harq_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		/* Dequeue remaining operations if needed*/
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_dec_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_dec_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
+
+static int
 offload_latency_test_enc(struct rte_mempool *mempool, struct test_buffers *bufs,
 		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
 		uint16_t queue_id, const uint16_t num_to_process,
@@ -2189,10 +3163,7 @@ typedef int (test_case_function)(struct active_device *ad,
 		if (unlikely(num_to_process - dequeued < burst_sz))
 			burst_sz = num_to_process - dequeued;
 
-		ret = rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
-		TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops",
-				burst_sz);
-
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
 		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
 			copy_reference_enc_op(ops_enq, burst_sz, dequeued,
 					bufs->inputs,
@@ -2225,7 +3196,7 @@ typedef int (test_case_function)(struct active_device *ad,
 				stats.acc_offload_cycles);
 		time_st->enq_acc_total_time += stats.acc_offload_cycles;
 
-		/* ensure enqueue has been completed */
+		/* give time for device to process ops */
 		rte_delay_us(200);
 
 		/* Start time meas for dequeue function offload latency */
@@ -2253,6 +3224,87 @@ typedef int (test_case_function)(struct active_device *ad,
 
 	return i;
 }
+
+static int
+offload_latency_test_ldpc_enc(struct rte_mempool *mempool,
+		struct test_buffers *bufs,
+		struct rte_bbdev_enc_op *ref_op, uint16_t dev_id,
+		uint16_t queue_id, const uint16_t num_to_process,
+		uint16_t burst_sz, struct test_time_stats *time_st)
+{
+	int i, dequeued, ret;
+	struct rte_bbdev_enc_op *ops_enq[MAX_BURST], *ops_deq[MAX_BURST];
+	uint64_t enq_start_time, deq_start_time;
+	uint64_t enq_sw_last_time, deq_last_time;
+	struct rte_bbdev_stats stats;
+
+	for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) {
+		uint16_t enq = 0, deq = 0;
+
+		if (unlikely(num_to_process - dequeued < burst_sz))
+			burst_sz = num_to_process - dequeued;
+
+		rte_bbdev_enc_op_alloc_bulk(mempool, ops_enq, burst_sz);
+		if (test_vector.op_type != RTE_BBDEV_OP_NONE)
+			copy_reference_ldpc_enc_op(ops_enq, burst_sz, dequeued,
+					bufs->inputs,
+					bufs->hard_outputs,
+					ref_op);
+
+		/* Start time meas for enqueue function offload latency */
+		enq_start_time = rte_rdtsc_precise();
+		do {
+			enq += rte_bbdev_enqueue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_enq[enq], burst_sz - enq);
+		} while (unlikely(burst_sz != enq));
+
+		ret = get_bbdev_queue_stats(dev_id, queue_id, &stats);
+		TEST_ASSERT_SUCCESS(ret,
+				"Failed to get stats for queue (%u) of device (%u)",
+				queue_id, dev_id);
+
+		enq_sw_last_time = rte_rdtsc_precise() - enq_start_time -
+				stats.acc_offload_cycles;
+		time_st->enq_sw_max_time = RTE_MAX(time_st->enq_sw_max_time,
+				enq_sw_last_time);
+		time_st->enq_sw_min_time = RTE_MIN(time_st->enq_sw_min_time,
+				enq_sw_last_time);
+		time_st->enq_sw_total_time += enq_sw_last_time;
+
+		time_st->enq_acc_max_time = RTE_MAX(time_st->enq_acc_max_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_min_time = RTE_MIN(time_st->enq_acc_min_time,
+				stats.acc_offload_cycles);
+		time_st->enq_acc_total_time += stats.acc_offload_cycles;
+
+		/* give time for device to process ops */
+		rte_delay_us(200);
+
+		/* Start time meas for dequeue function offload latency */
+		deq_start_time = rte_rdtsc_precise();
+		/* Dequeue one operation */
+		do {
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], 1);
+		} while (unlikely(deq != 1));
+
+		deq_last_time = rte_rdtsc_precise() - deq_start_time;
+		time_st->deq_max_time = RTE_MAX(time_st->deq_max_time,
+				deq_last_time);
+		time_st->deq_min_time = RTE_MIN(time_st->deq_min_time,
+				deq_last_time);
+		time_st->deq_total_time += deq_last_time;
+
+		while (burst_sz != deq)
+			deq += rte_bbdev_dequeue_ldpc_enc_ops(dev_id, queue_id,
+					&ops_deq[deq], burst_sz - deq);
+
+		rte_bbdev_enc_op_free_bulk(ops_enq, deq);
+		dequeued += deq;
+	}
+
+	return i;
+}
 #endif
 
 static int
@@ -2290,14 +3342,26 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency test\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
 		iter = offload_latency_test_dec(op_params->mp, bufs,
 				op_params->ref_dec_op, ad->dev_id, queue_id,
 				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_TURBO_ENC)
+		iter = offload_latency_test_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_ENC)
+		iter = offload_latency_test_ldpc_enc(op_params->mp, bufs,
+				op_params->ref_enc_op, ad->dev_id, queue_id,
+				num_to_process, burst_sz, &time_st);
+	else if (op_type == RTE_BBDEV_OP_LDPC_DEC)
+		iter = offload_latency_test_ldpc_dec(op_params->mp, bufs,
+			op_params->ref_dec_op, ad->dev_id, queue_id,
+			num_to_process, burst_sz, &time_st);
 	else
 		iter = offload_latency_test_enc(op_params->mp, bufs,
 				op_params->ref_enc_op, ad->dev_id, queue_id,
@@ -2306,13 +3370,14 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Enqueue offload cost latency:\n"
-			"\tDriver offload avg %lg cycles, %lg us\n"
-			"\tDriver offload min %lg cycles, %lg us\n"
-			"\tDriver offload max %lg cycles, %lg us\n"
-			"\tAccelerator offload avg %lg cycles, %lg us\n"
-			"\tAccelerator offload min %lg cycles, %lg us\n"
-			"\tAccelerator offload max %lg cycles, %lg us\n",
+	printf("Enqueue driver offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n"
+			"Enqueue accelerator offload cost latency:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.enq_sw_total_time / (double)iter,
 			(double)(time_st.enq_sw_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2331,9 +3396,9 @@ typedef int (test_case_function)(struct active_device *ad,
 			rte_get_tsc_hz());
 
 	printf("Dequeue offload cost latency - one op:\n"
-			"\tavg %lg cycles, %lg us\n"
-			"\tmin %lg cycles, %lg us\n"
-			"\tmax %lg cycles, %lg us\n",
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)time_st.deq_total_time / (double)iter,
 			(double)(time_st.deq_total_time * 1000000) /
 			(double)iter / (double)rte_get_tsc_hz(),
@@ -2437,8 +3502,8 @@ typedef int (test_case_function)(struct active_device *ad,
 	op_type_str = rte_bbdev_op_type_str(op_type);
 	TEST_ASSERT_NOT_NULL(op_type_str, "Invalid op type: %u", op_type);
 
-	printf(
-		"\nOffload latency empty dequeue test: dev: %s, burst size: %u, num ops: %u, op type: %s\n",
+	printf("+ ------------------------------------------------------- +\n");
+	printf("== test: offload latency empty dequeue\ndev: %s, burst size: %u, num ops: %u, op type: %s\n",
 			info.dev_name, burst_sz, num_to_process, op_type_str);
 
 	if (op_type == RTE_BBDEV_OP_TURBO_DEC)
@@ -2453,10 +3518,10 @@ typedef int (test_case_function)(struct active_device *ad,
 	if (iter <= 0)
 		return TEST_FAILED;
 
-	printf("Empty dequeue offload\n"
-			"\tavg. latency: %lg cycles, %lg us\n"
-			"\tmin. latency: %lg cycles, %lg us\n"
-			"\tmax. latency: %lg cycles, %lg us\n",
+	printf("Empty dequeue offload:\n"
+			"\tavg: %lg cycles, %lg us\n"
+			"\tmin: %lg cycles, %lg us\n"
+			"\tmax: %lg cycles, %lg us\n",
 			(double)deq_total_time / (double)iter,
 			(double)(deq_total_time * 1000000) / (double)iter /
 			(double)rte_get_tsc_hz(), (double)deq_min_time,
diff --git a/app/test-bbdev/test_bbdev_vector.c b/app/test-bbdev/test_bbdev_vector.c
index e149ced..77356cb 100644
--- a/app/test-bbdev/test_bbdev_vector.c
+++ b/app/test-bbdev/test_bbdev_vector.c
@@ -18,6 +18,8 @@
 	"input",
 	"soft_output",
 	"hard_output",
+	"harq_input",
+	"harq_output",
 };
 
 /* trim leading and trailing spaces */
@@ -84,6 +86,7 @@
 		}
 
 		values[n_tokens] = (uint32_t) strtoul(tok, &error, 0);
+
 		if ((error == NULL) || (*error != '\0')) {
 			printf("Failed with convert '%s'\n", tok);
 			rte_free(values);
@@ -154,6 +157,54 @@
 	return 0;
 }
 
+/* convert LDPC flag from string to unsigned long int*/
+static int
+op_ldpc_decoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24A_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DECODE_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DECODE_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_DEC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_DEC_SCATTER_GATHER;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_LLR_COMPRESSION"))
+		*op_flag_value = RTE_BBDEV_LDPC_LLR_COMPRESSION;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE;
+	else if (!strcmp(token,
+			"RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE;
+	else {
+		printf("The given value is not a LDPC decoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* convert turbo encoder flag from string to unsigned long int*/
 static int
 op_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
@@ -176,6 +227,32 @@
 	return 0;
 }
 
+/* convert LDPC encoder flag from string to unsigned long int*/
+static int
+op_ldpc_encoder_flag_strtoul(char *token, uint32_t *op_flag_value)
+{
+	if (!strcmp(token, "RTE_BBDEV_LDPC_INTERLEAVER_BYPASS"))
+		*op_flag_value = RTE_BBDEV_LDPC_INTERLEAVER_BYPASS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_RATE_MATCH"))
+		*op_flag_value = RTE_BBDEV_LDPC_RATE_MATCH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24A_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24A_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_24B_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_24B_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_CRC_16_ATTACH"))
+		*op_flag_value = RTE_BBDEV_LDPC_CRC_16_ATTACH;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_INTERRUPTS"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_INTERRUPTS;
+	else if (!strcmp(token, "RTE_BBDEV_LDPC_ENC_SCATTER_GATHER"))
+		*op_flag_value = RTE_BBDEV_LDPC_ENC_SCATTER_GATHER;
+	else {
+		printf("The given value is not a turbo encoder flag\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* tokenization turbo decoder/encoder flags values separated by a comma */
 static int
 parse_turbo_flags(char *tokens, uint32_t *op_flags,
@@ -196,6 +273,14 @@
 		} else if (op_type == RTE_BBDEV_OP_TURBO_ENC) {
 			if (op_encoder_flag_strtoul(tok, &op_flag_value) == -1)
 				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_ENC) {
+			if (op_ldpc_encoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
+		} else if (op_type == RTE_BBDEV_OP_LDPC_DEC) {
+			if (op_ldpc_decoder_flag_strtoul(tok, &op_flag_value)
+					== -1)
+				return -1;
 		} else {
 			return -1;
 		}
@@ -219,6 +304,10 @@
 		*op_type = RTE_BBDEV_OP_TURBO_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_TURBO_ENC"))
 		*op_type = RTE_BBDEV_OP_TURBO_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_ENC"))
+		*op_type = RTE_BBDEV_OP_LDPC_ENC;
+	else if (!strcmp(token, "RTE_BBDEV_OP_LDPC_DEC"))
+		*op_type = RTE_BBDEV_OP_LDPC_DEC;
 	else if (!strcmp(token, "RTE_BBDEV_OP_NONE"))
 		*op_type = RTE_BBDEV_OP_NONE;
 	else {
@@ -248,12 +337,18 @@
 			*status = *status | (1 << RTE_BBDEV_DRV_ERROR);
 		else if (!strcmp(tok, "FCW"))
 			*status = *status | (1 << RTE_BBDEV_DATA_ERROR);
+		else if (!strcmp(tok, "SYNCRC")) {
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
+			*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
+		} else if (!strcmp(tok, "SYN"))
+			*status = *status | (1 << RTE_BBDEV_SYNDROME_ERROR);
 		else if (!strcmp(tok, "CRC")) {
-			if (op_type == RTE_BBDEV_OP_TURBO_DEC)
+			if ((op_type == RTE_BBDEV_OP_TURBO_DEC) ||
+					(op_type == RTE_BBDEV_OP_LDPC_DEC))
 				*status = *status | (1 << RTE_BBDEV_CRC_ERROR);
 			else {
 				printf(
-						"CRC is only a valid value for turbo decoder\n");
+						"CRC is only a valid value for decoder\n");
 				return -1;
 			}
 		} else {
@@ -414,7 +509,7 @@
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "r")) {
 		vector->mask |= TEST_BBDEV_VF_R;
-		turbo_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		turbo_dec->tb_params.r = (uint8_t)strtoul(token, &err, 0);
 		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
 	} else if (!strcmp(key_token, "code_block_mode")) {
 		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
@@ -548,6 +643,211 @@
 	return 0;
 }
 
+
+/* parses LDPC encoder parameters and assigns to global variable */
+static int
+parse_ldpc_encoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_enc *ldpc_enc = &vector->ldpc_enc;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_enc->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_enc->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_enc->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_enc->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_enc->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_enc->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_enc->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_enc->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_enc->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_enc->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_enc->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_enc->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_enc->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_enc->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc enc key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* parses LDPC decoder parameters and assigns to global variable */
+static int
+parse_ldpc_decoder_params(const char *key_token, char *token,
+		struct test_bbdev_vector *vector)
+{
+	int ret = 0, status = 0;
+	uint32_t op_flags = 0;
+	char *err = NULL;
+
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (starts_with(key_token, op_data_prefixes[DATA_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_INPUT,
+				op_data_prefixes[DATA_INPUT]);
+	else if (starts_with(key_token, "output"))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARD_OUTPUT,
+				"output");
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_INPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_INPUT,
+				op_data_prefixes[DATA_HARQ_INPUT]);
+	else if (starts_with(key_token, op_data_prefixes[DATA_HARQ_OUTPUT]))
+		ret = parse_data_entry(key_token, token, vector,
+				DATA_HARQ_OUTPUT,
+				op_data_prefixes[DATA_HARQ_OUTPUT]);
+	else if (!strcmp(key_token, "e")) {
+		vector->mask |= TEST_BBDEV_VF_E;
+		ldpc_dec->cb_params.e = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "ea")) {
+		vector->mask |= TEST_BBDEV_VF_EA;
+		ldpc_dec->tb_params.ea = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "eb")) {
+		vector->mask |= TEST_BBDEV_VF_EB;
+		ldpc_dec->tb_params.eb = (uint32_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "c")) {
+		vector->mask |= TEST_BBDEV_VF_C;
+		ldpc_dec->tb_params.c = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "cab")) {
+		vector->mask |= TEST_BBDEV_VF_CAB;
+		ldpc_dec->tb_params.cab = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "rv_index")) {
+		vector->mask |= TEST_BBDEV_VF_RV_INDEX;
+		ldpc_dec->rv_index = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_cb")) {
+		vector->mask |= TEST_BBDEV_VF_NCB;
+		ldpc_dec->n_cb = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "r")) {
+		vector->mask |= TEST_BBDEV_VF_R;
+		ldpc_dec->tb_params.r = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "q_m")) {
+		vector->mask |= TEST_BBDEV_VF_QM;
+		ldpc_dec->q_m = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "basegraph")) {
+		vector->mask |= TEST_BBDEV_VF_BG;
+		ldpc_dec->basegraph = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "z_c")) {
+		vector->mask |= TEST_BBDEV_VF_ZC;
+		ldpc_dec->z_c = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "n_filler")) {
+		vector->mask |= TEST_BBDEV_VF_F;
+		ldpc_dec->n_filler = (uint16_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "expected_iter_count")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_ITER_COUNT;
+		ldpc_dec->iter_count = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "iter_max")) {
+		vector->mask |= TEST_BBDEV_VF_ITER_MAX;
+		ldpc_dec->iter_max = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "code_block_mode")) {
+		vector->mask |= TEST_BBDEV_VF_CODE_BLOCK_MODE;
+		ldpc_dec->code_block_mode = (uint8_t) strtoul(token, &err, 0);
+		ret = ((err == NULL) || (*err != '\0')) ? -1 : 0;
+	} else if (!strcmp(key_token, "op_flags")) {
+		vector->mask |= TEST_BBDEV_VF_OP_FLAGS;
+		ret = parse_turbo_flags(token, &op_flags, vector->op_type);
+		if (!ret)
+			ldpc_dec->op_flags = op_flags;
+	} else if (!strcmp(key_token, "expected_status")) {
+		vector->mask |= TEST_BBDEV_VF_EXPECTED_STATUS;
+		ret = parse_expected_status(token, &status, vector->op_type);
+		if (!ret)
+			vector->expected_status = status;
+	} else {
+		printf("Not valid ldpc dec key: '%s'\n", key_token);
+		return -1;
+	}
+
+	if (ret != 0) {
+		printf("Failed with convert '%s\t%s'\n", key_token, token);
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks the type of key and assigns data */
 static int
 parse_entry(char *entry, struct test_bbdev_vector *vector)
@@ -593,6 +893,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (parse_encoder_params(key_token, token, vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (parse_ldpc_encoder_params(key_token, token, vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (parse_ldpc_decoder_params(key_token, token, vector) == -1)
+			return -1;
 	}
 
 	return 0;
@@ -632,6 +938,45 @@
 }
 
 static int
+check_ldpc_decoder_segments(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) &&
+			(vector->entries[DATA_SOFT_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_SOFT_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_SOFT_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if ((ldpc_dec->op_flags & RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE) &&
+			(vector->entries[DATA_HARQ_OUTPUT].nb_segments == 0))
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARQ_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARQ_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	return 0;
+}
+
+static int
 check_decoder_llr_spec(struct test_bbdev_vector *vector)
 {
 	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
@@ -648,7 +993,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN)) {
 		printf(
-			"WARNING: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: input LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |= RTE_BBDEV_TURBO_NEG_LLR_1_BIT_IN;
 	}
 
@@ -667,7 +1012,7 @@
 			!(turbo_dec->op_flags &
 			RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT)) {
 		printf(
-			"WARNING: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
+			"INFO: soft output LLR sign formalism was not specified and will be set to negative LLR for '1' bit\n");
 		turbo_dec->op_flags |=
 				RTE_BBDEV_TURBO_NEG_LLR_1_BIT_SOFT_OUT;
 	}
@@ -675,6 +1020,21 @@
 	return 0;
 }
 
+static int
+check_decoder_op_flags(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_turbo_dec *turbo_dec = &vector->turbo_dec;
+
+	if ((turbo_dec->op_flags & RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP) &&
+		!(turbo_dec->op_flags & RTE_BBDEV_TURBO_CRC_TYPE_24B)) {
+		printf(
+			"WARNING: RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP flag is missing RTE_BBDEV_TURBO_CRC_TYPE_24B\n");
+		return -1;
+	}
+
+	return 0;
+}
+
 /* checks decoder parameters */
 static int
 check_decoder(struct test_bbdev_vector *vector)
@@ -688,6 +1048,9 @@
 	if (check_decoder_llr_spec(vector) < 0)
 		return -1;
 
+	if (check_decoder_op_flags(vector) < 0)
+		return -1;
+
 	/* Check which params were set */
 	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
 		printf(
@@ -731,7 +1094,7 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_ITER_MIN))
 		printf(
 			"WARNING: iter_min was not specified in vector file and will be set to 0\n");
@@ -751,7 +1114,7 @@
 	} else if (!(turbo_dec->op_flags & RTE_BBDEV_TURBO_MAP_DEC) &&
 			mask & TEST_BBDEV_VF_NUM_MAPS) {
 		printf(
-			"WARNING: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
+			"INFO: RTE_BBDEV_TURBO_MAP_DEC was not set in vector file and num_maps will be set to 0\n");
 		turbo_dec->num_maps = 0;
 	}
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
@@ -760,6 +1123,72 @@
 	return 0;
 }
 
+/* checks LDPC decoder parameters */
+static int
+check_ldpc_decoder(struct test_bbdev_vector *vector)
+{
+	struct rte_bbdev_op_ldpc_dec *ldpc_dec = &vector->ldpc_dec;
+	const int mask = vector->mask;
+
+	if (check_ldpc_decoder_segments(vector) < 0)
+		return -1;
+
+	/*
+	 * if (check_ldpc_decoder_llr_spec(vector) < 0)
+	 *	return -1;
+	 *
+	 * if (check_ldpc_decoder_op_flags(vector) < 0)
+	 *	return -1;
+	 */
+
+	/* Check which params were set */
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1 (0 - TB Mode, 1 - CB mode)\n");
+		ldpc_dec->code_block_mode = 1;
+	}
+	if (ldpc_dec->code_block_mode == 0) {
+		if (!(mask & TEST_BBDEV_VF_EA))
+			printf(
+				"WARNING: ea was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_EB))
+			printf(
+				"WARNING: eb was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_C)) {
+			printf(
+				"WARNING: c was not specified in vector file and will be set to 1\n");
+			ldpc_dec->tb_params.c = 1;
+		}
+		if (!(mask & TEST_BBDEV_VF_CAB))
+			printf(
+				"WARNING: cab was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_R))
+			printf(
+				"WARNING: r was not specified in vector file and will be set to 0\n");
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ITER_MAX))
+		printf(
+			"WARNING: iter_max was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT))
+		printf(
+			"WARNING: expected_iter_count was not specified in vector file and iter_count will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS)) {
+		printf(
+			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+	return 0;
+}
+
 /* checks encoder parameters */
 static int
 check_encoder(struct test_bbdev_vector *vector)
@@ -836,10 +1265,66 @@
 	}
 	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
 		printf(
-			"WARNING: rv_index was not specified in vector file and will be set to 0\n");
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
 	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
 		printf(
-			"WARNING: op_flags was not specified in vector file and capabilities will not be validated\n");
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
+	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
+		printf(
+			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
+
+	return 0;
+}
+
+
+/* checks encoder parameters */
+static int
+check_ldpc_encoder(struct test_bbdev_vector *vector)
+{
+	unsigned char i;
+	const int mask = vector->mask;
+
+	if (vector->entries[DATA_INPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_INPUT].nb_segments; i++)
+		if (vector->entries[DATA_INPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (vector->entries[DATA_HARD_OUTPUT].nb_segments == 0)
+		return -1;
+
+	for (i = 0; i < vector->entries[DATA_HARD_OUTPUT].nb_segments; i++)
+		if (vector->entries[DATA_HARD_OUTPUT].segments[i].addr == NULL)
+			return -1;
+
+	if (!(mask & TEST_BBDEV_VF_CODE_BLOCK_MODE)) {
+		printf(
+			"WARNING: code_block_mode was not specified in vector file and will be set to 1\n");
+		vector->turbo_enc.code_block_mode = 1;
+	}
+	if (vector->turbo_enc.code_block_mode == 0) {
+	} else {
+		if (!(mask & TEST_BBDEV_VF_E) && (vector->turbo_enc.op_flags &
+				RTE_BBDEV_TURBO_RATE_MATCH))
+			printf(
+				"WARNING: e was not specified in vector file and will be set to 0\n");
+		if (!(mask & TEST_BBDEV_VF_NCB))
+			printf(
+				"WARNING: ncb was not specified in vector file and will be set to 0\n");
+	}
+	if (!(mask & TEST_BBDEV_VF_BG))
+		printf(
+			"WARNING: BG was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_ZC))
+		printf(
+			"WARNING: Zc was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_RV_INDEX))
+		printf(
+			"INFO: rv_index was not specified in vector file and will be set to 0\n");
+	if (!(mask & TEST_BBDEV_VF_OP_FLAGS))
+		printf(
+			"INFO: op_flags was not specified in vector file and capabilities will not be validated\n");
 	if (!(mask & TEST_BBDEV_VF_EXPECTED_STATUS))
 		printf(
 			"WARNING: expected_status was not specified in vector file and will be set to 0\n");
@@ -856,6 +1341,12 @@
 	} else if (vector->op_type == RTE_BBDEV_OP_TURBO_ENC) {
 		if (check_encoder(vector) == -1)
 			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_ENC) {
+		if (check_ldpc_encoder(vector) == -1)
+			return -1;
+	} else if (vector->op_type == RTE_BBDEV_OP_LDPC_DEC) {
+		if (check_ldpc_decoder(vector) == -1)
+			return -1;
 	} else if (vector->op_type != RTE_BBDEV_OP_NONE) {
 		printf("Vector was not filled\n");
 		return -1;
diff --git a/app/test-bbdev/test_bbdev_vector.h b/app/test-bbdev/test_bbdev_vector.h
index c85e94d..4e5dbf5 100644
--- a/app/test-bbdev/test_bbdev_vector.h
+++ b/app/test-bbdev/test_bbdev_vector.h
@@ -28,15 +28,21 @@ enum {
 	TEST_BBDEV_VF_NCB_NEG = (1ULL << 16),
 	TEST_BBDEV_VF_NCB_POS = (1ULL << 17),
 	TEST_BBDEV_VF_R = (1ULL << 18),
-	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 19),
-	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 20),
-	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 21),
+	TEST_BBDEV_VF_BG = (1ULL << 19),
+	TEST_BBDEV_VF_ZC = (1ULL << 20),
+	TEST_BBDEV_VF_F = (1ULL << 21),
+	TEST_BBDEV_VF_QM = (1ULL << 22),
+	TEST_BBDEV_VF_CODE_BLOCK_MODE = (1ULL << 23),
+	TEST_BBDEV_VF_OP_FLAGS = (1ULL << 24),
+	TEST_BBDEV_VF_EXPECTED_STATUS = (1ULL << 25),
 };
 
 enum op_data_type {
 	DATA_INPUT = 0,
 	DATA_SOFT_OUTPUT,
 	DATA_HARD_OUTPUT,
+	DATA_HARQ_INPUT,
+	DATA_HARQ_OUTPUT,
 	DATA_NUM_TYPES,
 };
 
@@ -57,6 +63,8 @@ struct test_bbdev_vector {
 	union {
 		struct rte_bbdev_op_turbo_dec turbo_dec;
 		struct rte_bbdev_op_turbo_enc turbo_enc;
+		struct rte_bbdev_op_ldpc_dec ldpc_dec;
+		struct rte_bbdev_op_ldpc_enc ldpc_enc;
 	};
 	/* Additional storage for op data entries */
 	struct op_data_entries entries[DATA_NUM_TYPES];
diff --git a/app/test-bbdev/turbo_enc_default.data b/app/test-bbdev/turbo_enc_default.data
index 5587f9c..a2bc833 120000
--- a/app/test-bbdev/turbo_enc_default.data
+++ b/app/test-bbdev/turbo_enc_default.data
@@ -1 +1 @@
-test_vectors/turbo_enc_c1_k6144_r0_e32256_crc24b_rm.data
\ No newline at end of file
+test_vectors/turbo_enc_c1_k6144_r0_e18444.data
\ No newline at end of file
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* [dpdk-dev] [PATCH v6 7/7] test-bbdev: test vectors for 5GNR verification
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (5 preceding siblings ...)
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 6/7] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
@ 2019-07-03 15:24               ` Nicolas Chautru
  2019-07-03 18:05               ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Thomas Monjalon
  7 siblings, 0 replies; 95+ messages in thread
From: Nicolas Chautru @ 2019-07-03 15:24 UTC (permalink / raw)
  To: akhil.goyal, dev
  Cc: ferruh.yigit, thomas, amr.mokhtar, kamilx.chalupnik, Nicolas Chautru

Adding LDPC vectors for UT verification, coverage,
and profiling for 5GNR encode/decode operations.

Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
---
 app/test-bbdev/ldpc_dec_default.data               |    1 +
 app/test-bbdev/ldpc_enc_default.data               |    1 +
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data |  353 ++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data |  684 +++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data |  902 +++++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v11835.data   |   49 +
 app/test-bbdev/test_vectors/ldpc_dec_v2342.data    |  745 ++++++++++++
 .../test_vectors/ldpc_dec_v2342_drop.data          |  745 ++++++++++++
 app/test-bbdev/test_vectors/ldpc_dec_v7813.data    |   48 +
 app/test-bbdev/test_vectors/ldpc_dec_v8480.data    |   74 ++
 app/test-bbdev/test_vectors/ldpc_dec_v8568.data    |  255 ++++
 app/test-bbdev/test_vectors/ldpc_dec_v9503.data    | 1215 ++++++++++++++++++++
 app/test-bbdev/test_vectors/ldpc_enc_v11835.data   |   41 +
 app/test-bbdev/test_vectors/ldpc_enc_v2342.data    |  151 +++
 app/test-bbdev/test_vectors/ldpc_enc_v7813.data    |   43 +
 app/test-bbdev/test_vectors/ldpc_enc_v8568.data    |   70 ++
 app/test-bbdev/test_vectors/ldpc_enc_v9503.data    |  197 ++++
 17 files changed, 5574 insertions(+)
 create mode 120000 app/test-bbdev/ldpc_dec_default.data
 create mode 120000 app/test-bbdev/ldpc_enc_default.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8480.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_v9503.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v11835.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v2342.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v7813.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v8568.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_v9503.data

diff --git a/app/test-bbdev/ldpc_dec_default.data b/app/test-bbdev/ldpc_dec_default.data
new file mode 120000
index 0000000..3058cc0
--- /dev/null
+++ b/app/test-bbdev/ldpc_dec_default.data
@@ -0,0 +1 @@
+test_vectors/ldpc_dec_v2342.data
\ No newline at end of file
diff --git a/app/test-bbdev/ldpc_enc_default.data b/app/test-bbdev/ldpc_enc_default.data
new file mode 120000
index 0000000..371cbc6
--- /dev/null
+++ b/app/test-bbdev/ldpc_enc_default.data
@@ -0,0 +1 @@
+test_vectors/turbo_dec_c1_k6144_r0_e10376_crc24b_sbd_negllr_high_snr.data
\ No newline at end of file
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
new file mode 100644
index 0000000..5d4d27d
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_0.data
@@ -0,0 +1,353 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF301FC03, 0xF50F0EFA, 0xE70BF902, 0x1013060C, 0xF7F6FCE7, 0x04F3F709, 0x0C07FBF1, 0xFCF7070F,
+0xEA0FFAF8, 0x0FF71209, 0x070906F2, 0xF705F004, 0x15FA05F7, 0xF4F8010A, 0x0B0E09F5, 0xF70014F6,
+0xF106F80D, 0x0A06F9FC, 0x0DFBF803, 0x0308060D, 0x0CF9F8F9, 0xF2F409ED, 0x12FEF3EA, 0xF2FC07F9,
+0xEF12EEF8, 0xF90F030C, 0xEC171408, 0x11F902F3, 0xF102F6FF, 0x0AF6090C, 0x0103FA10, 0xF9FFF011,
+0x010FFB0F, 0xF80BFEF8, 0x10F2F1EE, 0x140204F6, 0x020AF206, 0x0BED04F2, 0x06FEF5F2, 0x0F070009,
+0xECF0F9F0, 0x081405F5, 0xF1000E18, 0xF4F7090C, 0xFD0F01EF, 0x0D12E702, 0x07EF1008, 0xEF06FD02,
+0x0302FD00, 0xF2F4040A, 0xF60BF9FC, 0x0BEEF20C, 0xF9ED0901, 0x00060406, 0xFF09F6F3, 0x0FF209F7,
+0x0D0EF210, 0xF3150611, 0x06060EF8, 0x0E06EFEC, 0x070C05F8, 0x0CFBF4F1, 0xFBFE0CF6, 0xFD03F714,
+0x03FCE40C, 0xF4F5F2F4, 0xF400F6FF, 0x0EF0090C, 0x04F9F9F6, 0xF5F6FEFD, 0xFE08FE01, 0x0607F3F3,
+0x11F4020C, 0xFD0FFB04, 0xEEF30D05, 0xFD040406, 0xFCF8F108, 0x0DFAFBF9, 0xE9F10B09, 0xEEF2140D,
+0xEE0A09F8, 0xFB010C0A, 0xF1FC0803, 0x0C07130A, 0x0312FD0A, 0xF6F10708, 0xFCF1FAEC, 0x0BF8F4F9,
+0xF009FBFF, 0x14EEF2EB, 0xEF0DF701, 0xFA14F90C, 0x08EF0110, 0xF50401E5, 0xEE13F30C, 0xF1F60916,
+0x05F414EC, 0xFF030A14, 0x0409FFF2, 0x0C0906FA, 0xF7F70414, 0xFBFA0EFA, 0xFD010BFD, 0xF5FA0EF1,
+0xF40FFAF4, 0xFF060503, 0x0BEF0BFA, 0x0717E7F3, 0xF4F1FD09, 0xEF09FEFE, 0x07F9F3FB, 0x0DFD08FE,
+0x0D0BF602, 0x05F21008, 0x1A0B0807, 0xEF0CFAF9, 0x090D0A06, 0x02EB0D0F, 0xF709FDFE, 0xFFF7F510,
+0xF10A0AF8, 0x15EF1311, 0xF20BEDF9, 0xF10A0BF7, 0x15150B08, 0x0B170F0A, 0x06FAFAF1, 0xF1F803FD,
+0x11F3EEEB, 0x0902FB04, 0x0703F215, 0x06EF10FE, 0xFB00140B, 0xF70CF806, 0x040AEE0E, 0xF9F1070C,
+0xEAF9F6FC, 0x0AECF80E, 0x09F2F9F3, 0xF708E8F0, 0x0902E9F7, 0x0209F6FD, 0x02F6EE10, 0x090BE811,
+0x0BF8E8F7, 0x03F8F5F1, 0x040AF109, 0x04F80CFB, 0x100A0913, 0x0CFBF403, 0xEE04FAF0, 0xFB040008,
+0x16081113, 0xFCE80708, 0xF2FF03F3, 0xF9F1F1F4, 0xF4ED09F7, 0x0BEBF0FC, 0xF80A01E8, 0x02F714F0,
+0xF516040E, 0x0A000AF1, 0xF5F3F101, 0x05F00807, 0xE9F20011, 0xE90E1613, 0xF6150AF4, 0x0707F4F8,
+0x10F7F20B, 0xF9F9F0EE, 0xF5FE0715, 0xF90E06F7, 0x0AE8F40C, 0x0B07FB06, 0xF0F6F10E, 0xF4060811,
+0x0A0C06F5, 0x0EFBFD0B, 0x0A0EF611, 0x03F4F8F5, 0xFDF10CEB, 0x13140CFD, 0xF712F80A, 0xF1F4E903,
+0xF5030203, 0xF80900F8, 0xFDF8F40B, 0xFEFBFD0A, 0x070813F5, 0xF9FA0B14, 0xFAF7FD17, 0xF5F50603,
+0xF916F210, 0x070F12FB, 0x0DF3F5FC, 0xEA11F207, 0x0DF70DF7, 0x10F1F4F4, 0x0BF409E8, 0x0606050E,
+0x09F50EFF, 0xF70406F8, 0xED0C11FA, 0x0F0400F3, 0x0208F4F8, 0xF9100EF0, 0xFCEEEDF3, 0xF1F5FE14,
+0xE0E80DFE, 0x0A0EF5ED, 0xF3E7F90B, 0x06E7F7FE, 0x12FE06F9, 0x0804F804, 0xF409F5F9, 0xF3F80EF5,
+0x02F6EFF2, 0x120AFF0E, 0x0D0EF4F8, 0xF7F80408, 0x0400F0F3, 0x150112F2, 0x0719ECF2, 0x0403EDFC,
+0xFBF205F8, 0xF00DF30F, 0xFC0CF413, 0x08F9F2FD, 0x1107FA03, 0xEC11EDFE, 0x0DF1F810, 0xFC0B11F9,
+0xF9FE0AFD, 0x0B0EF4F3, 0xF9F1050C, 0xFC0EF9F8, 0x000F14EA, 0xF00A0107, 0xF903F810, 0x0A040EFA,
+0x0C000203, 0xF40C02FE, 0xFA06130D, 0x100CFDF3, 0x0BF505FA, 0xF5FB00FC, 0xF8110808, 0x05ECEA0D,
+0x04F7F30A, 0xFE090FEC, 0xF9FBEE08, 0xFD0CEF0E, 0x09F80B0A, 0xF90BF9F4, 0x0EFB0C0C, 0x10EFF2F0,
+0x09F8F0FA, 0x060B0909, 0xF4FF0F13, 0x06FA0E16, 0x0515F512, 0x0E0B0708, 0xF6FBF9F7, 0xFBF405F2,
+0x050A1207, 0xFA001C0C, 0xFB0FEBEE, 0x0B13100C, 0x0D08F6FB, 0x16FEF2F9, 0x12F9F412, 0x09F600F5,
+0x02040B09, 0x0AF11310, 0x0C160A06, 0x0E09FF0E, 0xEF0B0CF3, 0x13F40DF5, 0x0BF704F9, 0x07EE0A00,
+0xF0F504F6, 0x0BFAFCFB, 0x0B0BF70A, 0x0207FF08, 0xF20B09E7, 0xF9F1F115, 0xF0090812, 0xFF0DF5F8,
+0x0C080709, 0x0512F3EF, 0xEE110708, 0x03EBFCFF, 0xEE0D08FE, 0x110BFCF6, 0x15F61408, 0xF413F30D,
+0x06F2F2F1, 0x04120BEF, 0xF90CF30B, 0xE40400FB, 0x0BFC1A09, 0x130109FD, 0xFF08E7F9, 0xF2FAF4F8,
+0x060BF901, 0xF112EE02, 0xFF060D0F, 0xFAFC0DED, 0x09FFF6FF, 0xF304ED0D, 0x050AF8F3, 0xF40403F8,
+0xF5F6070B, 0xF8F7FF00, 0x170E0708, 0xF808FFF4, 0x03F80C0F, 0x0A06FCF7, 0xF3EFF404, 0xF10D09FD,
+0xFDF9F016, 0x04FD06EF, 0xF5070EEF, 0xEFF20411, 0xF310FDF1, 0xF50AFB11, 0x040DF4F3, 0xF30307F7,
+0xFC031C00, 0xF008ECF5, 0xF011F5F9, 0xFCF1ECF7, 0x16FF0F0C, 0xF9F611FC, 0x0CF70D04, 0x020C0BFF,
+0x06FE0B09, 0xF9080C0C, 0x080DE706, 0x030FFAF8, 0xFF0C0D08, 0x03051108, 0xF402FA10, 0xF4FE0502,
+0xF7F6F2E9, 0x0DFBEB11, 0xFAF2F2F1, 0x0E06F60B, 0xEDEA0EF9, 0x09EDF30B, 0xEF0CF202, 0xFE0208F3,
+0x000D08FB, 0x0FF817F4, 0x0F0DFC01, 0x0D02FF0D, 0xED060EF1, 0x0B0CF0F4, 0x0EF80712, 0x0DF31402,
+0x110EF3F2, 0xF208F60C, 0x02000B06, 0x1106E901, 0xF309F708, 0xEEF003FA, 0x00F9EF05, 0xFC08FDF9,
+0x09050B08, 0xF5FB180A, 0x10F7EEF4, 0xF10F15F0, 0x0712FF10, 0xF5FFFB08, 0x11F6F0F1, 0xFEEEFC18,
+0xF0E806F2, 0x10F90DF9, 0xF30900FD, 0x0A06F40B, 0x12EE0004, 0xED0A0AFE, 0xED04F5F8, 0xFE09F7F3,
+0x01F601F8, 0xF7EA0405, 0x04080EF5, 0x0F1CF201, 0x0712F70F, 0xF0F21205, 0xFF0A1004, 0x0AF4F30D,
+0x0DF3000D, 0xF6000B01, 0xEF0DEDFA, 0x0700F8FF, 0x03F7FBF7, 0x06020D0B, 0xFCF7F6F0, 0xFA0208F2,
+0xFA0B04F1, 0xEE04F6F9, 0xFFEEF907, 0x080106EF, 0x0FF8F007, 0xFFEB0BE4, 0xF10FF8EF, 0x080AF3F9,
+0xEF0BF311, 0xF00FF504, 0x0D100100, 0xF10BEEF9, 0xF3F8F612, 0xFB00FE0C, 0x06F30BF0, 0xF2030D11,
+0x0002EB18, 0xEFF8FE07, 0x03F6EE14, 0x08ED08FF, 0x12150AF1, 0x06F0170C, 0x050F0C16, 0x1200100D,
+0xFAF70707, 0xF0FA100E, 0xEF090D01, 0x09EE0808, 0x0809F2F5, 0x03FF090C, 0x060410F1, 0x01EE16F7,
+0xF41015F9, 0x12F10B0C, 0x0FEBF1F7, 0xF906F40B, 0x0CFD02F6, 0x0FFAF00E, 0x0D030BF2, 0x0BF711F4,
+0xF1F30A06, 0x0CF5F9F0, 0x031A0D0F, 0x0CEC0608, 0x08EEF5F5, 0xF202020A, 0xFAF7F1FB, 0x0FFB07F9,
+0xF5010C0A, 0xF0F6FA0C, 0xF70FF0FF, 0x08ECF80E, 0x0EFBEC10, 0x01F0EF14, 0xE9030C08, 0x0A0EEFFD,
+0xF7001415, 0xEF04FCF3, 0xFF0C13EE, 0x05F4F2FC, 0xF9F3E7F7, 0xEC0CF6FE, 0xFDF70702, 0xFE12EFF0,
+0x0FFB0D07, 0xF6E8ED03, 0xF40607F5, 0x06040F0D, 0xF60700F1, 0x080503FA, 0xEE0B06F8, 0x0114050A,
+0x0DFF0B11, 0xF5EFF7ED, 0x11EE0F13, 0x0201EAEF, 0xF80BF80F, 0x070D0F0C, 0x090502F0, 0x0BE70401,
+0x0A0CF0F4, 0xF601F3F7, 0x1AEEF912, 0x11060C03, 0x09EDF7F9, 0xF6ED1708, 0xF0FA0E02, 0x0DF20FFC,
+0xEFFCF7F3, 0x090EF50C, 0xFAF8FDF9, 0x0F0E1304, 0xF117F3F9, 0x0CF3020D, 0xF8FBF705, 0xFBFEF0ED,
+0xF5F1EB14, 0x0D07F81B, 0xF9F704F4, 0xF1F3FE09, 0x03030DF6, 0xFA02F1F5, 0x11F4F600, 0x16081215,
+0xF5090B0A, 0xFA0C0AF0, 0xF60F0E02, 0xF3E8160D, 0x08FDEEF8, 0x10F907FC, 0x0AFE00F5, 0x0AF0F00F,
+0xF4F7EE0B, 0xFFF3F4F5, 0xFDF718EF, 0x0CFC0B10, 0xF70AFEFE, 0xFCF2EDFB, 0x08EC0F15, 0xFBEE11EC,
+0x0BF6080E, 0x0D02F702, 0xF3FE09F9, 0xF9F30A10, 0x0FF20809, 0xF910FDF8, 0xFA060EEE, 0x10FBFE06,
+0x150C0810, 0xEE0D160B, 0xFF08FB0C, 0x0411FC10, 0x09F8FEF6, 0x0BFC10F2, 0x0DEE0D07, 0x0C03F40D,
+0xF1F5FC11, 0xF80C0011, 0x06EF0208, 0x070C08F6, 0xF807F80C, 0x10090000, 0x050EFD0F, 0xF80CF216,
+0xF9FFF2F9, 0x08EE09F8, 0x09EEFFF5, 0xF8F70CF0, 0xF609F803, 0xF90AF509, 0x0E00FE0E, 0x05F7FE0A,
+0xF807F1F6, 0xFCF5F6FF, 0x0AFE0BFD, 0x09F500E5, 0x0DF8FC0C, 0x070808F1, 0xEDEEF00D, 0x0900FBF2,
+0xF407FAEA, 0xEFFA0CED, 0x10170A0B, 0xF807F6EA, 0xF1ECF9FF, 0xF5FEF4FF, 0x0E020B11, 0xFFEDFC0B,
+0xF3F4ECE6, 0xEE0AF6F4, 0x09F7FE05, 0xF4F2EAFA, 0xF7F70D06, 0xF708EF07, 0x10F8FCF7, 0xEFFB08F2,
+0xFA05FDF7, 0xF3F31111, 0x0109ECFB, 0x0DF1F208, 0x0EF3F307, 0xFFF1F4FE, 0xEDFF12FA, 0x13080405,
+0xF307040D, 0xF408FCFC, 0x10120500, 0x090AEC07, 0x0CF10907, 0x09EEF8ED, 0xFCED0CFB, 0x0CF91008,
+0xFB0FFCF2, 0xF709F7F6, 0x080608F8, 0xF70BF60C, 0x03F60808, 0x0507F9FC, 0x13F3F40C, 0xEC000A0F,
+0xF7F307FD, 0xF2FF0B0E, 0x03FCF5F4, 0x04E4FE0B, 0x0F0BFEF4, 0x100C02F5, 0x13E9ED0D, 0x0204F4ED,
+0xF5F3FAF1, 0x05FD0A05, 0x00F4E4FA, 0xF9FA0EEC, 0xF308F50F, 0xFAF8FB0C, 0x14F70B0A, 0x090A080B,
+0x011207F4, 0xF0070AF0, 0xEDFE0EF3, 0x1311EF09, 0xF8F9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF1F50413,
+0xF6F8F50F, 0xF7FEF00A, 0xF70104F1, 0x0D04F717, 0xEBF31209, 0xFFF50CE7, 0x0CF7070C, 0xFA0AF50A,
+0xF5FEF6F1, 0x050EEF00, 0x0705F6EF, 0x1204FAE5, 0xF80BF9FD, 0x0AF4FDEF, 0x08F80307, 0xEE04050C,
+0xFBEFED07, 0x0A120401, 0x1208F2F1, 0xF6F31315, 0xF7F3E909, 0xF1F90F08, 0x03E40709, 0xFB0BFD0E,
+0xF5F9F7F8, 0x0AF7FEEB, 0x12F4F306, 0x12F1FBF7, 0xF20606F6, 0xFAFB1402, 0x0E11FBF2, 0xFAECF8FD,
+0xFAEEFCF6, 0xFA07FD02, 0x0DFCF604, 0xFAF4FC09, 0xF100EF10, 0xFDEE08F8, 0x0D0B14F0, 0x0BF30DEC,
+0xF9000FF1, 0xF8090E06, 0x09EB03F7, 0x0FF90DF5, 0xEC11F6F8, 0xF6EE09FE, 0xF5F0F9FA, 0xF907EF0B,
+0xFCEE06F8, 0x0FFEFB16, 0x0AFD0805, 0x05F10A08, 0x0CF303F7, 0x0115F3FA, 0xEE0D0A0D, 0xF9F6F80E,
+0x100A0AF8, 0x0BF702FC, 0xF6080705, 0xFD01F3F4, 0x0DFE0101, 0x0EF7FF0A, 0xF00BFFF9, 0xF8FBEF0F,
+0x1101F7F6, 0x1104F5E7, 0xF81709F6, 0x0809F7F5, 0xFEF509F8, 0xEBFB00E8, 0x0800FFF6, 0xF111FAFE,
+0x14F2F6F5, 0xFAEF0108, 0x0FFB100F, 0xF0FB090C, 0xF608EF0B, 0xF304FB19, 0xFEEE0E11, 0x12030908,
+0xF3090907, 0xF707FC11, 0xF8EDFD0F, 0x04F2F5F5, 0x03FEF2F6, 0xF00B02FA, 0xFBF805F9, 0xF5FA1012,
+0x08060E06, 0x12E8F709, 0x0AEAFCEC, 0x080EF10C, 0xF510FEF8, 0xEF06F6FD, 0x0F0508FD, 0xFFF8FA05,
+0xF6091212, 0x07F114F7, 0x070CF50B, 0xF3F501EF, 0x080BF00B, 0x06F9FDEF, 0x08F5EEF2, 0xFA0D0C05,
+0x02FFF90E, 0x050AFA08, 0x0803FF00, 0xF40901F5, 0xF113F514, 0xF9080DF9, 0x03F6000A, 0x170AFCFE,
+0x08050A04, 0x09E5F2FC, 0x0B00F00E, 0x10EF100A, 0x0BFF10F1, 0x120602FD, 0x0AF1F703, 0xF50DF811,
+0xEBF5F012, 0xF908020C, 0x030112F2, 0x16F9E0F5, 0x06070008, 0xFEFAEAF6, 0xFA0D1305, 0xFFFEFA14,
+0x0602F9EF, 0xF2F90202, 0xEF0E10ED, 0x06F00BFD, 0xF0E90503, 0x1506FAF2, 0x01F80A0D, 0xF6E90304,
+0xF1F810F8, 0xF5F60A00, 0x0309F9F5, 0xF1F4F9FA, 0xF4FA0A07, 0xE5080803, 0xF7F9040B, 0x0FFC0FF9,
+0x0AF4FCF5, 0xF0F20B02, 0xFAFB02FE, 0xF3000D0E, 0xF3FAF9FD, 0x02040209, 0xED0DF1F4, 0xF6F00DEA,
+0xFC0004FF, 0x050BFF0D, 0xFFFBF80D, 0xF40302F8, 0xF8FA07F2, 0xF103F907, 0x050B08FB, 0xEF010E0C,
+0xF8030DFD, 0xF814F60C, 0xFA09F506, 0xF4F4F2FE, 0x09F8EFED, 0x03F612F6, 0xF609F20D, 0xF90BFB11,
+0xF60EF5F8, 0x00F60AF9, 0x0D0112E8, 0xF60900F0, 0x0C0008F8, 0xF5ECFD06, 0xEFF9000E, 0x0411FA09,
+0x110B0BEF, 0x11EA0301, 0x0B0CF10A, 0xF1EFF50A, 0x111004FD, 0x0807FDF5, 0x0AF5F100, 0xF8080BF3,
+0x0D01F7F5, 0x000716ED, 0xF3F6F80A, 0xFDF30513, 0xF8FA0B0E, 0x0DF80103, 0x020DF308, 0x10F6050B,
+0x09F7F609, 0xFCF103F0, 0x0709F6F4, 0xF40D12F6, 0x0B02FD0B, 0xF2FC10ED, 0x04EDF7E9, 0x040E0E0E,
+0x090708F2, 0xE90808F9, 0x0E0CEA13, 0x06F103FC, 0xF80C0506, 0xF4FF0DFB, 0x060A08F7, 0x09EBEE07,
+0xF4F8FB0A, 0x0CF60306, 0xFB1EF1FF, 0x08F90C0E, 0x160BF5F5, 0x10F604EE, 0xF40302F7, 0x040507FF,
+0xFDF3FD09, 0xFD0FFB0D, 0xF8F406F8, 0x0BFAF40C, 0x16F6FFF3, 0xFC1F0B0C, 0xF3EEF50F, 0x08F5EB0D,
+0xF0FD0BF4, 0xECF5F9F7, 0xF30100EF, 0xF80BE9F5, 0x0200F50F, 0x08F7F8FA, 0x10F0F4F5, 0xF3ECEFFA,
+0x09FEF5F1, 0xFEEAF402, 0xFAFC13FC, 0x15F8F70F, 0xF7060700, 0x07100D0B, 0x1705F901, 0x0EFF0605,
+0xF407FA16, 0x02FA0615, 0xFDFF0BF4, 0xF211FA0F, 0x0F0406F8, 0x10EEEB0B, 0xEBF1FF12, 0x170E130F,
+0x0B0BF3F4, 0x03120AF8, 0x00160304, 0xF7F6E3F4, 0x0DE6EEEF, 0xEC07F5ED, 0x050F060B, 0x141705EE,
+0xFCFE0AF2, 0x16050AF5, 0x01FEF6F5, 0x0EEFFD0B, 0x0BFDEB15, 0x02FF0507, 0x1507F409, 0x03011609,
+0xFCEE090D, 0xF202F3EB, 0x07FB040D, 0xFAF614F9, 0x0F07070E, 0x0AEFF2F6, 0xFE0604F6, 0xF709F908,
+0xECFE06F1, 0xF1140E0F, 0x0BEEFCEB, 0x13F60DFC, 0xED140FF2, 0xF607F3EF, 0x10040D0B, 0xF2FB0D03,
+0xF4F40CFC, 0xF10AF605, 0xF1FBF20D, 0x0E0D0BF6, 0xF50213F8, 0x0C060F0B, 0x13FBFB0E, 0xEBFFEE0F,
+0xF40909F7, 0xF8090E07, 0xEC0F0A02, 0xF6F70818, 0x0DF0F105, 0xF90B09F8, 0xEFF6090D, 0xF6FE020C,
+0xF6ECEFF0, 0x1409F7F4, 0xF9F3F00A, 0xF4040110, 0x10F1FB05, 0x13EB0B05, 0x110C0111, 0x0F05F3F9,
+0x12F3ED0B, 0xECFC09F1, 0xF90BF8F3, 0x0D12030B, 0xF10403FC, 0xF403FA11, 0xF1FC0A0F, 0xFE03F40B,
+0xE9EF0AFC, 0xF6FB0B09, 0xF7FBF111, 0xFFF5F00C, 0xF205F004, 0xF80B01F8, 0x0BFC1AF7, 0x00F61509,
+0x13FB0F00, 0x09FEEE0C, 0xF7F7EAFB, 0x130F0D08, 0x00060809, 0x130BFBFD, 0xF00F0E15, 0xF10EF912,
+0xF507F0F8, 0x0502010B, 0x0BFAF8F0, 0x0307F614, 0xFEF30508, 0x09060B15, 0xFAF8F3F9, 0xEBF2F8FD,
+0xF9060AF8, 0xEAEE12F6, 0xF406F0E8, 0xF405FC09, 0x130612F7, 0x0D07F811, 0x0D03F8F8, 0x0100130C,
+0x0CF9F20A, 0xF30406F9, 0x0CF5F4F7, 0x0006F10B, 0x11F2F0F7, 0xE80DF60C, 0xFE02F6F7, 0xF70607FB,
+0x130AFCF5, 0xF8F71006, 0x0AFCFDF4, 0xF00E04F1, 0x16F5FCFE, 0xF6FA06FA, 0x09F9ED17, 0xFE051106,
+0x0D0CED0A, 0xEDFC14F4, 0xF81012E8, 0x030303FC, 0xF400F8FD, 0xFDF3F407, 0x0B091406, 0x0CFCF6F4,
+0x180D110B, 0x0DFBF10B, 0xFBE4FAF9, 0x0B10F417, 0x0608F9F2, 0xF2F2F904, 0xF80306F7, 0x0902F3FA,
+0x080EFA07, 0x03F00600, 0xE2ED0DF1, 0x0AFB140A, 0xF50FFAEB, 0x0AE608F5, 0x0DF8FB0B, 0xE7F206FC,
+0x050D0BFB, 0x0204FDF5, 0xFBF70706, 0xF4F0F60B, 0x0B07F7FC, 0x01F7F905, 0x0F16F309, 0x0C0AFAF0,
+0xFDF2010F, 0x0BFF040D, 0x060E04F2, 0x0FEA0915, 0x0F020AF3, 0x06080E02, 0xFFF906F5, 0xF600F1FA,
+0x060E1104, 0xFCEF0CF7, 0x0CF30D14, 0x010F03F6, 0xF9FAF6EE, 0xF6F112FE, 0xF0F302F2, 0x12080FF1,
+0xF911F002, 0xF0F6F010, 0x0D02FC06, 0x10F8FEF2, 0xF6FCE703, 0xEA12FC0D, 0xFFF6FC13, 0xF407F0F8,
+0x0DF5010D, 0xEA0C08F4, 0x02050AFB, 0x090DF6FF, 0xF2F4F709, 0xF104ED0E, 0x0906F8F6, 0xF8F806FB,
+0xF8F20F0D, 0xF8F3F7FA, 0xFE04FB02, 0xF80DF7F9, 0x030EF400, 0x0A05EE08, 0x04EB06EC, 0xF6F50FEF,
+0xEF0E03E7, 0x13FE090B, 0xF70FFC0E, 0x120B150E, 0x0712EDF4, 0x0E04EDF8, 0x0D0DF510, 0x080EF3EE,
+0x0DF702EF, 0x0902E91A, 0xFD10F4EC, 0xF1F7FA0F, 0xFEFDF4FA, 0xFDF60F04, 0xF10FF20B, 0x031017E9,
+0x12EF03FE, 0xF3F6110C, 0xFEF4FC07, 0xF20A08EB, 0x020613F0, 0xF5F6FB0A, 0x07160207, 0x15F5F20B,
+0x18FFED0B, 0x0F11F911, 0xFFEF0B08, 0xF3F8F8F8, 0x0AF40B10, 0x0FF70A04, 0x0AEB13FE, 0xEE0B0C0A,
+0xF5020605, 0x0A140A00, 0x010EF6F2, 0x1A0304FC, 0x08EB0FFF, 0xF0FDF617, 0x12FC01F4, 0xEC1709FA,
+0x0C0C02FA, 0xF90DF9F9, 0xF0F50311, 0xF1100C04, 0xF20200FC, 0xF2141703, 0xFA051100, 0x0D14F8FC,
+0x03F2F6FE, 0x04FCF6F6, 0x10FAFA03, 0x0309FB05, 0x09F00DF4, 0x0A08F4F3, 0xF3F5EFEF, 0xF106FBFE,
+0x050105F8, 0x0D09F0F8, 0x0E130EF1, 0xFAF00B09, 0x080D11ED, 0xFDF703F8, 0xF8F10AFC, 0xFE04ED0A,
+0xF4100B08, 0xF1FCF10F, 0x050E14F4, 0x05070D04, 0x0AEC100C, 0x0D0BFCF6, 0x01FAEB0C, 0xFF0C0DF8,
+0x010E0DFF, 0x07F7F70F, 0x00FBF6FC, 0xF9FB0D09, 0xF1ED080D, 0xFCF9EDF4, 0xF3F80C0B, 0xFD0210F4,
+0xFBF206F2, 0xF3F5F7FC, 0xF8FDFFF1, 0xF0020908, 0xF804F505, 0xF8F2080B, 0xF0FA09F3, 0xEFF8120A,
+0x14EDF8EA, 0x0CF40E15, 0x0EEB0600, 0x02FD01FB, 0xF5F30D0F, 0xFFF400F1, 0xF30F0909, 0xF9ECF107,
+0xEE0AF0FF, 0x05FA070D, 0xFD0CFB06, 0xF8F7EFEE, 0x13F0030B, 0x050404F4, 0xEE0FF6F5, 0xFC0813F5
+
+output0 =
+0xCE63DECD, 0xD5F54E4C, 0xB969BECF, 0x67199350, 0x73BD1B5F, 0xF3FA3DD7, 0xB72F3304, 0xCA6C9E7F,
+0xC75EBD3C, 0xE9183BC1, 0xD2EFF1F5, 0xDB98D960, 0x9183FF24, 0x84E53C2E, 0xBC0ACB99, 0x7544F27D,
+0x61B01F8C, 0x6F8E7BCA, 0x0F9A1912, 0xA4DE41C3, 0xFB1F18F3, 0x44764A35, 0x9525E193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x82E626C3, 0x6764F162, 0xB7180FC5, 0x92F0BF10, 0x6BE2A423, 0x6652CA83, 0x76AB8A79,
+0xD2DC0142, 0x3684A5B0, 0x6AF81D1E, 0xCE7B11D8, 0x5C0A7AA6, 0x9B519157, 0xCF71DB9C, 0xE66B5219,
+0x0976A858, 0x97CCD7A4, 0xBD21A44D, 0x694DB77D, 0x2046F400, 0x66BF01FF, 0x4FE7F1B2, 0x7D287C99,
+0xA6DD65A8, 0xDDAC14DF, 0xB4EA7458, 0x9BF75449, 0xBCCF3BC5, 0x59B3E1D5, 0x04D5FEAA, 0xA91CED07,
+0x264A3E33, 0x314BE435, 0x47FB659B, 0xC8C6CBDD, 0xD4BAF083, 0x51A5AE91, 0x39A33C7A, 0xC54DBA59,
+0x81FD7FFA, 0xE2A3941C, 0x386750ED, 0x85C6A1CF, 0x52E46581, 0x2DD58578, 0x4F8C20DC, 0xCA6C89B8,
+0xD33AF49E, 0xB73D9A1C, 0x8F5992A5, 0x4613FE36, 0x8F724B6A, 0xD2C9A290, 0x5C4791D6, 0x8AA4DE2A,
+0xBCA9EEF4, 0x769D6618, 0x71DF1DFC, 0xE9DC6A93, 0x99E831C3, 0x88B8CBD4, 0x4C9E63C5, 0xBEBC2792,
+0x9E54A535, 0x55181DEF, 0x0F83F8D2, 0x79A8094D, 0x2DA8AAEB, 0xD64C6C17, 0x4F0AADB5, 0x20CB1D7F,
+0x2D6E9F16, 0xB97E8AA9, 0x36167C67, 0x8D84329F, 0x4002AA1C, 0x6326776B, 0xB9B50F8F, 0xF9C52D71,
+0x4D1A117F, 0x604A6DEE, 0xBB19DFB2, 0x96121F4E, 0x9E7C8D9E, 0x00F8F1F3, 0x204B8054, 0xA67E9C60,
+0xC534F776, 0x94B8C032, 0x38E7CFEC, 0xF1E48A55, 0x821E3625, 0xFAC9EBD0, 0xF3D38EF2, 0xB4DA79FB,
+0xF32472
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+20
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE
+
+expected_status=
+SYN
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
new file mode 100644
index 0000000..63c2d3b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_1.data
@@ -0,0 +1,684 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF30110EF, 0x09FB0E0E, 0xFB0BF902, 0x10FF060C, 0xF70A10FB, 0xF007F709, 0x0CF30FF1, 0xFC0B07FB,
+0xEA0FFA0D, 0xFB0B1209, 0x0709F1F2, 0x0BF1F004, 0x000EF10B, 0x08F8010A, 0xF70E0909, 0xF7EC00F6,
+0x05F2F8F9, 0x0A060D10, 0x0DFB0CEF, 0xEFF4F2F9, 0xF80DF8F9, 0xF20809ED, 0xFDFEF3FE, 0xF2FC07F9,
+0xEF12EEF8, 0x0D0FEF0C, 0x011714F4, 0xFDF902F3, 0x05020A13, 0x0A0BF5F8, 0x1517FA10, 0x0DFF04FD,
+0xED0F0FFB, 0x0C0B12F8, 0x10F205EE, 0x14EEF0F6, 0xEEF50606, 0xF701F006, 0xF2120906, 0x0FF31409,
+0x0004F9F0, 0x080005F5, 0x05000E18, 0x080BF50C, 0xE9FA01EF, 0x0DFDE702, 0xF303FC08, 0x0306FDED,
+0x0302FD15, 0xF2F404F6, 0xF60B0DFC, 0xF702F2F8, 0x0D0109ED, 0xECF2F006, 0xFFF50AF3, 0xFB0609F7,
+0xF9FAF2FC, 0xF3010611, 0xF2F20EF8, 0x0EF203EC, 0xF30C050D, 0x0CFB0905, 0x10EAF80A, 0x1103F714,
+0x17FCE4F8, 0xF409F2F4, 0x09000A13, 0x0EF009F8, 0xF00DF90A, 0x0AF612E9, 0x12F4FE15, 0x06F3F307,
+0xFDF4EEF8, 0xFDFBFB04, 0x02F30DF1, 0xE9F0F006, 0x10F80508, 0x0DFAFBF9, 0xE9F10B09, 0x020600F9,
+0x020AF50C, 0x0FED0C0A, 0x05FCF403, 0xF8F3FFF6, 0x0312FD0A, 0x0A05F308, 0x10F10E00, 0x0B0CF40D,
+0x04090FFF, 0x1402F2FF, 0xEF0D0B01, 0x0E00F9F8, 0x08040110, 0x0A04EDE5, 0xEE13080C, 0x05F6F516,
+0x05F414EC, 0xFF030A00, 0xF0F5FF06, 0xF809F20E, 0xF70CF014, 0x0FFAFA0E, 0x1201F611, 0xE10E0EF1,
+0xF40FFA09, 0x13F2F103, 0x0B030B0E, 0xF303FCF3, 0xF405FD09, 0xEF09FEEA, 0x07F908FB, 0xF9FD08FE,
+0xF9F7F602, 0x0506FCF4, 0x060BF4F3, 0x040C0E0D, 0xF5F9F606, 0x02FF0DFB, 0x0BF51112, 0x13F7F5FB,
+0xF10AF6F8, 0x15031311, 0x07F7ED0D, 0x050AF7F7, 0x0101F708, 0xF717FBF6, 0x06FAFA05, 0xF1F8EF11,
+0x11070200, 0x09EEFB04, 0x07EF0601, 0x0603FCFE, 0x0FEC140B, 0xF7F7F806, 0xF00A02FA, 0x0E06F30C,
+0xFEF90A10, 0x0AECF80E, 0xF5F2F907, 0x0B08E804, 0x0902E9F7, 0xEE09F6E9, 0xEEF60210, 0x09F7E8FD,
+0x0B0CFC0B, 0x030C0905, 0xF0F6F109, 0xF0F8F8E7, 0x100A0913, 0xF8FB0817, 0x0204FA04, 0x0FF00008,
+0x02F4FD13, 0xFCE8F208, 0x06EBEF07, 0x0DF1F1F4, 0x0801F5F7, 0xF7EB04FC, 0x0C0A15E8, 0x020B1404,
+0xF502EF0E, 0xF600F6F1, 0x090705EC, 0xF1F008F2, 0xFDF2EC11, 0xE90E02FF, 0xF615F6F4, 0xF3F3F4F8,
+0xFC0BF20B, 0xF9F90402, 0xF512F301, 0xF90E06F7, 0x0AFC080C, 0xF707FB06, 0xF0F6F1FA, 0x0806F4FD,
+0xF6F8F10A, 0x0EFBFDF7, 0xF60EF6FD, 0x0308F809, 0x11050CFF, 0xFF140CFD, 0xF7FEF80A, 0xF1F4FD03,
+0xF5EF0203, 0xF8F514F8, 0x11F808F7, 0x12FBFD0A, 0xF3F41309, 0x0D0FF700, 0xFA0B1103, 0xF50A06EF,
+0xF902F210, 0x070FFEFB, 0x0D070910, 0xEA11F207, 0x0D0B0D0B, 0xFCF1F408, 0xF70809E8, 0x06F2F10E,
+0x1DF5FAEB, 0xF7F0F20C, 0xED0C110E, 0xFBF000F3, 0x0208080D, 0x0DFCFAF0, 0x11EE0107, 0xF109FE00,
+0xF4FCF9FE, 0x0AFAF501, 0xF3E7F90B, 0x06E70B12, 0xFDFE06F9, 0x08F00C04, 0xF409090D, 0xF30C0EF5,
+0x02F6EF06, 0x12F6EB0E, 0x0DFA09F8, 0x0BF8EFF4, 0xF015F007, 0x15ED1206, 0x07050006, 0x18EF0111,
+0x0FF2050C, 0x05F9070F, 0xFCF80813, 0xF3F90611, 0xFDF30EEF, 0x00FC0112, 0x0DF1F8FC, 0x10F7FDF9,
+0xF9EA0AE9, 0xF70E0807, 0x0DF105F8, 0x100E0DF8, 0x140F14EA, 0x04F60107, 0x0D030C10, 0x0AF0F9FA,
+0xF814EE17, 0xF4F802FE, 0xFA06FFF9, 0xFCF811F3, 0xF6F5050E, 0xF5FB00FC, 0xF811F4F3, 0xF0ECEA0D,
+0x04F7070A, 0x12090F00, 0xF9FBEEF3, 0x11F8030E, 0xF5F8F7F6, 0xF90BF908, 0x0E0FF80C, 0x10EF06F0,
+0xF5F804FA, 0x06F70909, 0x08EB0F13, 0xF20E0E16, 0xF11509FE, 0x0E0BF3F4, 0xF60F0E0B, 0xFBF405F2,
+0x050AFDF3, 0x0EEC1C0C, 0xFBFBEB02, 0xF71310F8, 0xF9080BFB, 0x1612F2F9, 0xFE0DF412, 0xF50A0009,
+0xEEF0F7F5, 0x0AF11310, 0x0C02F61B, 0x0EF4FF0E, 0x03F7F8F3, 0xFF08F909, 0x0B0BF00D, 0xF3EE0A00,
+0xF0F504F6, 0xF70EFC0F, 0xF70B0BF6, 0x16F313F4, 0x060BF5E7, 0xF9050515, 0xF00908FE, 0xEB0D09F8,
+0x0C08F309, 0x0512F303, 0xEEFCF308, 0x03FF1013, 0x02F9F412, 0xFD0B10F6, 0x010A14F4, 0x091307F9,
+0x06F206F1, 0x04FE0B03, 0xF90C07F7, 0xE40400FB, 0x0BE81AF5, 0x1301F4FD, 0xEBF4E70D, 0x060EF4F8,
+0x06F7F9ED, 0xF1FEEE02, 0x13F20DFB, 0xFAE7F9ED, 0x09FF0A13, 0xF304EDF9, 0x050AF807, 0x08F0EFF8,
+0xF5F607F7, 0xF8F71400, 0x170E07F4, 0xF8F41308, 0xEFF80C0F, 0x1EF2FCF7, 0x07EF08F0, 0xF10D09FD,
+0x11F9F002, 0x0411F2EF, 0x09070E03, 0xEFF2F0FC, 0xF310FDF1, 0x090AFBFD, 0x040DF407, 0xF317F2F7,
+0xFCEF1CEB, 0xF00800F5, 0xF01109F9, 0xFCF1000B, 0x16FF0FF8, 0xF9F6FD10, 0xF80B0D18, 0x160CF713,
+0x06FE0BF5, 0x0D08F80C, 0xF4F9FB06, 0x03FBFAF8, 0xFF0C0D08, 0x03F1FD08, 0xF4EE0E10, 0xF4EAF1EE,
+0xF7F6F2FD, 0xF90FEB11, 0xFA0606F1, 0x0E06F6F7, 0xEDEAFA0D, 0x09EDF30B, 0xEF0CF202, 0xFEEEF4F3,
+0x000DF40F, 0x0FF803F4, 0xFB0DFCEC, 0x0D02EB0D, 0x01060E05, 0x1F0CF0F4, 0x0E0C0712, 0xF9071402,
+0xFD0E07F2, 0xF2F4F60C, 0x02150BF2, 0x1106E901, 0x07F50B08, 0xEEF017E6, 0x00F903F0, 0x10F4FD0D,
+0xF505F7F4, 0x090F040A, 0xFC0BEE08, 0x050F15F0, 0x07FEFFFC, 0x09EB0F08, 0x110A04F1, 0x12EEFC03,
+0xF0E8F106, 0x100DF9F9, 0x07F500FD, 0x0AF208F7, 0x12EE00F0, 0x010A0A12, 0x01EFF5F8, 0x12090BF3,
+0xEDF601F8, 0xF7FEF005, 0x04F40EF5, 0xFB1C06ED, 0xF3120BFB, 0xF006FE05, 0x130AFCF0, 0x0A0807F9,
+0xF907ECF9, 0xF600F701, 0x03F9EDFA, 0x0714F8FF, 0xEF0B0F0B, 0xF216F9F7, 0x10F70A04, 0xFAEEF4F2,
+0xFA0B04F1, 0x02040AF9, 0x13020DF3, 0x08150603, 0x0FF804F3, 0xFFEB0BF8, 0x050FF8EF, 0x08F607F9,
+0x03F7F3FD, 0x04FBF5F0, 0xF910ED00, 0x05F7EE0D, 0xF30C0A12, 0xFBECFEF7, 0xF2F30BF0, 0xF203F9FD,
+0xEC16EB04, 0x03E4FEF3, 0x03F60200, 0x0802F4FF, 0xFE010A05, 0x06F0170C, 0x050F0C02, 0xFEEC100D,
+0xFAF7F307, 0x04FA10FA, 0xEFF5F901, 0xF5020808, 0x0809F2F5, 0x03FF09F8, 0x0604FC05, 0x01EE02F7,
+0xF4FC15F9, 0xFD05F70C, 0x0FEB05F7, 0xF9F2080B, 0x0C11EEF6, 0xFBFAF00E, 0x0D030BF2, 0x0BF7FDF4,
+0xF1F30A06, 0xF7F5F9F0, 0x031AF90F, 0xF8000608, 0xF4EEF509, 0xF20202F6, 0xFA0B050F, 0x0F0F070D,
+0x09EDF8F6, 0x040AFAF7, 0x0B0F04EB, 0x08ECF8FA, 0x0EFB00FC, 0xEDF00300, 0xFD03F8F4, 0x0AF90411,
+0x0B001401, 0xEFF0FCF3, 0xFFF8FEEE, 0x0508F2FC, 0x0EF3FB0B, 0xEC0CF6FE, 0xFD0B0702, 0xFEFE0404,
+0xFB0F0DF3, 0x0AFCED03, 0xF4F20709, 0xF2040FF9, 0x0A070005, 0xF4F1030E, 0xEE0BF20C, 0x1514F1F6,
+0x0D130B11, 0xF5030BED, 0x11EEFB13, 0x02EDFE03, 0xF8F7F80F, 0xF3F9FBF8, 0xF5051604, 0xF7FBF001,
+0x0A0C0408, 0xF6ED07F7, 0x1A020DFE, 0xFD060C18, 0xF5010BF9, 0xF6ED0308, 0x04FAFA16, 0x0D060FFC,
+0xEFFCF7F3, 0xF50EF5F8, 0x0F0CE90E, 0xFB0E13F0, 0x0517F30D, 0x0CF302F9, 0x0C0FF705, 0xFBFE0501,
+0x0905FF00, 0xF9F3F81B, 0x0D0BF0F4, 0xF10712F5, 0x0303F80A, 0x0EEE0509, 0xFDF4F600, 0x16F4FE01,
+0xF509F70A, 0xFA0C0A04, 0xF60FF902, 0xF3FC02F9, 0xF4FDEE0C, 0xFC0D0710, 0x0AEA0009, 0x0AF0040F,
+0x090BEEF7, 0xFFF3F4F5, 0xFDF718EF, 0xF8FCF7FC, 0xF70AEA12, 0xFC0601FB, 0xF4EC0F01, 0x0F021100,
+0xF70A080E, 0x0D02F702, 0x08FE090D, 0x0DF3F6FC, 0x0FF20809, 0x0DFCFD0C, 0xFAF20EEE, 0x10FB1206,
+0x150CF410, 0x02F9160B, 0xEBF4FB0C, 0x04FDFCFC, 0x09F8FE0B, 0xF7FCFC06, 0x0D02F9F3, 0x0CEF08F9,
+0x0509FC11, 0xF80CEB11, 0xF2EFEEF3, 0x07F8080A, 0xF8F30C0C, 0xFC091400, 0xF10E110F, 0x0CF80616,
+0xF913F20D, 0x08EE090D, 0x0902FF09, 0x0C0BF8F0, 0x0A09F8EF, 0x0D0AF5F5, 0x0E1412FA, 0x05F7EAF6,
+0xF807050A, 0xFCF5F613, 0x0A120BFD, 0xF509ECE5, 0x0D0D100C, 0xF2F30805, 0xED02040D, 0x0900FB06,
+0xF4070EFE, 0xEFFAF7ED, 0x1017F60B, 0xF807F6FE, 0xF100F9FF, 0x0912F413, 0x0E020BFD, 0xFF02FCF6,
+0xF308ECFA, 0x020A0AF4, 0x09F7FEF1, 0xF406EAFA, 0xF7F70D1A, 0xF708EF07, 0x100CFC0B, 0xEFFBF4F2,
+0x0E05FDF7, 0x07F3FDFD, 0x0109000F, 0x0D0606F4, 0xFAF3F307, 0x13F1F4FE, 0x01EBFEFA, 0xFF08F005,
+0x0707F00D, 0x0808FC10, 0xFC120514, 0x09F600F3, 0xF7060907, 0xF502F8ED, 0x10010C0F, 0x0C0DFC08,
+0xFB0FFCF2, 0xF709F7F6, 0x08F2F40C, 0xF70BF6F8, 0x03F608F4, 0x051BF9FC, 0xFF07080C, 0xECECF6FB,
+0x0BF307FD, 0xF213F7FA, 0x03FCF5F4, 0x04F8FEF7, 0xFBF7FEF4, 0xFC0C0209, 0x13E901F9, 0x02F0F401,
+0xF5F30E05, 0xF111F6F1, 0x0008E4FA, 0xF9FAFAEC, 0x07F4090F, 0x0EF8FBF8, 0x000BF70A, 0xF5F608F7,
+0xEC1207F4, 0x04070AF0, 0x01FEFAF3, 0x13FD03F5, 0xF80E09F1, 0x04090907, 0xEAF70FE9, 0xF10904FF,
+0x0A0C090F, 0xF7EAF0F6, 0xF7010406, 0xF8040B03, 0x0007FE09, 0x13F5F8E7, 0x0CF7F30C, 0xFA0AF5F6,
+0x09FE0AF1, 0xF1FA0314, 0xF3190A03, 0x12F0FAE5, 0xF80BF911, 0xF6F411EF, 0xF40C03F3, 0x02F0F1F8,
+0x0F03ED07, 0x0A1204ED, 0xFEF4F205, 0x0AF3FF01, 0xF7F3FDF5, 0x05F9FBF4, 0x03F8F309, 0x0F0BE90E,
+0x09F90BF8, 0xF6F7EAEB, 0xFEF40706, 0x12F10F0B, 0x06F2F2F6, 0xFAFB14EE, 0x0E11FBF2, 0x0EECF811,
+0xFAEEFCF6, 0x0E07FD16, 0x0D100AF0, 0x0E08FC09, 0x0500EF10, 0x12EE080D, 0xF9F700F0, 0xF7070DEC,
+0xE500FB05, 0x0C090E06, 0xF5EB030B, 0x0F0D0DF5, 0x00110A0C, 0xF6020912, 0xF504F9FA, 0x0DF303F7,
+0x1002060C, 0x0FEAFB02, 0x0A1108F1, 0x0505F608, 0xF807EFF7, 0xED0107FA, 0xEE0D0A0D, 0xF9F60C0E,
+0x10F60A0C, 0x0BF71611, 0xF6F407F1, 0xFD010708, 0x0DFE0101, 0x0EF7FFF6, 0x04F7EBF9, 0x0C0FEF0F,
+0xFD010B0A, 0x11EFF5E7, 0x0C02F5F6, 0x08090B09, 0xFE09F5F8, 0xFF0F14E8, 0xF40013F6, 0xF1FDFAFE,
+0x0006F6F5, 0xFAEF0108, 0x0F0FFC0F, 0xF01009F8, 0x0AF4EF0B, 0xF304FB19, 0xFEEE0EFD, 0xFEEF0908,
+0xF3F5F507, 0xF7071011, 0x0C0111FB, 0x04F20909, 0xEF13F20A, 0x040BEEFA, 0x0F0CF1F9, 0x09FAFC12,
+0xF4F2F9F2, 0xFEE80B09, 0x0AFEFC00, 0x08FAF1F8, 0xF5FCFEF8, 0x03F20AFD, 0x0FF1F4FD, 0x13F8FA05,
+0x0A09FE12, 0x07F100F7, 0x07F8F50B, 0x07091503, 0x08F7F00B, 0x06F9FDEF, 0x08F5EEF2, 0x0F0D0C05,
+0x02FF0D0E, 0x190A0E08, 0xF4EEEB00, 0x0809EDF5, 0xF1130914, 0x0D080DF9, 0xEFF6000A, 0x020A10FE,
+0x08050AF0, 0xF5E50610, 0xF7ECF0FA, 0x1004101E, 0xF7FFFB05, 0xFE0602FD, 0xF6F1F7EF, 0x090DF811,
+0xFF090412, 0xF9F402F8, 0x0301FE06, 0x160DE009, 0x1AF30008, 0x12FAEAF6, 0x0FF8FFF1, 0x13FE0E14,
+0xF2EEF903, 0x070D0202, 0xEFFAFCED, 0xF1F00BFD, 0x04E9F103, 0x01F20EF2, 0x150CF60D, 0xF6E9EF04,
+0x05F810F8, 0xF50A0A00, 0xEF090D09, 0x05F40DFA, 0xF4FAF61B, 0xF9F408EF, 0x0B0DF00B, 0x0FFC0F0D,
+0xF608FCF5, 0x04F2F7EE, 0xFA0FEE12, 0x0700F90E, 0x070FF911, 0x02F0EEF5, 0x01F905F4, 0xF604F9FE,
+0xFC1404EB, 0xF10BFFF9, 0xEBFB0CF9, 0x0817020C, 0x0C0EF306, 0xF1030EF3, 0x05F7080F, 0x03010EF8,
+0x0CEFF9FD, 0x0C14F6F8, 0x0EF5F5F2, 0x08F4F212, 0x090CEF01, 0xEF0AFEF6, 0x0A09060D, 0xF9F7FB11,
+0xF6F9F50C, 0x14F6F60D, 0x0DECFEE8, 0xF60914F0, 0xF814F40C, 0xF5EC1106, 0xEF0D00FA, 0xF0FDFA09,
+0xFCF70BEF, 0x11EA0301, 0x0BF805F6, 0xF103090A, 0x11FCF0FD, 0xF4F3FDF5, 0xF6F5F100, 0xF8F40BF3,
+0x0DEC0BF5, 0x14F316ED, 0x070A0CF6, 0x11F30513, 0xF8FA0B0E, 0x0DF8EDEF, 0xEE0D07F4, 0x100A050B,
+0xF5F7E2F5, 0xFCF1EFF0, 0xF309F6F4, 0x080D120A, 0x0BEEFDF7, 0xF21010ED, 0xF0ED0BFE, 0x040EFA0E,
+0xF5F30806, 0xFDF408F9, 0x0EF8EAFF, 0x060503FC, 0x0CF705F2, 0xF413F9FB, 0x06F608F7, 0xF5FFEE07,
+0xF4F80FF6, 0x0C0AEEF2, 0xFB1E06FF, 0xF40DF8FA, 0x160B0909, 0xFCF6F0EE, 0xF403020B, 0x04F10713,
+0xFDF3FDF5, 0xFDFAFBF9, 0xF808060C, 0x0BFAF40C, 0x01F6EB07, 0xFC0BF7F8, 0x070209FB, 0x0809EBF9,
+0x04FD0B08, 0xECF5F90B, 0xF31500EF, 0xF8F7E9F5, 0xEE00F5FB, 0x1C0B0CFA, 0xFCF00809, 0x070103FA,
+0x09FE0905, 0xFEEAF402, 0x0EFCFF10, 0x150C0BFB, 0x0BF20714, 0xF3FB0DF7, 0x03F1F9ED, 0xFA13F205,
+0x09F2FA16, 0x02FAF201, 0xFDFFF7F4, 0x06FD0EFB, 0x0F04F20C, 0xFCEEEB0B, 0xFF0513FD, 0x03FA13FB,
+0x0BF707F4, 0x03FE0AF8, 0x000203EF, 0x0BF6F708, 0x0DE60203, 0x00F30901, 0xF1FA06F7, 0x140305EE,
+0xFCEAF6F2, 0x02F10A09, 0x01FEF6F5, 0xFAEFFD0B, 0xF711EB15, 0xEEFF05F3, 0x01F3F409, 0x03ED0209,
+0x10EE090D, 0x060207FF, 0x070F04F9, 0x0EF6000D, 0x0F0707FA, 0x0A03060A, 0xFE06040A, 0x0CF50DF4,
+0x00FE1AF1, 0xF114FA0F, 0x0BEE10FF, 0xFFF6F9FC, 0xED000F06, 0xF6070703, 0x10040DF7, 0x06FBF9EF,
+0xF4090CFC, 0x050AF6F0, 0xF10F06F9, 0x0EF90B0A, 0x0902FFF8, 0xF8F2FBF7, 0x13FBFB0E, 0xEBFFEEFB,
+0xF409F50B, 0x0C090E07, 0xEC0F0A02, 0xF60B0818, 0xF9040505, 0xF90BF50C, 0x030AF5F9, 0x0A12EEF8,
+0x0A0003F0, 0x00090BF4, 0xF907040A, 0x08F01510, 0x10050FF1, 0x13EBF7F1, 0x110CED11, 0xFB0507F9,
+0xFDF3010B, 0xECE8F505, 0xF90B0CF3, 0x0D1203F7, 0x05EFEFFC, 0xF4EFFA11, 0x05FC0A0F, 0x12EF09F7,
+0xFDEF0A10, 0xF6E70B09, 0xF7FB06FD, 0xFFF5040C, 0x0605F0F0, 0xF8F7EDF8, 0xF7FC1AF7, 0x00F60109,
+0xFF0FFA00, 0x09EAEEF8, 0x0B0BEA10, 0xFFFB0DF4, 0x0006F4F5, 0x13F70F11, 0x04FBFA01, 0xF1FAF912,
+0xF5F3040C, 0x0502ED0B, 0xF7FAF804, 0x03070A14, 0x1207F108, 0x0906F701, 0x0E0D070D, 0xFFF20C11,
+0xF9F2F6F8, 0xFEEE12F6, 0x08F1F0E8, 0x08F0FC09, 0x1306FEF7, 0xF907F8FD, 0x0DEF0C0C, 0x0114FFF8,
+0x0CF906F6, 0xF3F0F10D, 0xF7F5F40B, 0xECF2050B, 0xFD0604F7, 0xFCF9F60C, 0xFE02F6F7, 0x0B0607FB,
+0x130AE809, 0xF8F7FCF2, 0xF6101108, 0xF0FA0405, 0x02091013, 0xF60E06FA, 0xF50DED03, 0x1205FD06,
+0xF90CEDF6, 0x01FC00F4, 0xF8FCFEFC, 0xEE0303E8, 0xF4140C11, 0x11F3F4F3, 0xF6091406, 0x0CFC0BF4,
+0x04F911F7, 0x0DFB050B, 0x0FF8FA0D, 0x0BFC0802, 0x0608F9F2, 0xF2F2F904, 0xF8EFF20B, 0xF5EEF30E,
+0x080E0EF3, 0xEFF00600, 0xF6ED0DF1, 0xF6FB14F6, 0x0A0F0EEB, 0x0AFA08F5, 0xF90CFB0B, 0xFB06F2FC,
+0xF1F8F70F, 0x16F01209, 0x0FF7F306, 0xF4F0F6F7, 0x0B070BFC, 0x01F70D05, 0xFB020709, 0x0C0A0EF0,
+0xFDF2ED0F, 0x0BFF040D, 0x06FA0406, 0xFAEAF515, 0xFBED0AF3, 0xF208FA16, 0xFFF9F2F5, 0x0A00F10E,
+0x06FA1104, 0x10EF0CF7, 0x0C08F914, 0x010FEFF6, 0xF9FA0A02, 0x0BF112FE, 0xF0F30206, 0x1208FB05,
+0x0DFD05EE, 0x04F60410, 0xF9161006, 0x10F8FE06, 0x0AFCE7EF, 0xEAFEFC0D, 0xFFF6FC13, 0xF40704F8,
+0xF909EDF9, 0xEA0C0808, 0x16F0F6FB, 0xF50DF6EB, 0x06F4F7F4, 0xF1F0010E, 0xF5F2F80A, 0xF8F806E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFE04FBEE, 0x0CF9F70D, 0xEF0E0800, 0x0AF1EEF4, 0xF0FFF2EC, 0x0A09FBEF,
+0xEF0EEFE7, 0x13FEF50B, 0x0B0FFC0E, 0xFDF701FA, 0xF3FEEDF4, 0xFAF0010C, 0x0DF909FC, 0x08FAF3EE,
+0xF9F70203, 0x0916FE1A, 0xFD10F4EC, 0x05F70F0F, 0xFE1108FA, 0x11F6FAF0, 0xF1FBF20B, 0x171003FD,
+0xFE0303FE, 0xF3F6FC0C, 0xEA0810F3, 0x060AF4FF, 0xEE0613F0, 0x09F60FF6, 0x071602F3, 0x00F5F2F7,
+0x04EB01F7, 0xFBFDF9FD, 0xEBEFF7F4, 0x070C0CF8, 0xF5090B10, 0x0FE3F6EF, 0xF6FFFF12, 0xEEF7F8F6,
+0xF50206F1, 0x0A000A14, 0x010E0AF2, 0x0603F010, 0xF4EBFBFF, 0xF011F617, 0x12100108, 0x0017F5FA,
+0x0CF8020E, 0x0D0DF9F9, 0xF0F5EF11, 0xF1FCF8F0, 0x06EEECFC, 0x06141703, 0x0EF1FD00, 0x0D00F810,
+0x03060A12, 0xF011F60A, 0x10FA0EEF, 0x03F5FB05, 0xF5040DF4, 0xF6F408F3, 0x0809EFEF, 0xF1060F12,
+0xF115050C, 0xF909F00C, 0xFA130E06, 0x0E04F7F4, 0x080D11ED, 0xFD0B030C, 0x0CF1F610, 0x12F0EDF6,
+0x0810F708, 0x05FC050F, 0x050E1408, 0x05F3F9EF, 0x0AEC10F8, 0x0D0B100A, 0x01FAFF0C, 0xEA0CF9F8,
+0x010E0DFF, 0x07F70BFB, 0x140F0AFC, 0xF90F0DF5, 0xF1EDF4F8, 0xFC0D02F4, 0xF30CF80B, 0xE902FC08,
+0x0FF2F2F2, 0x07F5F710, 0xF8FDFFF1, 0x04020908, 0x0C04F5F1, 0x0C06080B, 0xF0E6F507, 0x03F8FEF6,
+0x00ED0CFF, 0xF8F40E15, 0xFAEBF2EC, 0x02E801FB, 0x09F30D0F, 0x13081405, 0x070FF509, 0xF90005F3,
+0x02F6F0EB, 0x05FAF30D, 0xFDF8FB06, 0x0C0BEFEE, 0x13F0EF0B, 0xF1041808, 0xEEFBF609, 0x10F4FFF5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6
+
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+2
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
new file mode 100644
index 0000000..2463df6
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_HARQ_1_2.data
@@ -0,0 +1,902 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0xF315FCEF, 0xF50FFAFA, 0xFBF70DEE, 0x1013060C, 0x0B0AFCE7, 0xF0F30BF4, 0x0C070F06, 0x10F7F30F,
+0xFE0F0E0D, 0x0FF7FE09, 0x07090606, 0xF705F004, 0x150EF10B, 0x080C010A, 0xF7FA0909, 0x0B00140A,
+0xF1F2F8F9, 0x0AF2F910, 0x0D0F0CEF, 0x03F4F20D, 0x0CF90CF9, 0x06F4F501, 0x12FEF3EA, 0xF210F3F9,
+0x0312020C, 0x0D0FEF0C, 0x011714F4, 0x110E02F3, 0xF102F613, 0x0A0B090C, 0x1503FA10, 0x0D13F011,
+0xED0F0F0F, 0xF8F712F8, 0x10060502, 0x14EEF0F6, 0xEEF50606, 0x0BEDF006, 0xF2120906, 0x0F0700F4,
+0xECF00D04, 0xF414F1F5, 0xF1ECF918, 0xF40B090C, 0xFD0FEDEF, 0x0DFDFBED, 0x0703FCF3, 0xEFF2FDED,
+0x03021100, 0x0608F00A, 0x0BF7F910, 0xF7EEF20C, 0xF9ED0901, 0xECF2F0F2, 0xEB09F6F3, 0x0F06F5F7,
+0xF90E0610, 0x07010611, 0x06F20E0D, 0x0E06EF00, 0x070C050D, 0x0C0F09F1, 0x10FE0CF6, 0x11EF0B14,
+0x03FCE40C, 0xF4F506F4, 0xF400F613, 0x0E0509F8, 0xF00DF9F6, 0xF5F612E9, 0x1208FE15, 0x0607F307,
+0x1108EE0C, 0xFDFBFB04, 0x02F30D05, 0xFDF0041A, 0x100CF1F4, 0x0DFAFBF9, 0xE9F10B09, 0xEEF214F9,
+0x02F6F5F8, 0x0F010CF6, 0xF11008EF, 0x0CF3130A, 0x03FE11F5, 0xF6050708, 0xFC050EEC, 0x0BF8F4F9,
+0x04F50FFF, 0x000206EB, 0xEFF9F7ED, 0x0E14F90C, 0x080401FC, 0x0A0401E5, 0xEE13F30C, 0xF10A0916,
+0xF0F400EC, 0xFF03F614, 0x0409EBF2, 0x0C0906FA, 0xF70C0400, 0x0FFAFAFA, 0x1201F611, 0xF5FAFAF1,
+0xF40FFA09, 0xFFF2F1EF, 0x0BEFF7FA, 0x0703FC07, 0x08F11109, 0xEF09FEEA, 0x07F908FB, 0xF9FD0812,
+0xF90B0A02, 0x05F210F4, 0x1AF7F407, 0xEFF8FA0D, 0xF5F9F606, 0x02EB0D0F, 0xF7F5FDFE, 0x130BF5FB,
+0x05F6F6F8, 0x1503FFFD, 0xF2F701F9, 0xF1F6F70B, 0x01010B08, 0xF717FBF6, 0x06FAFA05, 0x050CEF11,
+0x11F30200, 0x09020F04, 0x07030601, 0x0603FC12, 0xFB0014F7, 0xF7F70CF2, 0xF0F6EEFA, 0x0EF107F8,
+0xEA0D0A10, 0x0AEC0C0E, 0xF5060D07, 0xF7F4E804, 0x0902E90B, 0xEE090AFD, 0x02F60210, 0x090BFCFD,
+0xF7F8FCF7, 0x030C0905, 0x040AF1F5, 0xF0F80CE7, 0x100AF413, 0xF8FB0817, 0x02EFFA04, 0xFB04EC08,
+0x16F4FDFE, 0xE8FD07F4, 0xF2FFEF07, 0x0DF105F4, 0xF4EDF50B, 0xF7EB04FC, 0xF8F601E8, 0xEE0B00F0,
+0xF516040E, 0xF600F605, 0x090705EC, 0xF10408F2, 0xE9F2EC11, 0xE90E1613, 0xF601F6F4, 0xF307F4F8,
+0x100B060B, 0xF90D0402, 0x09FE0715, 0xF90E06F7, 0xF6FC08F7, 0xF7F30FF2, 0x040A05FA, 0x08F1F411,
+0xF6F806F5, 0x0EFBFD0B, 0x0A0EF6FD, 0xEFF4F8F5, 0xFD05F8EB, 0x1300F8FD, 0xF7FE0CF6, 0x05F4E903,
+0xF50302EF, 0xF8F514F8, 0x11F8F4F7, 0x120F11F6, 0x07F4FF09, 0x0D0FF700, 0x0EF7FD03, 0x090A06EF,
+0xF90206FC, 0xF20FFEFB, 0xF90709FC, 0xFEFDF2F3, 0x0DF70DF7, 0x10F10808, 0x0B08F5FC, 0xF20605F9,
+0x1DF5FAFF, 0x0B04F20C, 0xEDF811FA, 0x0F04EC07, 0xEEF4F40D, 0xF9100EF0, 0xFCEEEDF3, 0xF109EA00,
+0xE0E8F913, 0x0AFA0AED, 0xF3E7F90B, 0x06FB0BFE, 0x12FEF20D, 0xF4040C04, 0xF409090D, 0xF3F8FAF5,
+0x02F60306, 0x12F6FFFA, 0xF9FAF4F8, 0xF70D0408, 0x0400F007, 0x1501FDF2, 0xF305ECF2, 0x18EF01FC,
+0x0FF2050C, 0x050DF30F, 0xFCF80813, 0xF3F906FD, 0xFDF3FAEF, 0xECFCEDFE, 0x0D05F810, 0xFC0B11F9,
+0xF9FE0AE9, 0xF70EF4F3, 0xF9F1F1F8, 0xFCFA0DF8, 0x140F00EA, 0xF00AED07, 0xF9030CFC, 0xF604F9FA,
+0xF8140217, 0x08F816FE, 0xFA06FF0D, 0xFC0C11F3, 0xF6F5050E, 0x09FB0010, 0x0C11F4F3, 0x05ECFE0D,
+0x04F7070A, 0x12F50FEC, 0x0DFB0208, 0x110C03FA, 0xF50CF70A, 0xF90BF908, 0xFA0F0CF8, 0x100306F0,
+0xF50C04FA, 0x060B0909, 0xF4FF0F13, 0x06FAFA02, 0x05150912, 0x0E0BF308, 0x0BFB0E0B, 0x0FF405F2,
+0xF10AFD07, 0xFA00080C, 0xFB0FEB02, 0xF7FFFC0C, 0x0DF40BFB, 0x16FE060D, 0xFEF908FE, 0xF5F600F5,
+0x0204F7F5, 0xF605FFFC, 0xF802F606, 0xFA09EB0E, 0xEF0B0CF3, 0x1308F909, 0xF7F704F9, 0x0702F600,
+0x04F5F00A, 0xF7FAFC0F, 0x0BF70BF6, 0x16F3FF08, 0xF20B09FB, 0xF905F115, 0x040908FE, 0xEBF9090C,
+0xF808F3F5, 0x0512F3EF, 0xEEFC07F4, 0xEFFFFCFF, 0xEE0DF4FE, 0x11F7100A, 0x01F600F4, 0xF413F3F9,
+0x06F2F2F1, 0xF0120B03, 0x0D0CF3F7, 0xE4F000FB, 0xF7FC1A09, 0xFFED0912, 0xFF08E7F9, 0x06FA08F8,
+0x06F70D01, 0x05FEEE16, 0x13F2F90F, 0x0EFC0D01, 0xF5130AFF, 0xF3F0ED0D, 0xF10AF807, 0xF4F0030C,
+0x090AF3F7, 0x0C0BFFEC, 0x17FAF3F4, 0x0C0813F4, 0xEF0C0C0F, 0x0AF2E7F7, 0xF3EF0804, 0x05F90912,
+0xFDF9F002, 0x041106EF, 0xF51BFAEF, 0xEFF20411, 0x07FCFDF1, 0x09F6FB11, 0xF00D0907, 0x0717F20B,
+0xFCEF0800, 0xF0080009, 0xF011F50D, 0xFC06EC0B, 0x16FF0FF8, 0xF9F611FC, 0xF8F70D18, 0x160C0B13,
+0x0612F7F5, 0x0D08F80C, 0xF4F9E7F2, 0x03FB0EF8, 0xFF0CF908, 0xEFF111F4, 0xF4EE0EFB, 0xF4FE0502,
+0xF70A06FD, 0x0DFBFFFD, 0xFAF2F205, 0xFA060A0B, 0xEDFE0EF9, 0xF5EDF30B, 0xEF0C0616, 0x12020807,
+0x00F9F4FB, 0x0FF803F4, 0xFBF8FC01, 0x0D02EB0D, 0x01F2F9F1, 0x0B0CF0F4, 0xFA0C0712, 0x0DF314EE,
+0xFD0E0706, 0x06080AF8, 0x1600F7F2, 0xFCF2FEED, 0xF3090BF4, 0xEE0417FA, 0x00F90305, 0x1008110D,
+0xF5F1F7F4, 0xF5FB04F6, 0xFC0B02F4, 0xF1FB00F0, 0x0712FF10, 0xF5EB0FF4, 0x110AF005, 0xFE02FC18,
+0xF0E8F106, 0x100DF90D, 0xF30900FD, 0xF6F208F7, 0xFE021404, 0xED0AF612, 0x0104F5F8, 0xFE09F7F3,
+0xED0A01F8, 0x0BFE0405, 0xF008FA0A, 0xFB1CF201, 0x0712F70F, 0xF0F2FE05, 0xFFF6FC04, 0x0AF4070D,
+0xF9F3ECF9, 0x0AEC0BED, 0xEF0D010E, 0xF314F8FF, 0xEF0BFB0B, 0x0602F90B, 0x10F70A04, 0xFAEE0806,
+0x0EF7F005, 0xEEF0F60D, 0x13EE0D07, 0xF415F203, 0xFBF8F0F3, 0xEBEB0BE4, 0x05FBF803, 0xF40A07F9,
+0xEFF7F311, 0x040FF5F0, 0x0DFCED00, 0x050BEEF9, 0xF30CF612, 0xFB00EA0C, 0xF208F7F0, 0x0603F911,
+0xEC02EB04, 0xEFF812F3, 0xEFF60200, 0xF40208FF, 0x12010A05, 0x06F017F8, 0x050F0C16, 0x120010F9,
+0x0EF70707, 0xF0FA100E, 0xEFF50D01, 0xF5EE0808, 0xF409F2F5, 0x03FFF50C, 0xF2F0FCF1, 0x01EE16F7,
+0x081015F9, 0xFDF10BF7, 0xFBEBF10B, 0x0EF208F7, 0x0C11EE0A, 0x0FFAF00E, 0x0D03F706, 0xF7F711F4,
+0x05F30A06, 0xF709F904, 0x031A0DFB, 0xF8EC0608, 0x08EE0909, 0xF202EEF6, 0xFAF7F10F, 0x0F0FF3F9,
+0x09010CF6, 0x04F60EF7, 0x0B0FF0EB, 0x08ECF80E, 0x0EFB0010, 0x0104EF14, 0xE9EF0CF4, 0x0AF9EFFD,
+0x0B001415, 0xEF04FC07, 0xFF0C13EE, 0xF1F4F2FC, 0x0E08E7F7, 0x000CF612, 0xFD0B07EE, 0xFEFE04F0,
+0xFBFB0D07, 0x0AE80103, 0xF4F2F309, 0xF2EFFBF9, 0x0A07EC05, 0xF405EEFA, 0x03F706F8, 0x010005F6,
+0x0DFFF711, 0xF5030BED, 0x11EEFB13, 0xEE01EAEF, 0xF8F70DFB, 0x070DFBF8, 0xF5F116F0, 0xF7FB0401,
+0xF6F8F008, 0xF6EDF3F7, 0x1A02F912, 0xFD06F803, 0xF501F70D, 0x0A011708, 0xF0FA0E02, 0xF906FBFC,
+0xEFFCF707, 0xF50E09F8, 0xFA0CE9F9, 0xFB0E13F0, 0xF117F30D, 0x0C0702F9, 0x0CFBF705, 0xFB12F0ED,
+0xF5F1FF14, 0x0D070C07, 0xF90B0409, 0xF1F3FE09, 0xEF03F80A, 0xFAEE0509, 0x11F4F600, 0x16081215,
+0x0909F7F6, 0x0EF80A04, 0x0AFB0EEE, 0xF3FC020D, 0xF4FDEEF8, 0xFCF9F310, 0x0AEA00F5, 0x0AF0040F,
+0x09F7EEF7, 0xFFF3F409, 0x11F704EF, 0x0C10F710, 0xF70AEA12, 0xFCF201FB, 0xF4000F01, 0x0F021100,
+0x0B0AF4FA, 0xF802F702, 0x0812090D, 0xF9F30A10, 0x0FF2F309, 0x0DFCE9F8, 0xFA06FA02, 0x10E7FE06,
+0x15F8F410, 0x020D02F7, 0xEB0810F8, 0xF011FC10, 0xF5F812F6, 0xF71010F2, 0x0DEE0DF3, 0xF8EF08F9,
+0xF1F5FC11, 0xF8F8EBFD, 0x0604EEF3, 0x070CF40A, 0x0C070CF8, 0xFC090014, 0xF10EFDFB, 0x0CF80616,
+0x0DFFF2F9, 0x0802F5F8, 0x09EE1309, 0xF8F70C04, 0x0AF50C03, 0xF90AF5F5, 0x0E00FE0E, 0xF1F7FEF6,
+0xF8F3050A, 0xFCF50A13, 0x0AFE0B11, 0xF5F500E5, 0x0D0DFCF8, 0xF208F405, 0x01EEF0F9, 0x0900FB06,
+0xF4F30EEA, 0x03FA0C02, 0xFC03F60B, 0xF8070AEA, 0xF1ECF9FF, 0x09FE0813, 0xFA020B11, 0xFF0210F6,
+0xF3F4ECE6, 0xEEF6F6F4, 0xF50CFEF1, 0x08F2EA0E, 0xF7F70D06, 0xF708EF07, 0xFB0CFC0B, 0xEF0FF4F2,
+0xFAF0FD0C, 0xF3F311FD, 0x01F5EC0F, 0xF9F10608, 0x0E07F3F3, 0x130508FE, 0x01EB12FA, 0xFF0804F1,
+0x0707040D, 0xF408FCFC, 0xFCFEF014, 0x090A0007, 0x0C06F5F3, 0xF5020CED, 0xFCED0C0F, 0x0C0D1008,
+0x0F0FFC06, 0x0B09F7F6, 0x08F208F8, 0xF7F7F60C, 0x030AF408, 0x051BF9FC, 0x1307080C, 0x0000F60F,
+0x0B07F211, 0x0613F70E, 0x0310F5F4, 0xF0F812F7, 0xFB0B1308, 0xFC0C02F5, 0x13FD010D, 0x02F008ED,
+0xF5F30EF1, 0x0511F605, 0x0008F80E, 0xF90EFA00, 0x0708090F, 0xFAF8FB0C, 0x14F7F70A, 0x09F608F7,
+0xEC120708, 0x04070A04, 0xEDFEFA08, 0xFF11EFF5, 0x0CF9F5F1, 0x04F5F507, 0xFFF70FFD, 0xF10904FF,
+0xF6F8F50F, 0x0BFE040A, 0xF71504F1, 0x0D04F717, 0x00F3FEF5, 0x13F50CFB, 0xF8F707F8, 0xFA0A09F6,
+0x09FEF605, 0x050E0300, 0x07190AEF, 0xFE040EE5, 0xF8F70D11, 0x0A08FD03, 0xF40C03F3, 0xEEF0050C,
+0xFBEFED07, 0x0AFEEFED, 0xFE0806F1, 0x0A071315, 0xF707FDF5, 0xF10D0FF4, 0x03F80709, 0x0F0BE9FA,
+0xF50D0B0C, 0x0AF7EAEB, 0x12F4F306, 0x12F10FF7, 0x06F2F20A, 0x0E0F14EE, 0xFAFC0F06, 0x0E000CFD,
+0xFAEEFCF6, 0x0EF3FD02, 0xF9100A04, 0xFAF410F5, 0x051403FB, 0x12EEF40D, 0xF90B0004, 0xF7070DEC,
+0xE5140FF1, 0x0C090E06, 0xF5FFEFF7, 0x0FF90D09, 0x00FD0A0C, 0x0A02F5FE, 0x09040DFA, 0x0D07030B,
+0x10EEF2F8, 0x0FEA0F16, 0xF611F405, 0x05F10A08, 0xF80703F7, 0x010107FA, 0xEE0DF60D, 0xF9F6F80E,
+0x10F6F5F8, 0x0B0B02FC, 0x0A08F305, 0x110107F4, 0x0D120101, 0x0EF7130A, 0x04F7EBF9, 0xF8FB03FB,
+0xFD160BF6, 0x1104F5E7, 0xF802F5F6, 0x08090BF5, 0xEA09F50D, 0xFFFB14E8, 0x0800FF0A, 0x05FDE612,
+0x14F2F609, 0xFA0301F4, 0xFBFBFC0F, 0x0410F40C, 0xF6F4EF0B, 0xF304FB05, 0xFEEE0E11, 0x12030908,
+0x07090907, 0xF707FC11, 0x0C01FDFB, 0x04F20909, 0xEFFEF20A, 0xF00B02FA, 0x0FF8050D, 0xF50EFCFE,
+0x08F20EF2, 0xFEFC0BF5, 0xF6EAFCEC, 0x08FA05F8, 0x0AFCFE0C, 0xEFF20A11, 0x0FF1F411, 0x13F8FAF1,
+0x0A0912FE, 0x070514F7, 0xF3F8F50B, 0xF3091503, 0x080BF00B, 0xF2F9FD03, 0xF3F503F2, 0xFAF9F819,
+0x02FFF9FA, 0x19F6FA08, 0xF403FF00, 0xF40901F5, 0x0613F514, 0xF9F40DF9, 0x030A14F6, 0x170AFC12,
+0xF4F10AF0, 0xF5E506FC, 0x0BECF0FA, 0xFC04101E, 0x0BFFFBF1, 0x12F2EEFD, 0xF605F7EF, 0x090DF8FD,
+0xFF09F012, 0xF9F4020C, 0x03011206, 0x16F9E009, 0x0607EC1D, 0xFE0EEAF6, 0xFA0DFFF1, 0x13FEFA14,
+0x06020D03, 0xF2F902EE, 0xEF0EFCED, 0xF104F711, 0xF0E90503, 0x15060EF2, 0x01F80AF9, 0x0AFDEF04,
+0xF10C100D, 0x090AF600, 0x03F5F909, 0x05080DFA, 0xF40E0A1B, 0xF9F408EF, 0x0BF9F0F7, 0xFB100FF9,
+0xF6081009, 0xF006F7EE, 0xFA0F0212, 0x0714F90E, 0x070F0DFD, 0x160402F5, 0xED0DF108, 0xF6F0F9EA,
+0x1000F0FF, 0xF10B130D, 0xFF0F0C0D, 0x081702F8, 0x0C0EF306, 0x0517F907, 0x05F708FB, 0x0301FAF8,
+0xF803F912, 0xF8140AF8, 0x0EF5F506, 0xF4F406FE, 0xF5F8EFED, 0xEF0A120A, 0x0A0906F9, 0x0D0BFB11,
+0xF60EF5F8, 0x000B0A0D, 0xF9EC12E8, 0x0A0900F0, 0x0C14F40C, 0xF50011F2, 0x030D000E, 0xF0FD0E09,
+0x11F70B03, 0x11EA0316, 0xF7F8050A, 0xF103F5F6, 0xFD1004FD, 0x08F31109, 0xF6F5F114, 0x0CF40BF3,
+0x0DEC0BF5, 0x14F30202, 0x070AF80A, 0x11F3F1FF, 0xF8FA0BFA, 0xF90C01EF, 0xEE0DF308, 0x10F6F10B,
+0x09F7E2F5, 0x10F1EF04, 0xF3F50AF4, 0x08F9120A, 0x0B02FDF7, 0x06FC1001, 0x0401F7FE, 0x18FAFAFA,
+0xF5F3F4F2, 0xE9F4F40D, 0xFA0CFEFF, 0x060503FC, 0xF8F7F106, 0x0813F9FB, 0xF20AF4F7, 0x09EBEEF3,
+0xF40CFBF6, 0x0CF6EEF2, 0x0F1EF1EB, 0xF4F90C0E, 0x160BF5F5, 0xFCF6F0EE, 0xF403EEF7, 0x04F10713,
+0x11071109, 0xFDFA0F0D, 0x0C08060C, 0x0BFA08F8, 0x010AFF07, 0x101FF7F8, 0xF3EE090F, 0x08F5EBF9,
+0x04FDF708, 0xEC090DF7, 0xF3150003, 0xF80BFD0A, 0xEE000A0F, 0x08F7F8FA, 0xFCF008F5, 0x0701EFFA,
+0xF5FEF505, 0xEAEAF4EE, 0x0EFCFF10, 0x15F80BFB, 0xF7060700, 0xF3100D0B, 0x1705F901, 0xFA130605,
+0xF4F2FA16, 0xEEFA0615, 0xFD130BF4, 0x06FDFA0F, 0xFB0406F8, 0xFC03EB0B, 0xFFF113FD, 0x03FA130F,
+0x0B0B07F4, 0x03120AF8, 0x00020304, 0xF70AE308, 0xF9FA0203, 0x0007F501, 0x05FAF2F7, 0x1417F1EE,
+0xFCEAF606, 0x02050AF5, 0xED12F609, 0x0E03FD0B, 0xF7FDEB01, 0x02FFF107, 0x1507F4F5, 0xEFED1609,
+0xFC02F5F9, 0x06ED07FF, 0x070F18F9, 0xFA0A000D, 0x0FF307FA, 0xF6EFF20A, 0x120604F6, 0xF7090DF4,
+0xEC120605, 0x0514FAFB, 0x0BEEFCFF, 0x130A0D10, 0x0100FAF2, 0xF6F307EF, 0x10F0F9F7, 0xF2FB0DEF,
+0xF409F8FC, 0xF10A0A05, 0xF10F060D, 0x0EF9F7F6, 0xF502FFF8, 0x0CF20F0B, 0xFFFBFB0E, 0xEBFFEE0F,
+0x0809F50B, 0xF809FAF3, 0x00FBF6EE, 0x0A0B0804, 0x0D04F105, 0x0DF709F8, 0x03F6F5F9, 0x0A12EE0C,
+0xF6ECEFF0, 0x14090BF4, 0xF907040A, 0xF4F01510, 0x10050FF1, 0x13FFF705, 0x11F80111, 0xFB05F30D,
+0x12F3EDF7, 0xECE80905, 0xF90BF8F3, 0x0DFE030B, 0xF1EF0310, 0x08030E11, 0x0510F6FB, 0x12EF09F7,
+0xFD03F610, 0xF6FB0B09, 0x0B0F06FD, 0x1309F0F8, 0x060504F0, 0x0CF7EDF8, 0xF7101AF7, 0x000A0109,
+0xFFFBFA00, 0xF5EAEEF8, 0xF7F7EAFB, 0x13FB0D08, 0x14F2F4F5, 0xFFF7FB11, 0xF00FFA01, 0x050EF9FE,
+0x09F3040C, 0xF002ED0B, 0xF7FA0C04, 0x03070A00, 0xFEF3F108, 0x09F2F701, 0xFAF8070D, 0xEBF20C11,
+0xF9060AF8, 0xEA02120A, 0xF4F104FC, 0x08051009, 0x1306FE0C, 0xF9F30C11, 0xF9EFF8F8, 0x1500FFF8,
+0xF80DF20A, 0x07F0F1F9, 0xF709F40B, 0xEC06F10B, 0x11F2040B, 0xE80D0AF8, 0xFE02F60B, 0xF7F2070F,
+0x13F6FCF5, 0xF80B1006, 0x0A1011F4, 0x040E04F1, 0x02F51013, 0xF6FA06FA, 0xF50D0103, 0x12F111F2,
+0xF90CEDF6, 0xED111408, 0x0DFC12E8, 0x0303EFE8, 0xF400F811, 0xFD070807, 0x0BF500F2, 0x0C100BF4,
+0x180DFDF7, 0x0DFB050B, 0x0FF80E0D, 0xF710F402, 0x06080D06, 0xF2F20D04, 0xF803F2F7, 0xF5EEF30E,
+0xF40E0EF3, 0x03F00600, 0xE201F9F1, 0xF60F14F6, 0x0A0F0EFF, 0x0AFA0809, 0x0DF8E6F7, 0xE7F206FC,
+0x05F8F7FB, 0x1604FD09, 0x0F0BF306, 0x08F00AF7, 0xF7070B11, 0x150BF905, 0x0F16F309, 0xF8F60E04,
+0xFDF2EDFB, 0x0BFF040D, 0x06FAF0F2, 0xFAFEF501, 0x0F02F6F3, 0x0608FA16, 0x13F9F20A, 0x0A00F10E,
+0x06FAFD04, 0x10EFF8F7, 0x0C08F914, 0x01FB030A, 0x0D0E0A02, 0x0BF1FEFE, 0xF00702F2, 0xFE080F05,
+0x0D110502, 0x04F60410, 0xF9161006, 0xFCF8FEF2, 0xF6FCFCEF, 0xFEFEFCF8, 0xEB0AFCFF, 0x08F304F8,
+0xF909010D, 0xFE0C08F4, 0x02F0F60F, 0x09F90AFF, 0xF2F40B09, 0xF104010E, 0xF5060CF6, 0x0C0CF2E7,
+0x0CF2FA0D, 0xF8F3F7FA, 0xFEF00F02, 0xF80D0BF9, 0x03FAF400, 0x0A05EE08, 0xF0EBF200, 0xF6090F03,
+0x030E03E7, 0x13FEF50B, 0x0B0FFC0E, 0x12F701FA, 0xF3FE01F4, 0x0E04010C, 0xF90DF510, 0xF4FAF302,
+0xF90B0203, 0xF516E906, 0xFDFCF400, 0xF1F7FA0F, 0x121108FA, 0xFDF60F04, 0xF1FBF20B, 0x03FC17FD,
+0xFE03EE12, 0x070A11F8, 0xFEF4FCF3, 0xF20AF4FF, 0x02F213F0, 0x09F6FBF6, 0x070202F3, 0x1509060B,
+0x04EB010B, 0xFB110DFD, 0xEB030BF4, 0x070C0CF8, 0x0A09F7FC, 0xFAF70AEF, 0xF6EBFFFE, 0xEEF70C0A,
+0xF5EE06F1, 0x0A14F500, 0x01FAF606, 0x1AEFF0FC, 0x08EB0FEB, 0x0411F617, 0xFE10EDF4, 0xEC0309FA,
+0xF8F802FA, 0x0D0D0D0D, 0x0409EFFD, 0xF1FC0C04, 0x06EEECFC, 0x061417EF, 0x0E05FD00, 0xF914F8FC,
+0xEFF20AFE, 0xF011F60A, 0x100EFA03, 0x03F5FBF1, 0x0904F808, 0xF608F4F3, 0x08F5EF03, 0xF1060FFE,
+0xF115050C, 0x0D09F0F8, 0xFAFF0E06, 0xFA04F7F4, 0xF40D11ED, 0xE90B030C, 0xF805F610, 0x120401F6,
+0x08FC0BF4, 0xF110F1FB, 0xF10E1408, 0x1907F9EF, 0x0AEC10F8, 0xF9F7FCF6, 0x010EFF0C, 0xFFF8F90C,
+0x01FAF913, 0xF30B0BFB, 0x00FBF610, 0xF90FF809, 0x05ED080D, 0xFC0DEDF4, 0x07F80C0B, 0xFDEEFCF4,
+0x0FF2F2F2, 0x07090B10, 0xF8FD1305, 0x04EE0908, 0x0C18F505, 0x0C06080B, 0xF0E6F5F3, 0xEFF812F6,
+0x14010CFF, 0xF8080E15, 0xFAFFF2EC, 0x16FD010F, 0x0907F9FB, 0x13F400F1, 0x07FBF509, 0x0DEC05F3,
+0x020A04FF, 0x05FA070D, 0x110C0FF2, 0x0C0B0302, 0xFF0403F7, 0x05F018F4, 0x02FB0BF5, 0x10F413F5
+
+harq_input0 =
+0x0FFA0103, 0x130C0B02, 0xF309F6E7, 0xF70F07F1, 0xF7090FF8, 0x050409F2, 0xF80AFAF7, 0x00F60EF5,
+0x06FC060D, 0x080DFB03, 0xF4EDF9F9, 0xFCF9FEEA, 0x0F0C12F8, 0xF9F31708, 0xF60C02FF, 0xFF110310,
+0x0BF80F0F, 0x02F6F2EE, 0xEDF20A06, 0x0709FEF2, 0x14F5F0F0, 0xF70C0018, 0x12020FEF, 0x0602EF08,
+0xF40A0200, 0xEE0C0BFC, 0x0606ED01, 0xF2F709F3, 0x15110E10, 0x06EC06F8, 0xFBF10CF8, 0x0314FEF6,
+0xF5F4FC0C, 0xF00C00FF, 0xF6FDF9F6, 0x07F30801, 0x0F04F40C, 0x0406F305, 0xFAF9F808, 0xF20DF109,
+0x010A0AF8, 0x070AFC03, 0xF108120A, 0xF8F9F1EC, 0xEEEB09FF, 0x140C0D01, 0x04E5EF10, 0xF616130C,
+0x0314F4EC, 0x09FA09F2, 0xFAFAF714, 0xFAF101FD, 0x06030FF4, 0x17F3EFFA, 0x09FEF109, 0xFDFEF9FB,
+0xF2080B02, 0x0CF90B07, 0xEB0F0D06, 0xF71009FE, 0xEF110AF8, 0x0AF70BF9, 0x170A1508, 0xF8FDFAF1,
+0x0204F3EB, 0xEFFE0315, 0x0C06000B, 0xF10C0A0E, 0xEC0EF9FC, 0x08F0F2F3, 0x09FD02F7, 0x0B11F610,
+0xF8F1F8F7, 0xF8FB0A09, 0xFB030A13, 0x040804F0, 0xE8080813, 0xF1F4FFF3, 0xEBFCEDF7, 0xF7F00AE8,
+0x00F1160E, 0xF007F301, 0x0E13F211, 0x07F815F4, 0xF9EEF70B, 0x0EF7FE15, 0x0706E80C, 0x0611F60E,
+0xFB0B0CF5, 0xF4F50E11, 0x14FDF1EB, 0xF403120A, 0x09F80303, 0xFB0AF80B, 0xFA1408F5, 0xF503F717,
+0x0FFB1610, 0x1107F3FC, 0xF1F4F7F7, 0x060EF4E8, 0x04F8F5FF, 0x04F30CFA, 0x10F008F8, 0xF514EEF3,
+0x0EEDE8FE, 0xE7FEE70B, 0x0404FEF9, 0xF8F509F9, 0x0A0EF6F2, 0xF8080EF8, 0x01F200F3, 0x03FC19F2,
+0x0D0FF2F8, 0xF9FD0C13, 0x11FE0703, 0x0BF9F110, 0x0EF3FEFD, 0x0EF8F10C, 0x0A070FEA, 0x04FA0310,
+0x0CFE0003, 0x0CF3060D, 0xFBFCF5FA, 0xEC0D1108, 0x09ECF70A, 0x0C0EFB08, 0x0BF4F80A, 0xEFF0FB0C,
+0x0B09F8FA, 0xFA16FF13, 0x0B081512, 0xF4F2FBF7, 0x000C0A07, 0x130C0FEE, 0xFEF908FB, 0xF6F5F912,
+0xF1100409, 0x090E1606, 0xF4F50BF3, 0xEE00F7F9, 0xFAFBF5F6, 0x07080B0A, 0xF1150BE7, 0x0DF80912,
+0x12EF0809, 0xEBFF1108, 0x0BF60DFE, 0x130DF608, 0x12EFF2F1, 0x04FB0C0B, 0x01FDFC09, 0xFAF808F9,
+0x12020B01, 0xFCED060F, 0x040DFFFF, 0x04F80AF3, 0xF700F60B, 0x08F40E08, 0x06F7F80F, 0x0DFDEF04,
+0xFDEFF916, 0xF21107EF, 0x0A1110F1, 0x03F70DF3, 0x08F50300, 0xF1F711F9, 0xF6FCFF0C, 0x0CFFF704,
+0x080CFE09, 0x0FF80D06, 0x05080C08, 0xFE020210, 0xFB11F6E9, 0x060BF2F1, 0xED0BEAF9, 0x02F30C02,
+0xF8F40DFB, 0x020D0D01, 0x0CF406F1, 0xF302F812, 0x080C0EF2, 0x06010006, 0xF0FA0908, 0x08F9F905,
+0xFB0A0508, 0x0FF0F7F4, 0xFF081210, 0xEE18F6F1, 0xF9F9E8F2, 0x060B09FD, 0x0AFEEE04, 0x09F304F8,
+0xEA05F6F8, 0x1C0108F5, 0xF205120F, 0xF40D0A04, 0x0001F30D, 0x00FF0DFA, 0x020BF7F7, 0x02F2F7F0,
+0x04F90BF1, 0x01EFEE07, 0xEBE4F807, 0x0AF90FEF, 0x0F040B11, 0x0BF91000, 0x000CF812, 0x0311F3F0,
+0xF8070218, 0xEDFFF614, 0xF00C15F1, 0x000D0F16, 0xFA0EF707, 0xEE080901, 0xFF0C09F5, 0xEEF704F1,
+0xF10C10F9, 0x060BEBF7, 0xFA0EFDF6, 0xF7F403F2, 0xF5F0F306, 0xEC081A0F, 0x020AEEF5, 0xFBF9F7FB,
+0xF60C010A, 0xEC0E0FFF, 0xF014FB10, 0x0EFD0308, 0x04F30015, 0xF4FC0CEE, 0x0CFEF3F7, 0x12F0F702,
+0xE803FB07, 0x040D06F5, 0x05FA07F1, 0x140A0BF8, 0xEFEDFF11, 0x01EFEE13, 0x0D0C0B0F, 0xE70105F0,
+0x01F70CF4, 0x0603EE12, 0xED08EDF9, 0xF2FCFA02, 0x0E0CFCF3, 0x0E04F8F9, 0xF30D17F9, 0xFEEDFB05,
+0x071BF114, 0xF309F7F4, 0x02F503F6, 0x0815F400, 0x0CF0090A, 0xE80D0F02, 0xF9FCFDF8, 0xF00FFEF5,
+0xF3F5F70B, 0xFC10F7EF, 0xF2FB0AFE, 0xEEECEC15, 0x0202F60E, 0xF310FEF9, 0x10F8F209, 0xFB0606EE,
+0x0D0B0C10, 0x1110080C, 0xFCF2F8F6, 0x030DEE07, 0x0C11F511, 0x0CF6EF08, 0x0900070C, 0x0C160E0F,
+0xEEF8FFF9, 0xF7F0EEF5, 0x0A090903, 0xF70A000E, 0xF5FF07F6, 0xF5E5FEFD, 0x08F1F80C, 0x00F2EE0D,
+0xFAED07EA, 0x07EA170B, 0xFEFFECFF, 0xED0B0211, 0x0AF4F4E6, 0xF2FAF705, 0x0807F706, 0xFBF2F8F7,
+0xF31105F7, 0xF10809FB, 0xF1FEF307, 0x0805FFFA, 0x08FC070D, 0x0A071200, 0xEEEDF107, 0xF908EDFB,
+0x09F60FF2, 0x0B0C06F8, 0x07FCF608, 0x000FF30C, 0xFF0EF3FD, 0xE40BFCF4, 0x0CF50BF4, 0x04EDE90D,
+0xFD05F3F1, 0xFAECF4FA, 0xF80C080F, 0x0A0BF70A, 0x07F012F4, 0x1109FEF3, 0xF507F9F1, 0xF513F7FD,
+0xFE0AF80F, 0x041701F1, 0xF5E7F309, 0x0A0AF70C, 0x0E00FEF1, 0x04E505EF, 0xF4EF0BFD, 0x040CF807,
+0x1201EF07, 0xF31508F1, 0xF908F309, 0x0B0EE409, 0xF7EBF9F8, 0xF1F7F406, 0xFB0206F6, 0xECFD11F2,
+0x0702EEF6, 0xF409FC04, 0xEEF80010, 0xF3EC0BF0, 0x090600F1, 0xF9F5EBF7, 0xEEFE11F8, 0x070BF0FA,
+0xFE16EEF8, 0xF108FD05, 0x15FAF3F7, 0xF60E0D0D, 0xF7FC0AF8, 0x01F40805, 0xF70AFE01, 0xFB0F0BF9,
+0x04E701F6, 0x09F517F6, 0xFBE8F5F8, 0x11FE00F6, 0xEF08F2F5, 0xFB0CFB0F, 0x0419080B, 0x0308EE11,
+0x07110907, 0xF2F5ED0F, 0x0BFAFEF6, 0xFA12F8F9, 0xE8090606, 0x0E0CEAEC, 0x06FD10F8, 0xF80505FD,
+0xF1F70912, 0xF5EF0C0B, 0xF9EF0B0B, 0x0D05F5F2, 0x0A08FF0E, 0x09F50300, 0x08F91314, 0x0AFEF60A,
+0xE5FC0504, 0xEF0A000E, 0x06FDFFF1, 0x0D11F103, 0x080CF512, 0xF9F501F2, 0xFAF60708, 0xFE140D05,
+0xF90202EF, 0xF0FD0EED, 0x06F2E903, 0xE904F80D, 0xF600F8F8, 0xF4FA09F5, 0x0803FA07, 0xFCF9F90B,
+0xF202F4F5, 0x000EFBFE, 0x0409FAFD, 0xF0EA0DF4, 0x0B0D00FF, 0x03F8FB0D, 0x0307FAF2, 0x010C0BFB,
+0x140C03FD, 0xF4FE0906, 0xF6F6F8ED, 0x0B11090D, 0xF6F90EF8, 0x09F001E8, 0xEC0600F8, 0x1109F90E,
+0xEA010BEF, 0xEF0A0C0A, 0x07F510FD, 0x08F3F500, 0x07ED01F5, 0xF313F60A, 0xF803FA0E, 0xF60B0D08,
+0xF1F0F709, 0x0DF609F4, 0xFCED020B, 0x0E0EEDE9, 0x08F907F2, 0xF1FC0C13, 0xFFFB0C06, 0xEB070AF7,
+0xF606F80A, 0xF90E1EFF, 0xF6EE0BF5, 0x05FF03F7, 0x0F0DF309, 0xFA0CF4F8, 0x1F0CF6F3, 0xF50DEE0F,
+0xF5F7FDF4, 0x0BF501EF, 0xF7FA000F, 0xECFAF0F5, 0xEA02FEF1, 0xF80FFCFC, 0x100B0600, 0xFF050501,
+0xFA150716, 0x110FFFF4, 0xEE0B04F8, 0x0E0FF112, 0x12F80BF4, 0xF6F41604, 0x07EDE6EF, 0x17EE0F0B,
+0x05F5FEF2, 0xEF0BFEF5, 0xFF07FD15, 0x01090709, 0x02EBEE0D, 0xF6F9FB0D, 0xEFF6070E, 0x090806F6,
+0x140FFEF1, 0xF6FCEEEB, 0x07EF14F2, 0xFB03040B, 0x0A05F4FC, 0x0DF6FB0D, 0x060B02F8, 0xFF0FFB0E,
+0x090709F7, 0xF7180F02, 0x0BF8F005, 0xFE0CF60D, 0x09F4ECF0, 0x0410F30A, 0xEB05F105, 0x05F90C11,
+0xFCF1F30B, 0x120B0BF3, 0x031104FC, 0x030BFC0F, 0xFB09EFFC, 0xF50CFB11, 0x0BF80504, 0xF609FCF7,
+0xFE0CFB00, 0x0F08F7FB, 0x0BFD0609, 0x0E120F15, 0x020B07F8, 0x0714FAF0, 0x0615F308, 0xF2FDF8F9,
+0xEEF606F8, 0x050906E8, 0x071106F7, 0x000C03F8, 0x04F9F90A, 0x060BF5F7, 0x0D0CF2F7, 0x06FB02F7,
+0xF7060AF5, 0x0EF1FCF4, 0xFAFAF5FE, 0x0506F917, 0xFCF40C0A, 0x03FC10E8, 0xF30700FD, 0xFCF40906,
+0xFB0B0D0B, 0x1017E4F9, 0xF20408F2, 0x02FA03F7, 0xF0000E07, 0xFB0AEDF1, 0xE6F50FEB, 0xF2FCF80B,
+0x04F50DFB, 0xF00BF706, 0xF70507FC, 0x0AF01609, 0xFF0DF20F, 0xEA150EF2, 0x080202F3, 0x00FAF9F5,
+0xEFF70E04, 0x0FF6F314, 0xF1FEFAEE, 0x08F1F3F2, 0xF6101102, 0xF8F20206, 0x120DFC03, 0x07F8F613,
+0x0CF4F50D, 0x0DFF05FB, 0x040EF409, 0xF8FB06F6, 0xF3FAF20D, 0x0DF90402, 0x05080E00, 0xF5EFEBEC,
+0xFE0B0EE7, 0x0B0E0F0E, 0x04F812F4, 0x0EEE0D10, 0x021AF7EF, 0xF70F10EC, 0xF604FDFA, 0x10E90F0B,
+0xF60CEFFE, 0x0AEBF407, 0xF60A06F0, 0xF50B1607, 0x1111FF0B, 0xF8F8EF08, 0xF704F410, 0x0B0AEBFE,
+0x14000205, 0x03FC0EF2, 0xFD17EBFF, 0x17FAFCF4, 0x0DF90CFA, 0x1004F511, 0x140302FC, 0x14FC0500,
+0xFCF6F2FE, 0x0905FA03, 0x08F3F0F4, 0x06FEF5EF, 0x09F801F8, 0xF00913F1, 0xF7F80DED, 0x040AF1FC,
+0xFC0F1008, 0x07040EF4, 0x0BF6EC0C, 0x0CF8FA0C, 0xF70F0EFF, 0xFB09FBFC, 0xF9F4ED0D, 0x02F4F80B,
+0xF5FCF2F2, 0x0208FDF1, 0xF20B0405, 0xF80AFAF3, 0xF415EDEA, 0xFDFBEB00, 0xF4F1F30F, 0xEC070F09,
+0xFA0D0AFF, 0xF7EE0C06, 0x04F4F00B, 0x08F50FF5, 0xF50EF3FC, 0x1006E7F9, 0x04F7F7FC, 0xFC070CFB,
+0x0F12EAFA, 0xF7F00706, 0xF4011505, 0xF7140B09, 0x0AF9F1F8, 0x03060DF8, 0xF2090CF8, 0xF20712F3,
+0xF903EFEE, 0x1102EC14, 0x0A09F1F6, 0xF9F001FA, 0xF8FE01FB, 0x140410F1, 0x0B0402F2, 0x0F0006F5,
+0x0805ECF9, 0xF409F10E, 0x0DE7FD01, 0xEFFD0710, 0xF20403FD, 0x0BF2F6F9, 0x0004F909, 0x0F09FFF6,
+0xF3060DF2, 0x0EEF060E, 0x0CF40705, 0xFDF7FB0C, 0xF4F203E4, 0x0E09F4F6, 0xF5FE04F9, 0x06F3FEFE,
+0xFDFB1102, 0xFD04EE0D, 0x0DFBFCF1, 0xEE14E90B, 0xFB0CEE09, 0x0C13F108, 0xF60703FD, 0x0BF4FCFA,
+0x14F2F0FB, 0xFAF9EFF7, 0xF5010801, 0xF109EEF3, 0xFF0A0514, 0x0C0604FF, 0xFB0EF704, 0xF50EFD0B,
+0xFF05F4FA, 0x07E70B0B, 0xEFFEF4FD, 0x0D0807F3, 0x05100DF6, 0xEFFA1A08, 0x020D090A, 0xFFF5F7FD,
+0x1513F10A, 0xF10BF2ED, 0x0B0F150B, 0xF10306FA, 0x09FB11EE, 0x061007F2, 0xF7F8FB14, 0xF90704EE,
+0x0AF8EAF6, 0xF7E809F9, 0x02F609E9, 0x09E802EE, 0x03F50BE8, 0x040C04F1, 0x0CF41009, 0xFB00EEFA,
+0xFC071611, 0xF9F1F203, 0x0BF0F409, 0x0214F801, 0x0A0AF504, 0x0508F5F1, 0xE916E900, 0x07F4F60A,
+0xF9F010F2, 0xF906F507, 0x0BFB0AF4, 0xF408F0F1, 0x0EFD0A06, 0x03F80AF6, 0x130CFD0C, 0xF1E9F7F8,
+0xF800F502, 0xFEFDFDF4, 0xF90B0713, 0xF506FAFD, 0x0712F9F2, 0xEAF20DF5, 0x10F40D0D, 0x06050B09,
+0xF706090E, 0x0F00ED11, 0xF90E02F4, 0xF1FEFCED, 0x0AF5E00D, 0x06F7F3F9, 0x08F81206, 0xF30EF4F5,
+0x12FF02EF, 0xF7040DF4, 0x151204F0, 0x04ED07EC, 0xF0F3FB05, 0x08F2FCF4, 0xECED11FA, 0xFC110DF8,
+0x0BF4F90A, 0xFCF9F905, 0xF0010014, 0x0A0EF9F8, 0xF4020C02, 0x10FDFA13, 0xF5000B05, 0x05EAF808,
+0xFE0F04F3, 0xFDEFF9EE, 0xF9F9090B, 0x10F20E0C, 0x060909F0, 0x060EF40F, 0x0E0705F5, 0xFB05F6F9,
+0xFA1C0512, 0x0B10FBEB, 0x16F20DF6, 0x090012F4, 0x0A13020B, 0x0EFF0C0A, 0x130DEF0C, 0x070A0B04,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x02F209FA, 0x060EFDF7,
+0xFCEB0FF2, 0x0313FF13, 0x030A0B07, 0x0BF70003, 0x00090D02, 0x1405F106, 0x020AFCF6, 0xFAFD01F6,
+0xEE05F7EB, 0x030201F4, 0x06071009, 0x0E000704, 0x0A060F07, 0x0C0DFE04, 0xF1FA001A, 0xFFF90B10,
+0xF607ED0F, 0x06F9100D, 0x05F6F40C, 0x0E0BF106, 0xF8FB09FF, 0xEBEE13FB, 0x0C0EF4F5, 0xF608EC0A,
+0xF9F5F905, 0x0AEE03F5, 0x000B0A03, 0x0815F904, 0x13F7100F, 0xFB0711ED, 0xECF5FD01, 0x0D03F90C,
+0xF4FA05EF, 0x1209050A, 0xF60BFD0A, 0xFF04F706, 0xF8ED06F0, 0x0001F71A, 0x09EEFFFA, 0xFF0D0BEA,
+0x130F00F4, 0xF1F904FA, 0x05EDF504, 0x030AF7F8, 0x09F712F1, 0xFF0C0E07, 0xFE12F9F6, 0x08FC08F0,
+0xF9F813FE, 0x01FF0D0C, 0xF3F10C06, 0xEC05F7F4, 0xFCF6FD04, 0x0B07FEF6, 0xF8FC13E8, 0xF004F611,
+0xF6060210, 0x12FDF5ED, 0x0100F9ED, 0xEE03F8FE, 0x11F4F40C, 0x0C0BF614, 0x0D050411, 0x0B080FFA,
+0xF2F906F9, 0xF5F3F8F2, 0xEF06080E, 0xF614F60D, 0x0A080A0E, 0xFBF2F9FB, 0x1612F1F7, 0xF4F60FF3,
+0x010D0B0B, 0x0C0EFB07, 0x0B04FDED, 0xFAF50604, 0xF2FAFB0A, 0x0AF1FFF2, 0x100C0611, 0x01EF0CF9,
+0x0B12F90A, 0x12FBF002, 0x04040D05, 0x10FEF910, 0xEAFC0AE7, 0xF404FFFC, 0xEA08F9ED, 0xF5F616F6,
+0xF10106F7, 0xF806F5F8, 0xF8F70CFA, 0x0CF7FEFB, 0x0AEEEF08, 0x0AFBF0F2, 0x13F5EFEF, 0xFD010BFC,
+0xFA01F3ED, 0x08F30D09, 0x09FEF902, 0x050FFDF4, 0x11FAFE08, 0x1703F1F2, 0xF3FCFE03, 0x06F4EA10,
+0x090FEE13, 0x00F20702, 0xFBF90401, 0x070CEBF7, 0x0FF6F50B, 0xEEF8F6FF, 0x0A0AF506, 0x06F0010A,
+0xF0F6F4FB, 0x00F51201, 0x0DF90C02, 0xF1F8F0EF, 0x061706EC, 0x0DF80EFD, 0xF0F6030A, 0x03FB100E,
+0xF608F50D, 0xF10F08EF, 0xF9F0F105, 0x0EF7FA0E, 0xFD030811, 0x12ED0CF6, 0x050508F7, 0x05F90514,
+0x0D100A10, 0xEAF901FF, 0x070B010D, 0xF90D140A, 0xFC02F1F4, 0xE9FCF3F8, 0x07F70FF2, 0x0409F8FF,
+0x0C080CF5, 0x03FEF0F5, 0xF80E000C, 0x0201FAF2, 0x1314090D, 0xF90507F5, 0x05F302F0, 0x0CEFFDFB,
+0xF11813EF, 0x10FFEEF6, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+
+
+output0 =
+0x8EC35F65, 0xF1011E4E, 0x01283C76, 0x46C59B44, 0x66BD1E7E, 0x71CC3D13, 0xF54F7B59, 0xC2E51E78,
+0x878ACD1F, 0x0BB83AD9, 0xD6EB81F6, 0xDA98D960, 0x9583FF24, 0x84E13C2E, 0xB80A4BD9, 0x7546DA7D,
+0x61301F84, 0x4E8E7BCA, 0x0F9A1992, 0x84DE01C3, 0xFB1B38F1, 0x44764A25, 0x9525C193, 0xAD6AFC2C,
+0xEAC9CBE7, 0x822626C3, 0x6764F1E2, 0xB7080FC1, 0x92F0BF18, 0x2BE2A423, 0x6652CA22, 0x7E2B8B7D,
+0xDADC0042, 0x1684A5B0, 0x6AF80D1E, 0xDE4B11F8, 0x4C027AA7, 0x9B499047, 0xDF71DF9C, 0xE66B5211,
+0x0976A858, 0x97CCDFA6, 0xF921AC4D, 0x684DB77D, 0x2046F400, 0x66BF05FF, 0xCFE771B2, 0x7D285899,
+0xA6DD74A8, 0xD5AC14DF, 0xB4EE744D, 0x9BF75449, 0xBCCF7BE5, 0xD9B3E1C5, 0x04D5FEEA, 0xA91CED17,
+0x260A3E33, 0xB14FA433, 0xC7FB659B, 0xD847CBDD, 0xD4BAF083, 0x51A5AEB1, 0x39A13C7A, 0xC54DBA51,
+0x81DD7FFE, 0xE2A3941C, 0x386750AD, 0x85C6A1CF, 0x52E46581, 0x2DC58468, 0x4F8C204C, 0xCA6C89B8,
+0xD338F49E, 0xB71D9A1C, 0xAE5992A5, 0x461FFEB6, 0x0F724968, 0xD2D9A290, 0x4C0791D6, 0x8AA45E2A,
+0xBCE9EEF4, 0x769D6618, 0x71D659F8, 0xE9DC6A13, 0x99E831C3, 0x8AB8CFD6, 0x489E23C5, 0xBEFC2792,
+0x9E54E534, 0x54101DEF, 0x1F83D8D2, 0x69A8094D, 0x2DA8AAEB, 0x564C6C07, 0x4F2AADB5, 0x20CB1D7F,
+0x2D6E9D54, 0xB97A8BC9, 0x36365C67, 0x8D84329F, 0x4000A81C, 0x6326766B, 0xB9B50B8D, 0xF9D51D73,
+0x4D1A117F, 0x70486DEE, 0xBB19FFB6, 0x96929F46, 0x8E7C8D1C, 0x04B8D1F3, 0x204B8156, 0xA67E9C62,
+0x4534F672, 0x94B8C832, 0x38E7CFE4, 0x71F48255, 0x82181625, 0xF8C9EB50, 0xF3D38EF0, 0xB4DE79FB,
+0xF32452
+
+harq_output0 =
+0x14EFEB09, 0x16171D0B, 0xF210F3E8, 0xE4180EE6, 0xE40811F1, 0x0F1118EB, 0xE714EDF1, 0x09EA14EB,
+0x1AF71812, 0x121DE902, 0xE7DCF9EB, 0xF7E8EEE1, 0x19111BF4, 0xF2E92615, 0xE81704F7, 0xFE20FE1E,
+0x14EB181A, 0x0DFAEDDC, 0xE4EA0E0B, 0x1915F4EB, 0x1DE9DCE0, 0xE71C0722, 0x110714E0, 0x0B0FE719,
+0xDC0FF5F7, 0xEC1716EF, 0x0917DC11, 0xE1EE19EE, 0x101A1120, 0x0FE415F5, 0xF2E911E8, 0x0D1D0EED,
+0xDFECF70C, 0xEB14F7FA, 0xED0EEBEB, 0x15F11702, 0x110FE718, 0x0B06ED09, 0xECFAEB10, 0xE41EE916,
+0x031410F0, 0x0C13EDFF, 0xE4191816, 0xF8F1E0E4, 0xDEE41609, 0x1A17160C, 0x11DDE11B, 0xE8251517,
+0x0E1AEAE1, 0x17EB19E6, 0xF4F4EC27, 0xEBE30E00, 0x170B1BEA, 0x1ADBEBE2, 0x1005F11A, 0x0DF2EEED,
+0xED1318F9, 0x1CFB0314, 0xDD13150C, 0xE51E0CF5, 0xDF1118EB, 0x19ED0CEA, 0x11132407, 0xEAF9F2E8,
+0x060DEBE6, 0xDFF50E1B, 0x170B071C, 0xE7102017, 0xEB1BEBF7, 0x06F1ECE5, 0x111304EA, 0x0B1FEF1A,
+0xE7E8F2FB, 0xF305121D, 0xEC011815, 0x0C0D0BE2, 0xDE181915, 0xE9E615F9, 0xE9F4E9E6, 0xEAE814E7,
+0x0CE51F1B, 0xE906E310, 0x1221E61A, 0x13DF1BEA, 0xECE8E918, 0x1BF0EE17, 0x0C0EE20C, 0x0F14E10E,
+0xF9161ADC, 0xEBEF1D1F, 0x1809EFDF, 0xEE051F1A, 0x1FFE0E06, 0xF219F40B, 0xF01819EF, 0xF100F222,
+0x19F31922, 0x1B06E7EF, 0xE7EAE9E7, 0x0F19F6DB, 0x15F5E00A, 0x10EB0FEE, 0x07DF11F4, 0xEC1ED9F1,
+0x22EDD6EF, 0xD6FAE111, 0x151BE9E4, 0xFBEF19ED, 0x171BEEEC, 0xF40C17F5, 0x15E1EEEF, 0x17F81EF2,
+0x1E19E4F6, 0xEEEE1A16, 0x19F10B0B, 0x11F7E613, 0x17EB1309, 0x12ECF012, 0x15131CD7, 0x08F00820,
+0x1CF9FCF7, 0x13E21415, 0xF2F2E1F2, 0xE4191F14, 0x14E7F11D, 0x1B17F618, 0x18E8E517, 0xDDE4F317,
+0x1419EAEC, 0xE81EFC18, 0x11132D17, 0xECE8E1EA, 0x08210B06, 0x101B0EDA, 0xF2EA0FF6, 0xE2E8F41B,
+0xEB1D0E08, 0x141022F8, 0xE4E90FEA, 0xE2F5F2EE, 0xEFF5E8F2, 0x170E0617, 0xE12016E3, 0x1DEB1521,
+0x21ED0617, 0xE2EF180E, 0x13F722EF, 0x1E21ED11, 0x1CE8E3E9, 0x07ED1917, 0x07F20815, 0xECEB1AEC,
+0x1FF10E03, 0x0DEF0723, 0x0E16F0F5, 0x11E81FED, 0xEF12E31A, 0x1CE41E0D, 0x11E7E615, 0x1CFDE10D,
+0xF1E0E523, 0xE61AF8E8, 0x170C0DDE, 0xF2F414EF, 0x0EE50611, 0xE8E91CF2, 0xE2ECF815, 0x1BF4E2FA,
+0x0F12F70F, 0x1DE71314, 0x1111130D, 0x0F0D121C, 0xEF17F9CD, 0x1414E6E7, 0xE21DDAF2, 0x08E61E00,
+0xF5EF1EE9, 0xFF110F0E, 0x19EF16E2, 0xE116E11D, 0x171810E7, 0x1214F10E, 0xE6010C19, 0x13EDF513,
+0xFB100917, 0x1DE9E6EB, 0x09091A11, 0xDF21E4E4, 0xF8EFD8F2, 0x12110DE8, 0x19F8E508, 0xFEED16EE,
+0xE9F6EAF2, 0x23FD13EC, 0xE1031A20, 0xED15110C, 0x0511EC17, 0xEFF927EE, 0x0418ECED, 0x15E7EEED,
+0x19F810E7, 0xF2E6E008, 0xE2DFF912, 0x0FE815E9, 0x18131C13, 0x11F51706, 0xF718F326, 0x1118E3DE,
+0x0213EC22, 0xE4E7EB21, 0xDE161EDA, 0x09091118, 0xFD17EE03, 0xDE140DF2, 0xF71419E9, 0xE9E306EB,
+0xD91326F6, 0x1310DDE6, 0xF112F1EB, 0xE5F4FBF3, 0xEBE6E80A, 0xDD102314, 0xEB20D7E1, 0xEEEDEDF1,
+0xEF101110, 0xE5141806, 0xE723F118, 0x16F1070D, 0x12F0F61B, 0xE3F416E4, 0x1FF6F0EF, 0x17D9EE0E,
+0xE017F009, 0x161E17E9, 0x12F10EF0, 0x1D1019F5, 0xE1EBF817, 0xFFE1E71C, 0x1D14181C, 0xD90610E5,
+0x0CE929EE, 0x15EFDB23, 0xE616DBED, 0xE3E6F6EF, 0x1816DCEC, 0x140FEBF2, 0xE71929EB, 0xF1E7EF0E,
+0x191AF317, 0xEA0DF0E8, 0x17F207E6, 0x2016E7EC, 0x11E3180F, 0xDB130B0A, 0xE5E9FAF2, 0xEC200BED,
+0xEAE9F015, 0xF81DF0E0, 0xE2E81EFE, 0xE4E5E521, 0x0A18EE10, 0xEF21F8F8, 0x19F8E80E, 0x000412E2,
+0x1F1A1017, 0x2213150E, 0xF5EBEDED, 0x1313E813, 0x121AEA15, 0x12F0E317, 0x17F30C15, 0x1B1B191D,
+0xE800F0F6, 0xEEECE9E0, 0x200F160E, 0xEC0AFE16, 0xEBFE09ED, 0xEFD0F6F3, 0x1BEAE718, 0x07E8E511,
+0xF1E90BDA, 0x1DE92216, 0xF7F0DE08, 0xD8140619, 0x0FE7ECD9, 0xE1F6E50C, 0x1917E5FA, 0xEFE5F9F7,
+0xE31C0BE9, 0xD50816EE, 0xF007EA21, 0x0E0DFEE1, 0x0DEA0D1A, 0x181425F9, 0xE1DAE611, 0xED0BDEF3,
+0x15F518E5, 0x171F1DEB, 0x11E3E514, 0x0518E614, 0x0314F0ED, 0xD30FF1EE, 0x15F012F1, 0x0BDFD916,
+0xED05EFF9, 0xF6D8E4EF, 0xF11D1E1E, 0x2016EF17, 0x14E818EB, 0x1417F2DA, 0xE418F8EA, 0xE918EB0B,
+0x0B09EF15, 0xFE21FBE3, 0xEADAE017, 0x1C12E612, 0x1D03FEE5, 0x11D000EB, 0xFFDF0CF6, 0x1120F20E,
+0x180BEC0E, 0xEF131EE8, 0xE71FE614, 0x1B1FE40C, 0xECEFEEEF, 0xE2F7F008, 0xF0110DF5, 0xEAF922E2,
+0x17FBDEE7, 0xEA11EF04, 0xDBEEFE24, 0xF1E30CE5, 0x140AEDF2, 0xF4E7DBF1, 0xDEFC18EF, 0x1112EFF6,
+0x0821E7E4, 0xE400EC06, 0x1BF3E2F2, 0xF0161D17, 0xE5F218E8, 0xF5E61B12, 0xE215F9F1, 0xEF1610F1,
+0x08DCF0E9, 0x0EE324E3, 0xF6D2E8EE, 0x17F7F2ED, 0xDE1ADEE0, 0xEF14EA11, 0x0A301A15, 0x1518F31D,
+0xF721170E, 0xE7FDDC1C, 0x0EEFF2E8, 0xFB28EAF5, 0xE5140E1B, 0x1C14E5DD, 0x15ED1CE6, 0xEF1612F4,
+0xE8F00E1C, 0xEDF50F18, 0xEBDD1314, 0x1CF8EFE3, 0x0E16081A, 0x11ED0EF0, 0x09E82114, 0x14EDDF16,
+0xD4F81018, 0xE0FCFF21, 0x06F30DD8, 0x0B15EE0A, 0x120DF01F, 0xEBF0F5E5, 0xEEE411F4, 0xFF19100B,
+0xEE0D0FE6, 0xDEE71FE8, 0x0DEDE110, 0xE008ED23, 0xECF3EEE8, 0xF1F223EE, 0x121AEFFE, 0xF5F4E919,
+0xE70BE3EC, 0xFB21F5E7, 0x100BEBF0, 0xEBDA19EB, 0x1819F5FE, 0xF4F6F411, 0xFD0CE9EA, 0x171E1CF1,
+0x22160CF4, 0xE7001314, 0xF2E9ECDB, 0x1515130D, 0xF5ED17E6, 0x15E712EC, 0xE807F7E2, 0x201AED1D,
+0xE2F816E3, 0xE8141413, 0x14DE1FF0, 0x18F1EFFA, 0x09EF16E9, 0xE30FE11A, 0xEF13EF20, 0xEE131A15,
+0xE9DBE805, 0x14EA0FE2, 0xF8ED0E17, 0x1A14DEE6, 0x10EE14E4, 0xE9081526, 0xF8F01612, 0xDC0518F5,
+0xF210F00F, 0xEE0E280A, 0xE8E218F1, 0x0EFA04E7, 0x1219E717, 0xF216F0EE, 0x2814E7EC, 0xF41DE81A,
+0xE3EDF0E0, 0x13DFF6ED, 0xEEE9F71C, 0xDBEEEBF1, 0xDD13F8EE, 0xF115FDE8, 0x231314F3, 0xFE090613,
+0xEE110E1A, 0x1A0FFBE4, 0xE31710ED, 0x1A1FED1E, 0x1DEF1AF0, 0xEDEA1E0C, 0x0CE6E9E3, 0x17E42213,
+0x0BEC09E4, 0xDF1D01EA, 0xFB09F828, 0x03111A0A, 0x07E1E31B, 0xEFF3FB05, 0xE9F10E17, 0x12101AED,
+0x1819EAF8, 0xF5EBDBE5, 0x0BE420E7, 0xEC07031A, 0x1509EAF1, 0x1AEDF211, 0x191702F6, 0xF918F315,
+0x0E0A12ED, 0xF526160C, 0x15F5E812, 0xEC11EA10, 0x13E3E7DD, 0x0E23F110, 0xDC14E802, 0x14E20F18,
+0x06DBE816, 0x241A1DE6, 0x11250AEE, 0x1117F61E, 0x0906E9F8, 0xEF1CF41B, 0x1DEC0A07, 0xED16F5F7,
+0x0A1AE00F, 0x1E15ECEA, 0x15F20613, 0x1B151822, 0x111A17EA, 0x0C1EF0E4, 0x071CEB0B, 0xEBF5E6EF,
+0xF9F816ED, 0x161010DB, 0x152413F8, 0xF80F07E3, 0x15EEF615, 0x0E16EDEC, 0x0C20DCEC, 0x0BE10AF6,
+0xF1071EEB, 0x12E5F7F0, 0xEDF5EBED, 0x170FF725, 0xF3F01313, 0x07051CE5, 0xE309EFEF, 0xF1F0180B,
+0xF9161519, 0x181CDAF5, 0xE10E12F0, 0x15F412EB, 0xF7141819, 0xEE1FE0E6, 0xD8F217DB, 0xECF4EB0E,
+0x1DEF0FF4, 0xE40CEB05, 0xF0120DF1, 0x21EC191D, 0xF413E619, 0xE62519E2, 0x1AF00DEE, 0x09F2EFEC,
+0xE8F90DF4, 0x25D6F626, 0xEFE800DA, 0x1BEBEDF1, 0xE812170F, 0xE9E9F102, 0x271BEC08, 0x11E7F71D,
+0x15EAE61D, 0x120C08F4, 0xFD16E813, 0xF30A11E6, 0xE3F1E81D, 0x14F2FE04, 0x1B0A150D, 0xEBE8D8DD,
+0xEF1E1ED7, 0x13100E1A, 0x09F11EE7, 0x11E81218, 0xFA24EFE8, 0xEB151EE1, 0xE516F2E9, 0x1DE41911,
+0xF616E5F3, 0x14EBED19, 0xEB1B12E4, 0xE5191907, 0x22141016, 0xE9EDE60D, 0xFF15F114, 0x1715E1EF,
+0x28020F10, 0x14ED15EA, 0xF618E30A, 0x27EBEAE7, 0x1DE815DC, 0x1816E81B, 0x1A130DF9, 0x2CF609F7,
+0xE5EAE7F2, 0x0F08F401, 0x10ECE8E5, 0x0FECE7E3, 0x15E6F5F3, 0xE41522E2, 0xF3E823E2, 0x0811E5EA,
+0xF91E2119, 0x120C1AFA, 0x1BEDED0B, 0x14E3ED15, 0xE31C12F6, 0xF306EEFC, 0x01ECDB17, 0x09E3F413,
+0xDFF0E7E7, 0x17130BF0, 0xE518FB0C, 0xF21011EC, 0xE21BE1E4, 0x03F5E80B, 0xF0DCEE15, 0xEF1A0E1C,
+0xFD171506, 0xEED10C09, 0x04E9E90D, 0x1CE614E7, 0xF718EFF2, 0x1E03D4EF, 0x06E8EEE7, 0xEB1D21EF,
+0x1519E6EF, 0xF1F00E1E, 0xEAF3240C, 0xEE211D0D, 0x0FF3DDFE, 0x161318F4, 0xE8100DF2, 0xE41422EC,
+0xEA0DE3E6, 0x1FF9DD1A, 0x1618E6F5, 0xE4DE00F5, 0xF0F809F0, 0x1E0C10E7, 0x180D0FE3, 0x19EE09EA,
+0x1C10E2E8, 0xE81EEA12, 0x20DE0D10, 0xEAF01811, 0xDE0D15EA, 0x18F5EFF1, 0x0812EA0C, 0x211204EC,
+0xE9110AE8, 0x21DF1114, 0x18E10D09, 0xFDF8F226, 0xE9E002DE, 0x2116EBE0, 0xF4F918ED, 0x0BECEEF8,
+0xEDE81A06, 0x000EE519, 0x16F2FAE2, 0xD920E312, 0xE51EE713, 0x1423E50C, 0xEF1316FB, 0x20F3F5F2,
+0x1BE3E8ED, 0xE6EAE6EB, 0xDD0B1905, 0xE810ECE9, 0xF71A1810, 0x100A0E10, 0xF114F914, 0x071FF20C,
+0xEC19EDE7, 0x0AD6181D, 0xEC06E8F5, 0x191312F3, 0x121525F3, 0xE6EE2916, 0xF41A0F17, 0xF4E8EFEF,
+0x1819E518, 0xE71FD4E6, 0x15171F19, 0xD80913E0, 0x1FF816E5, 0x0E1A16E5, 0x0CF1F21F, 0xF11513E1,
+0x15FCE7E3, 0xF1DD0FE9, 0x08F018DF, 0x13D915E0, 0x13ED11E5, 0x050F10EA, 0x17F21D13, 0xF90FDEFC,
+0x000B2316, 0xF5EFEB13, 0x09ECEA05, 0x0A18E3FD, 0x0812EE05, 0x0E12F7E7, 0xDA17DB0B, 0x13E6EB16,
+0xF1E71CEC, 0xF111F316, 0x15E90DE8, 0xEA17E0E3, 0x21F20D09, 0x15F915F2, 0x210DF00D, 0xE5DCF0ED,
+0xEDE9EE04, 0xEFF7FAE8, 0xF61A191B, 0xF81DEBEF, 0x0E23F7E0, 0xDCE60BF1, 0x19EF0F20, 0x1B0B120B,
+0xF2130D0F, 0x160CD81C, 0xF3180CEB, 0xDF0AF2EC, 0x14EAD513, 0x20E7F4EF, 0x0CEE1A15, 0xDF17F2E2,
+0x1F0CFAF1, 0xE81011E3, 0x1B290ADC, 0xFDE515E9, 0xE0E9EA0F, 0x0BED0CEE, 0xE2E11AF2, 0xED2015E7,
+0x18E4EA0F, 0xF6F0F313, 0xD904F425, 0x1C0FF1EE, 0xE5F3140D, 0x29F6EB27, 0xEEFC1515, 0x04E3F907,
+0xF11A05EC, 0xF6E7F9E4, 0xF5E60E13, 0x0DEE1518, 0x0D1418E2, 0x0A17EC22, 0x1A0F11EA, 0xEA17E6EE,
+0xF22A191E, 0x2111F5DD, 0x29F216EF, 0x160519E9, 0x0F1A040F, 0x1A021D19, 0x1825EE0F, 0x171D0D0F,
+0x0BFCF004, 0x02FF0BF7, 0xF9F1F209, 0xFFF5F008, 0x05F30C07, 0x03FCEE07, 0x11FCEE08, 0xF4F31514,
+0x040B06F2, 0xE400F9F3, 0x13090B1A, 0xF2F4FFE7, 0xF1EE06F9, 0xFA0DFF0D, 0xF3ED09F6, 0xF40305F8,
+0xF8FFF507, 0xF8FF1707, 0x0AFC030C, 0xF109F3F4, 0x0406FDF0, 0xEF04F50E, 0xF5FBF3FD, 0xF30704F4,
+0xF0ECFC1C, 0xFCECF0F5, 0xF911160F, 0x020B0C0D, 0xF90C060B, 0x03FA08E7, 0x0311FF0D, 0xF405F4FA,
+0x0DEBF7F2, 0x0EF6FAF2, 0x09F3ED0E, 0xFE08EFF2, 0x0F170008, 0x0DFF0FFC, 0x0BF0ED0E, 0x0D140E07,
+0xF2F611F3, 0x11E9020B, 0xEE03F3F7, 0xFCFD00EF, 0xF518090B, 0xF11510EE, 0xF5FB07FF, 0xFEFC11F0,
+0x100DF006, 0x0AF4F300, 0xED0A1200, 0xFEF7EDF5, 0xF7040101, 0x0FF2040E, 0xF01207F7, 0x0AF3FF10,
+0xF60B0D00, 0x07F8EFED, 0x060D03FB, 0xFA08FCF6, 0xEEF6FA04, 0x0806FFF9, 0xFF0B0FF0, 0x08F3F1F8,
+0xF0F5EFF3, 0xF1EE0D01, 0xFBFEF3F6, 0xF20D060B, 0xEFFE00EB, 0x080803EE, 0x0617120A, 0x1210050C,
+0xF010FA07, 0x0908EF0D, 0x030908F2, 0x01160610, 0x120BF415, 0xF9F40FF1, 0x0FF00C02, 0x0B110D0B,
+0x0CF9F10A, 0x0C06030D, 0xF20208F5, 0x0F07FAF1, 0xF0FAF50C, 0x08F8F7F0, 0x01EF0EEC, 0x0AEFE90C,
+0xEFFCF714, 0x05F2FF13, 0xECF6F9E7, 0xFEEFFD07, 0xF6ED0F0D, 0x060FF407, 0x0803F600, 0x0105EE06,
+0xF5F70D0B, 0x02EA110F, 0x070FF8F8, 0x0B040902, 0xF6F30AF0, 0x110C1AF9, 0xF61709F7, 0x0D0FF00E,
+0x09F5EFF7, 0x0F13FAFD, 0x0C02F1F3, 0xFBF0F8F7, 0x0DF8F5EB, 0xF1FEF904, 0xFAF1030D, 0x161211F6,
+0xFA0AF50B, 0xF316F60E, 0x100708EE, 0x0AF00A00, 0xFFF4F4EE, 0x0C0BFD18, 0xFCEDF7FE, 0xFB11080F,
+0x0DF70B08, 0xF90AF309, 0xF9FD0F08, 0x10FEFA0E, 0xEE161508, 0x04FCFFFB, 0x0B1009FE, 0x0CF40D0D,
+0xF800F1FC, 0x07080602, 0x1000F8F8, 0xF8F205FD, 0x0809F9F2, 0xF80C09FF, 0xF9F5F6F8, 0x05FE0EFE,
+0xFCF6F8F1, 0x09000A0B, 0x07080DFC, 0x09FBEDF0, 0xEF0CF4FA, 0xF8F6100A, 0xF5F4F1F9, 0xFFFC0E0B,
+0xEEF6F3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEF0810FC, 0xF311FAFD, 0x0DF201EC, 0xFFF40EF3, 0x1304ED12,
+0xF4FCF304, 0x09EC1005, 0x09F80C09, 0x0C10FC0C, 0xF7F7FBFC, 0xF7F60808, 0x05F90308, 0xEC0A13F4,
+0xF20BF707, 0x04FE03F5, 0x10020FFE, 0x02F413ED, 0x050AF5FA, 0xF90E00E4, 0xFAFBF3F5, 0x0908140B,
+0xF00A0107, 0x13EFED0E, 0x04F5F8F5, 0xF104FF0F, 0xF7F0F6F5, 0x0DF7F704, 0xFF0CEB12, 0xFAF50C07,
+0x05EFF5F6, 0x12FA07F6, 0x0AFDF8F9, 0xEE050803, 0x0A04FBED, 0xF61312F2, 0xF10FF7E9, 0xFBFD0307,
+0x0AFEF5F7, 0x12FB12F3, 0xFA14F206, 0xFAF80EFB, 0xFAFDFAFC, 0xFAFC0DF6, 0xFD08F1EF, 0x0B0D0D14,
+0xF80EF90F, 0x0F0D0903, 0xF609ECF6, 0xF9EFF5F9, 0x0FFBFC06, 0x050A0A08, 0x01F30C03, 0xF9F8EE0A,
+0x0B02100A, 0xFDF3F607, 0x0EFF0D01, 0xF8EFF0FF, 0x11F511F7, 0x08F7F809, 0xEB00FE09, 0xF1FA08FF,
+0xFA0114F6, 0xF0090F10, 0xF3FBF6EF, 0x1209FE0E, 0xF7FCF309, 0x04F5F8FD, 0xF00203F2, 0xF510FB05,
+0x12F7080E, 0x08F10AFC, 0xEFF6F5FE, 0xFFFA0F08, 0x0714F612, 0xF30107F5, 0x06FD08F0, 0xFA0C08EE,
+0x05FA02F9, 0xF40108FF, 0xF90DF1F5, 0x17FC0300, 0x09F2080A, 0x10100BF0, 0x12020B10, 0xF5F80AF7,
+0xF902EBF0, 0x16E00312, 0xFEEA0600, 0xFFFAFA13, 0xF20206F9, 0x060BEF10, 0x15FAF005, 0xF603010A,
+0xF50AF110, 0xF1F903F9, 0xE508F40A, 0x0F0FF704, 0xF00B0AFC, 0xF30DFA02, 0x0202F3F9, 0xF60DEDF1,
+0x05FFFC04, 0xF402FFF8, 0xF1F9F807, 0xEF0E0508, 0xF8F6F80D, 0xF4F2FAF5, 0x031209EF, 0xF9FBF6F2,
+0x000AF6F5, 0xF6000D12, 0xF5FD0C08, 0x04FAEF00, 0x1103110B, 0xF1F50BF1, 0x08FD1104, 0xF80B0AF1,
+0x00160DF7, 0xFD05F3F8, 0x0D01F80B, 0x100502F3, 0xFC0309F6, 0xF41207F6, 0xF2100BFD, 0x040E04F7,
+0xE9080908, 0x06030EEA, 0xF40DF805, 0x09EE0608, 0x0C03F4FB, 0x080CFBF1, 0x100416F5, 0x0407F402,
+0xFDFBFDFD, 0x0BF4F806, 0xFC0B16FF, 0x08EBF3F5, 0xECF9F00B, 0xF8E9F300, 0x08F802F5, 0xF3EF10F4,
+0xFEF409F5, 0x15F7FA13, 0x070DF707, 0x0E0617F9, 0x0206F4FA, 0xF2FAFD0B, 0x10EB0F06, 0x1713EBFF,
+0x030A0BF3, 0xF7E30003, 0xECF50DEE, 0x14050506, 0x160AFC0A, 0x0EFD01F6, 0x02050BEB, 0x031615F4,
+0xF2F3FC09, 0xFA140704, 0x0AF20F07, 0xF7F9FE04, 0xF10EEC06, 0x130D0BFC, 0xF6F3ED0F, 0xF20D100D,
+0xF1F6F40C, 0x0E0BF1F2, 0x0C0FF513, 0xEBEE13FB, 0xF80EF409, 0xF608EC0A, 0xF9090DF1, 0xF602EF09,
+0x14F7F6EF, 0xF401F9F0, 0x130B10FB, 0x0FF31101, 0xEC0912ED, 0x0D03F9F8, 0xF4FAF103, 0xFEF4F10A,
+0xF60BE90A, 0xFFF0F7F1, 0xF801F2F0, 0x00150B1A, 0x09EE130F, 0x130DF7EA, 0x13FB0008, 0xF1F9F00E,
+0x0501F5F0, 0x03F60BF8, 0x090BFE05, 0xEBF8FAF3, 0xEA12F90A, 0xF4FCF4F0, 0x0DF81312, 0x01130DF8,
+0xF3060CF2, 0x00F10CF4, 0xE8F611F0, 0xF707FEF6, 0xF81013FC, 0xF0040AFD, 0xF60616FC, 0xFE1109ED,
+0xED140DED, 0x0303F812, 0xFDF4F4F8, 0x0CF60B14, 0x0DF11811, 0x0BF4FBFA, 0xF2F906F9, 0x09F3F806,
+0x030608FA, 0x0A14E20D, 0x0A08F5FA, 0xE7060DFB, 0x02FD050B, 0xF4F6FB07, 0x01F90BF7, 0x0CFA0FF3,
+0x0B04FD01, 0x0F090604, 0x060E0F0A, 0xF6F1FF06, 0xFC0C0611, 0x01030C0D, 0xF612F9F6, 0x120FF002,
+0xF0F0F9F0, 0x10FE0DFC, 0xEAFCF6E7, 0xF4F0FFFC, 0xEA080D01, 0x09F6020A, 0xF1EDF2F7, 0xF80609F8,
+0xF8F7F80F, 0xF8F7FEFB, 0x0AEE03F4, 0xF60F0406, 0x1309EF03, 0x1215F7FC, 0x0EED07ED, 0x08F30DF5,
+0x09E90D02, 0xF1FAFDF4, 0xFD0FFEF4, 0x0317F1F2, 0xF3111203, 0xF208FEFC, 0xF5FB0213, 0x15F20702,
+0x0FF918ED, 0xF3F8FF0B, 0x0F0A0A0B, 0xEE0C0A13, 0x0A0AF506, 0x1A0401F6, 0xF0F6080F, 0xEC091201,
+0xF9F90C02, 0xF10CF003, 0xF217F200, 0x0DF8FA11, 0x04F603F6, 0x03FB10FA, 0x0AF4090D, 0xF1FBF3EF,
+0x0DF00505, 0xFA0B0E0E, 0xFD030811, 0xFEEDF80A, 0xF1F1F40B, 0x050D0514, 0x0DFC0A10, 0xFF0D01EB,
+0x07F7010D, 0xF90D00F6, 0xFCEDF108, 0xFD10F30C, 0xF3F7FB06, 0xF009F8FF, 0xF808F8F5, 0xEF12F009,
+0x0C0E14F8, 0x02010E06, 0xFF00F50D, 0xF9F1F309, 0x0507EEF0, 0xF8EFFDFB, 0x05041303, 0xFC13EEF6,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xFB0E01EF, 0xFF0C0B02, 0x07090AFB, 0x0BFBF3F1, 0x0B090F0D, 0xF10409F2,
+0xF80A0E0B, 0xECF60E09, 0x0610F2F9, 0xF4F9FBEF, 0x08ED0DF9, 0xFCF9FEFE, 0x0F0C12F8, 0xF9F317F4,
+0x0BF80213, 0xFFFD1710, 0x0BF80FFB, 0xEEF6F2EE, 0x0106F506, 0xF3091206, 0x00F504F0, 0x0B0C0018,
+0xFD02FAEF, 0x06ED0308, 0xF4F60215, 0x02F80BFC, 0xF20601ED, 0x06F7F5F3, 0x0111FAFC, 0xF2ECF2F8,
+0xFB050C0D, 0x0314EA0A, 0x09F4FCF8, 0xF0F80013, 0xF6E90D0A, 0xF307F415, 0xFB04F4F8, 0xF006F3F1,
+0xFAF9F808, 0x06F9F109, 0xED0A0A0C, 0xF3F6FC03, 0x0508120A, 0x0C0DF100, 0x02FF09FF, 0x00F80D01,
+0x04E50410, 0xF616130C, 0x0300F4EC, 0x090EF506, 0xFA0E0C14, 0x0EF10111, 0xF2030F09, 0x03F3030E,
+0x09EA0509, 0xFDFEF9FB, 0x06F4F702, 0x0C0D0BF3, 0xFFFBF906, 0xF7FBF512, 0x03110AF8, 0x0AF7F70D,
+0x17F60108, 0xF811FA05, 0xEE040700, 0x03FEEF01, 0xF706EC0B, 0x060C0AFA, 0xEC0EF910, 0x0804F207,
+0x09E902F7, 0xF7FDF610, 0x0C050C0B, 0xF8E7F609, 0xFB170A13, 0xF0080404, 0xE808F413, 0xF1F4EB07,
+0xEBFC01F7, 0x0B040AE8, 0x00F1020E, 0xF0F207EC, 0x0EFFF211, 0xF3F815F4, 0xF9020B0B, 0x0EF71201,
+0x0706FC0C, 0x06FDF6FA, 0xFBF7F80A, 0x08090EFD, 0x14FD05FF, 0xF403FE0A, 0xF5F8EF03, 0xFB0AF8F7,
+0x0F00F409, 0x0AEF0B03, 0x0FFB0210, 0x11070710, 0xF1080B0B, 0xF20E08E8, 0xF00CF5EB, 0xF0F30C0E,
+0xFCF0080D, 0x0900EE07, 0xFA01FCFE, 0xE712E70B, 0xF004FEF9, 0x0CF5090D, 0xF60EF606, 0xF8F4FAF8,
+0xED061507, 0xEF110506, 0xF90FF20C, 0xF911F813, 0xFC12F3EF, 0xF7F9F1FC, 0x0E07EAE9, 0x0EF8F1F8,
+0xF6070FEA, 0xF0FA0310, 0xF8FE1417, 0xF8F306F9, 0xFBFCF50E, 0xEC0D11F3, 0x0900F70A, 0xF80EFBF3,
+0x0B08F8F6, 0xEFF00F0C, 0xF709F8FA, 0x0E16EB13, 0x0BF415FE, 0xF4F20F0B, 0xEC0C0AF3, 0x13F8FB02,
+0x12F908FB, 0x0A090D12, 0xF110F0F5, 0xF40E021B, 0x0809F7F3, 0xEE000B0D, 0x0E0FF5F6, 0xF3F40BF6,
+0x05150BE7, 0x0DF809FE, 0x12030809, 0xFF13FC08, 0x0BF6F912, 0x13F90AF4, 0xFE03F2F1, 0x04FB0CF7,
+0x01FDE8F5, 0x0EF8F40D, 0xFE02F7ED, 0xE7EDF2FB, 0x04F9FF13, 0xF0F80A07, 0xF700F6F7, 0xF4080EF4,
+0xF2F7F80F, 0x0DFDEFF0, 0x11EFF902, 0xF2FC0703, 0x0AFD10F1, 0x17F70D07, 0x08F5EFEB, 0xF10B11F9,
+0xF610FFF8, 0x0C130B18, 0x080CFEF5, 0xFBF8F906, 0xF1080C08, 0xEAEEEE10, 0x0F11F6FD, 0x06F706F1,
+0xED0BEA0D, 0xEEF30C02, 0xF8F40D0F, 0x020D0DEC, 0x0CF40605, 0x07020C12, 0xF40C0EF2, 0x060115F2,
+0xF0E6F508, 0xF40DF9F0, 0x0F0A05F4, 0x0FF00B08, 0xEB08FEFC, 0xEE030AF1, 0x0DF9E806, 0xF2F7F5FD,
+0x0A12EEF0, 0x09F3EFF8, 0xFE05F6F8, 0x1CEDF4F5, 0x060512FB, 0x08F90AF0, 0x000107F9, 0x14FFF9FA,
+0x16F70B0B, 0xEEF2F704, 0x04F90BF1, 0x150302F3, 0xEBF8F8F3, 0xF6F90FEF, 0xFBF0F7FD, 0xF70D1000,
+0xECF70C12, 0x03FDF3F0, 0xE4F31604, 0x02FFF600, 0xF00C0105, 0xEC0D0F02, 0xFAFAF707, 0x0208F501,
+0xFFF809F5, 0xEEF70405, 0x050CFCF9, 0xF20BEBF7, 0xFA0E11F6, 0xF7F403F2, 0xF5F0F306, 0x00081A0F,
+0x02F6EE09, 0x0F0D0B0F, 0x0AF7EDF6, 0xECFA0FEB, 0xF000FBFC, 0xF91103F4, 0xF0F30001, 0x08FCF8EE,
+0x0CFEF30B, 0xFE040B02, 0xFC030FF3, 0x04F9F209, 0xF10E0705, 0x14F60B0C, 0x03ED1311, 0xED03EE13,
+0xF9F8F70F, 0xFB010504, 0xEDF70C08, 0x061802FE, 0xED0801F9, 0x06FCFA16, 0x0EF8FCF3, 0x0EF00C0E,
+0xF3F9170D, 0xFE010F05, 0xF31B0500, 0x07F50BF4, 0xEE09030A, 0xF401F400, 0x0C04090A, 0xFCF90F02,
+0x0D10FD0C, 0xF00FEA09, 0xF3F50BF7, 0xFCFCF7EF, 0x06FB0A12, 0x0200EC01, 0x02020A0E, 0xF3FCFE0D,
+0xFC0CF209, 0xFB06F2EE, 0xF90B0C10, 0xFDFCF40C, 0xFC06F80B, 0xEFF902F3, 0x0C110911, 0xF80AEFF3,
+0x0900F30C, 0xF8160E0F, 0xEE0D130D, 0x0BF00209, 0x0AF509EF, 0xF7F614FA, 0xF513070A, 0x09E512FD,
+0xF3050D0C, 0x0006020D, 0xFAED07FE, 0x07FE170B, 0x121300FF, 0x02F602FD, 0x0AF408FA, 0x06FAF7F1,
+0x0807F71A, 0xFBF20C0B, 0xF3FD05F7, 0x06F4090F, 0xF1FEF307, 0x0805EBFA, 0x0810070D, 0xF6F31214,
+0x02ED0607, 0x0D08010F, 0x09F60FF2, 0x0BF8F20C, 0x1BFCF6F4, 0xECFB070C, 0x13FAF3FD, 0xF8F7FCF4,
+0x0C09F7F4, 0xF001E9F9, 0x11F1F305, 0xFAEC08FA, 0xF8F8F40F, 0xF6F70B0A, 0x07F012F4, 0xFDF5FEF3,
+0x09070EF1, 0x09FFF7E9, 0xEAF60C0F, 0x04030106, 0xF5E70709, 0x0AF6F70C, 0xFA14FEF1, 0xF0E51903,
+0xF4EF0B11, 0xF0F80CF3, 0x12ED0307, 0xF301F405, 0xF9F4F3F5, 0x0B0EF809, 0xF7EBF9F8, 0xF10BF406,
+0xFBEEF2F6, 0xEC1111F2, 0x0716EEF6, 0x080910F0, 0xEE0D0010, 0x07ECF7F0, 0x09060005, 0x0DF5EB0B,
+0x0212110C, 0xF3F704FA, 0xEA02020C, 0x050811F1, 0x01FA07F7, 0xF60E0D0D, 0xF711F60C, 0x0108F4F1,
+0xF7F6FE01, 0x0F0FF7F9, 0xEFE7010A, 0x090902F6, 0x0FE809F8, 0xFDFE00F6, 0xEF0806F5, 0x10F80F0F,
+0x0419F40B, 0xEF08EEFD, 0x0711F507, 0xF20901FB, 0x0BFA130A, 0xFA120CF9, 0xE809F2F2, 0xFAF8FE00,
+0xF2FDFCF8, 0xF805F1FD, 0xF1F70912, 0x0903F80B, 0xF9EFF70B, 0x0D05F5F2, 0x0A08FF0E, 0x09F5EE00,
+0x08F91314, 0x0AFEF60A, 0xE51005F0, 0x041EECFA, 0x06FDFF05, 0x0D11F1EF, 0xF4F80912, 0x0D090106,
+0xFAF6F308, 0xFE14F8F1, 0x0D02EE03, 0xF0FDFAED, 0xF2F2E903, 0xE9040C0D, 0x0A00F8F8, 0xF4FA0909,
+0xF4EFFA1B, 0xFC0D0D0B, 0xF2EE08F5, 0x000E0F12, 0xF0F50F11, 0x04FEF9F4, 0x0BF914EB, 0x170CFBF9,
+0x03F30E06, 0x01F8F70F, 0x14F8EFFD, 0xF412F5F2, 0x0AF60C01, 0xF711090D, 0xF60DF90C, 0x09F0ECE8,
+0xEC06140C, 0xFD090DFA, 0xEA01F7EF, 0x030AF8F6, 0xF3F5FCFD, 0xF4F3F500, 0xF3EDECF5, 0xF3130AF6,
+0xF8EFFA0E, 0x0A0B0DF4, 0xF1F0F7F5, 0x0D0A09F4, 0x10EDEEF7, 0x0E0EEDFE, 0xF4F9F306, 0x05FCF8FF,
+0x13FBF7F2, 0xFF07F6F7, 0x0AF2F8F6, 0x0DFA1EFF, 0xF6EE0B09, 0xF113030B, 0xFAF9F3F5, 0xFA0C080C,
+0x0BF8F607, 0x09F902FB, 0xF50BFD08, 0xF7F515EF, 0x0BFA00FB, 0x01FAF009, 0xEA02FE05, 0x0CFBFC10,
+0xFBF7F214, 0x1305F1ED, 0xFA01F216, 0xFDFBFFF4, 0xEE0B040C, 0xFAFB05FD, 0xFEF8F7F4, 0xF60802EF,
+0xF301E603, 0x03EEFAF7, 0xF109EAF2, 0xEF0BFEF5, 0xFFF31115, 0xED09F309, 0x02FFEE0D, 0xF60D0FF9,
+0x030A07FA, 0xF5F4060A, 0x140FFEF1, 0xF6FCEEFF, 0x07030006, 0xFBEF04F7, 0x0AF009FC, 0xF90A0FF9,
+0xF2F702F8, 0xFFFBFB0E, 0x0907090B, 0x0B180F02, 0x0B0C0405, 0x12F80AF9, 0x09F400F0, 0xF010070A,
+0xEBF105F1, 0x05F90C11, 0xE805F30B, 0x12F70BF3, 0xEF11EFFC, 0xEFF7FC0F, 0xE709EF10, 0xF50CFBFD,
+0xF7F805F0, 0xF609FCF7, 0xEAF80F00, 0xFBF40B10, 0xF71106F5, 0xFA12FB01, 0x020BF30C, 0x0714FA04,
+0x06010708, 0xF2110D0D, 0xEEF6F2F8, 0xF009F1E8, 0x07FD06F7, 0x14F8EF0C, 0xF00DF9F6, 0xF20BF50B,
+0xF90C06F7, 0x06FB02F7, 0xF7F20A09, 0xFA051008, 0x0EFA0913, 0x05060D03, 0xFCF40CF6, 0x03E8FCFC,
+0xF3F31411, 0xFCF40906, 0xFB0BF9F7, 0xFC02F80D, 0xF20408F2, 0xEE0EEF0B, 0xF0000EF3, 0xFBF6EDF1,
+0xFAF50FEB, 0x06FC0C0B, 0xF009F80F, 0xF0F7F706, 0xF70507FC, 0x0AF00209, 0xFF0DF20F, 0xEA15FA06,
+0x0816EDF3, 0x000EF9F5, 0xEFF7FA04, 0x0FF60814, 0xF1FEFA02, 0x0805F306, 0xF610FDEE, 0xF8061606,
+0xFE0DFCEF, 0x07F8F613, 0x0C0809F9, 0x0DEBF0FB, 0xF00EF4F4, 0xF8E7F20A, 0xF3FAF20D, 0xF90D04EE,
+0xF1F40E00, 0x09EFFFEC, 0xFE0B0EE7, 0xF7FA0F0E, 0xF00CFEF4, 0xFAEEF9FC, 0x161AF703, 0xF70F10EC,
+0xF6F011FA, 0x10FDFB0B, 0xF60C03FE, 0x0AFF08F3, 0xF6F606F0, 0xF5F716F3, 0xFDFDEBF7, 0x0CF8EFF4,
+0xE3EF0910, 0xF7F6FF12, 0x001402F1, 0x03100EF2, 0x1117EBFF, 0x17FA1008, 0x0DF9F80E, 0xFCF0F511,
+0x1403EEFC, 0x0010F100, 0x110A0612, 0xF505FAEF, 0xF4F304F4, 0x061209EF, 0x090C150C, 0x04F41306,
+0x0B0C0DED, 0xF0F6F110, 0xFC0F1008, 0xF3EF0E08, 0x0B0AECF8, 0x0CF8FA0C, 0xF7FB0EFF, 0x0FF50FFC,
+0x0DF4EDF8, 0x02080C0B, 0xF510F2F2, 0x0208FDF1, 0x060B04F1, 0xF8F6E607, 0xF415EDFF, 0xE8FBEBEC,
+0x0805F30F, 0x00F30F09, 0xFA0DF6EB, 0x0BEEF806, 0x0408F00B, 0xF4F5FB09, 0x090EF310, 0x1006FBF9,
+0xF0F7F710, 0xFC070C0F, 0xFB12EAFA, 0x0BF007F1, 0x080100F1, 0xF700F709, 0x0A0D05F8, 0xEFF20D0C,
+0xF209F8F8, 0xF207FDF3, 0x0DEFEFEE, 0xFD020114, 0x0AF5050A, 0x0D0415FA, 0x0C12ED0F, 0x14F01005,
+0xF7F0EE06, 0x0F14F209, 0x080500F9, 0x08F5050E, 0x0DE7E901, 0x03FDF3FC, 0xF20403FD, 0xF7F2F60D,
+0xECF00D09, 0xFB09FF0A, 0xF306F9F2, 0x0E03F20E, 0x0C09F305, 0x11F710F8, 0xF4F217E4, 0x0E09090A,
+0x0A12F0F9, 0x06F312FE, 0xFDFBFDEE, 0xE9F0020D, 0x0DFB1005, 0x0200E90B, 0x0F0C02F5, 0xF8FF05F4,
+0x0AF303FD, 0x0BF4100E, 0x14F2040F, 0x0EF9EF0B, 0x0AED0801, 0x05F5EE08, 0xFF0A0514, 0xF8F2F0FF,
+0x0FFAF7F0, 0xE10E12F6, 0x13F1F4FA, 0xF3FC0B0B, 0xEFFEF4FD, 0xF9080708, 0x05FCF9F6, 0x040E06F4,
+0x020DF5F6, 0x13F50B11, 0x1513F1F6, 0x05F707ED, 0xF7FB01F7, 0xF1EF06FA, 0x09FB1102, 0x06FC0706,
+0xF7F80F14, 0x0EF3F002, 0x0AF8FE0A, 0x0BE8F5F9, 0xEEF609E9, 0x09E8EE02, 0x03090BFC, 0xF0F8F0F1,
+0xF8081009, 0x0F0002FA, 0xFCF202FD, 0x0DF106EF, 0xF70408F5, 0x02140C15, 0xF6F6F5EF, 0xF1080905,
+0xE902FDEC, 0xF3F4F6F6, 0xF904FCF2, 0xF906F5F3, 0xF7FB0A08, 0x08F4F0F1, 0x0EFDF6F1, 0x03F8F6F6,
+0xFF0C110C, 0xF1FDF7F8, 0xF814F502, 0x12FD1108, 0x0DF7F313, 0xF506FA11, 0x07FEF9F2, 0xEAF20D09,
+0xFCF40D0D, 0x06F1F709, 0xF7F21DFA, 0xFB00ED11, 0x0DFA0208, 0xF1FE1101, 0x0AF5F4F9, 0x060BF3F9,
+0x080CFD06, 0xF30EF409, 0x12EB02EF, 0x0BEF0D09, 0x1512F0F0, 0x18010700, 0x05070F05, 0xF306FC08,
+0x0001FD0E, 0x10FD0DF8, 0xF708F90A, 0x100D0D05, 0x04011414, 0x0AF90D0C, 0xF402F8EE, 0xFC11FAFF,
+0xF500F605, 0xF0EAF8F4, 0x120F0407, 0x1103F9EE, 0xF9F9F5F7, 0x10060EF8, 0x0609F504, 0xF20E080F,
+0x0EF3F109, 0xFB05F60E, 0x0E1C05FD, 0xF710FBEB, 0x16F2F90B, 0xF500FEF4, 0x0A13EEF7, 0x0EFF0CF6,
+0xFFF903F8, 0xF30A0BF0, 0xF7FCF004, 0x1613F70B, 0xF90506F5, 0xEB09F008, 0x05F30CF3, 0x0310EEF3,
+0xFD1002F4, 0x09070114, 0x040B0606, 0xE400F907, 0x13F40B1A, 0x06F4EBE7, 0xF1EE06F9, 0xFAF9130D,
+0xF3ED090A, 0x08EF05F8, 0xF814F507, 0xF8131707, 0x1EFCEF0C, 0xF1090708, 0x04F211F0, 0xEFF0090E,
+0x09FBF3FD, 0xF3F204F4, 0xF000FC1C, 0xFC00F009, 0xF9FD160F, 0x16F7F80D, 0x0DF8060B, 0x03FAF4FB,
+0x03FDFF0D, 0xF4F1F40E, 0xF9EBF7F2, 0x0EF6FA06, 0x09F3EDFA, 0xFEF4EFF2, 0x0F0300F4, 0x0DEBFBFC,
+0x1FF0010E, 0xF9140E07, 0xF2F6FD07, 0x11E9020B, 0xEE17070B, 0x10FD0003, 0x0904F5F7, 0x0515FCEE,
+0x090F07FF, 0x12FC1104, 0x10F9F0F1, 0x0A080700, 0x010A1200, 0x120B01F5, 0xF7F0ED01, 0xFB06040E,
+0xF0FEF30B, 0x0A0713FC, 0xF6F7F9EC, 0x07F803ED, 0xF2F9EF0F, 0xFAF4100A, 0x020AFA04, 0x0806130D,
+0xFF0B0F04, 0x080705F8, 0x04F503F3, 0x05EEF9ED, 0xFBFEF30A, 0xF2F9F20B, 0x03FEECEB, 0x08F40302,
+0x0617FE0A, 0xFE10050C, 0x0410FAF3, 0xF508EFF9, 0x030908F2, 0x010206FC, 0xFDF7F415, 0xF9080F05,
+0xFBF00CEE, 0x0BFD0D0B, 0xF7F9F10A, 0xF80603F9, 0xF202F4F5, 0x0F07FA05, 0x04FA09F8, 0x08F80B04,
+0xED030E00, 0x0A04FDF8, 0xEFFC0B14, 0x05F2FFFE, 0xECF60EFB, 0xFE04FD07, 0x0AEDFB0D, 0xF20FF407,
+0xF4030A00, 0x15F1EEF2, 0xF50B0D0B, 0x02FE11FB, 0xF3FBF8F8, 0xF7F0F516, 0xF6070A04, 0xFD0C1A0D,
+0xF603F50B, 0x0D0F04FA, 0xF5F5EFF7, 0xFB130FE9, 0x0C0205F3, 0xFB050CF7, 0xF9F809FF, 0xF1120DF0,
+0x0E0503F8, 0x16FEFDF6, 0xFA0AF5F7, 0xF302F6F9, 0xFC07F4EE, 0x0A040A00, 0xFFF409EE, 0xF8F7FD18,
+0xFC01F7EA, 0x0F11F40F, 0x0DF7F708, 0x0DF60809, 0x0DFD0F08, 0x1012FA0E, 0x021615F4, 0x04FCEBFB,
+0xF7FC09FE, 0x0C080DF9, 0xF8EB05FC, 0x0708F2EE, 0xFC14F80C, 0x0C06F111, 0x0809F9F2, 0x0CF809FF,
+0x0DF50AF8, 0x05EA0E12, 0xFCF6F805, 0xF5EC0A0B, 0xF2080D10, 0x09FBED04, 0xEFF7F40E, 0xF8F610F6,
+0x09F4F1F9, 0xFFFC0E0B, 0x020AF3EC, 0xF4EA09FE, 0xF7EFF70D, 0xEFF410FC, 0x07FD0EFD, 0x0D060100,
+0x13F4FAF3, 0xFFF001FE, 0x08FC07F0, 0x0900FC05, 0xF5F8F709, 0x0CFC100C, 0xF7F7FBFC, 0xF7F608F4,
+0x05F90308, 0xECF6FF08, 0xF2F70B07, 0x04FE03F5, 0xFC02FBFE, 0x02F41301, 0xF1F6F50E, 0xF9FA00E4,
+0x0EFB0709, 0xF50800F7, 0x040AEC07, 0x130301FA, 0x0409F809, 0xF104EA0F, 0xF7F00A09, 0xF80BF704,
+0x13F800FE, 0xFAF50CF3, 0xF103090A, 0x12FAF30A, 0xF611F8F9, 0x02F1F403, 0x0A040FED, 0x0AFFFEF2,
+0x05FBF7FD, 0x0FE903F3, 0xF6EA090B, 0x120FFE07, 0xFA1406F2, 0x0EF80EFB, 0x0EFDFAFC, 0x0EFC0D0A,
+0x120805EF, 0xF70DF900, 0x0C0EE5FB, 0x0F0DF503, 0xF609000A, 0x0D03F5F9, 0x0FFB1006, 0x05F60A08,
+0xED07F8EF, 0xF90CEE0A, 0x0B16100A, 0xFD07F607, 0x0EFF0D01, 0x0CEF04EB, 0x11F5FD0B, 0x080B0CF5,
+0xFF14FEF5, 0xF1FAF413, 0xFA0100F6, 0xF0090FFC, 0xF3FB0AEF, 0xFE09FE0E, 0xF710F3F5, 0x04090C11,
+0x04EEEFF2, 0x09FC0FF1, 0xFE0BF4F9, 0x08F10AFC, 0x030AF5FE, 0x13FA0FF4, 0x07000AFE, 0x071507F5,
+0x06FD08F0, 0x0F0C08EE, 0x190E020D, 0x08EDF4EB, 0x0D0DF109, 0x0210EF00, 0xF506080A, 0x1010F7F0,
+0xFE02F7FB, 0x09F8F6F7, 0xF902FF04, 0x16E003FE, 0x12EA1A00, 0x130E0FFF, 0x0702F2F9, 0xF10BEFFC,
+0x010E04F1, 0xF6EF15F6, 0xF50A0510, 0x050DEF0D, 0xF908F4F6, 0x0F0F0BF0, 0x04F7F6FC, 0x07F9FAEE,
+0x02EE07F9, 0xF6F90105, 0xF1FFFC04, 0x0802EB0C, 0xF10E0CF3, 0x030E0508, 0x0CF60CF9, 0x08F20EF5,
+0xEFFE09EF, 0xF9FB0A06, 0x14F6F6F5, 0xF6140DFE, 0xF511F8F4, 0xF0FAEF00, 0x1103FC0B, 0xF1090B05,
+0xF4FD11F0, 0xF80BF6F1, 0x14160D0B, 0x1105070C, 0x0DEDF80B, 0x1005EE07, 0xFCEFF5E2, 0x0812F3F6,
+0xF2100BFD, 0x04FAF00B, 0xFD08F508, 0x06030EEA, 0xF4F90C05, 0xF5EE0608, 0x0CEEF40F, 0xF4F8FB06,
+0xFCF01609, 0x0407F402, 0xFDFBFDFD, 0x0BF4F806, 0xFCF701EB, 0x08EB0709, 0xECF9040B, 0xF8E9F300,
+0x1C0CEEF5, 0x0703FC08, 0xFEF40909, 0x150B0EFF, 0xF30D0B07, 0xFAF203F9, 0x11EC1EE9, 0x191AF4E5,
+0xEFDF19D9, 0xFA220619, 0xFA131A14, 0x10FB0909, 0x0C131B0D, 0x140FEB0F, 0xF41AEEEF, 0xEE0A10E5,
+0xE206F0E4, 0x13FBFFDE, 0x15132215, 0x1CF31EF8, 0x1512111A, 0x1F1E0114, 0xE8F20F29, 0xEDEF1112,
+0xE30DE215, 0x0DED2213, 0x19EBE410, 0x1917DD1E, 0xF5E818EE, 0xDDDB16EE, 0x1418F6F5, 0xE414E31A,
+0xEBE7E606, 0x10E50CE8, 0x011C1813, 0x0E15EB11, 0x22E81C1C, 0xEA1B0FE3, 0xE1E9F90D, 0x12FBF91F,
+0xEAE312E5, 0x19100D1F, 0xF10F0516, 0xEF1EEA0B, 0xF2E612E4, 0xF2FAE823, 0x0AE4F5F2, 0xF2171BD9,
+0x1817FEE9, 0xE9F209E6, 0x07D8EA03, 0x1716F0E5, 0x0DDC16ED, 0x09222113, 0x0126EDE2, 0x11F611E2,
+0xF3F21FFE, 0xFBF00E1D, 0xE5E01B0F, 0xEF0CE6EE, 0x05E0EE0D, 0x0819F7F1, 0xEAF01EEA, 0xE811ED18,
+0xE115FB16, 0x1DF8EAEB, 0x04FDEFE5, 0xE40EEFF7, 0x28EAF514, 0x181CF019, 0x0F09F711, 0x0E1A12FB,
+0xE9EB06F0, 0xE6EBEEEC, 0xDB14151E, 0xEA18FC14, 0x13050C19, 0x06EFEF0B, 0x2217E9EE, 0xECDD19E8,
+0xFC24151E, 0x1016EA0B, 0x08F8F1EB, 0xEBE9050B, 0xDDF6E815, 0x15E1F5DA, 0x10111C1F, 0x05E113E5,
+0x1925EB1B, 0x19F3F1F6, 0x11061810, 0x1EF5F725, 0xDDEE06DE, 0xE51509F6, 0xE513F1E2, 0xE9EB24F3,
+0xF1FE0BE2, 0xEC09F3EE, 0xEDEF0FE9, 0x1BEDF6F2, 0x19EEE311, 0x14EAE7F5, 0x22F0F1EB, 0xFAF412F8,
+0xEB09EAE4, 0x0EEC1505, 0x0D0AEE01, 0x0916F5EE, 0x21EAF215, 0x2003DFE5, 0xEDE9E616, 0x01F2D11B,
+0x0D13EC20, 0xF8E7100F, 0xF1F3FA07, 0x1414E5EF, 0x10E8F512, 0xDDF4FBF1, 0x1719E712, 0xFFEDF91D,
+0xECF4E7EA, 0x0BEE1711, 0x1BEC0AEB, 0xEBF0E1E7, 0x101E15D6, 0x11F211F9, 0xE8F41721, 0x0FEE161B,
+0xF118EA1B, 0xDD1C19E2, 0xEEDCE80F, 0x1AF1F516, 0x080B141B, 0x15DD1BEE, 0x100E14F1, 0xFFFB0427,
+0x18181F22, 0xDEEBFC0A, 0x07170B14, 0xF819230C, 0xFA0FE5EF, 0xDFF1ECF6, 0x0CF313E7, 0x0D17FA05,
+0x141117E8, 0x05FEE7EE, 0xF21DF516, 0xF509F1E8, 0x18291408, 0xF21110F3, 0x17E20AE5, 0x0BEEF9EF,
+0xE82220ED, 0x23F8E4EA, 0x1203F2F1, 0xF0FB0CF7, 0xED12FC09, 0xFAF808F9, 0xFE16F701, 0xFC01F20F,
+0xF00D13FF, 0xF00C0A07, 0x0BEC0AF7, 0x08F4FAF4, 0xF2F70C0F, 0xF912EF04, 0x11EFF902, 0xF2111BEF,
+0xF611FCF1, 0x170B0D07, 0x0809EF00, 0x060B110D, 0xF6FCFFF8, 0x0C13F718, 0x080C12F5, 0xFBF8F9F2,
+0xF1F40C08, 0xFE02EEFB, 0xFBFD0AFD, 0x060BF205, 0xED0BFEF9, 0x02070C16, 0xF8F4F9FB, 0x020DF801,
+0x0CF4F2F1, 0xF3EE0C12, 0x08F80E06, 0xF2ED00F2, 0x04FA09F4, 0x080DF905, 0xFBF6F1F4, 0xFBF00BF4,
+0xEBF41210, 0x02180A05, 0x0D0DE806, 0xF2F709FD, 0x0A120204, 0x09F304F8, 0xFE050AF8, 0x1C01080A,
+0xF205120F, 0xF40DF604, 0xECEDF3F9, 0x14FF0D0E, 0x020B0B0B, 0xEE06F704, 0xF00DF705, 0x1503EE07,
+0xEBE4F8F3, 0x0AF9FB03, 0x0FF0F711, 0x0BF9FC00, 0x000C0C12, 0x031108F0, 0xF8F30204, 0x02FFF600,
+0xF0F80105, 0x00F90F16, 0xFA0EF707, 0xEE08F501, 0xFF0C09F5, 0xEEF7F0F1, 0xF1F710F9, 0xF2F7EB0B,
+0xFA0E110A, 0xF7F40306, 0x0904F306, 0xEC081AFB, 0x02F6EE09, 0x0FF9F70F, 0xF6F701F6, 0xEC0E0FEB,
+0x0414FB10, 0xF9FDEFF4, 0x04070015, 0xF4FC0CEE, 0x0C1208F7, 0xFEF00BEE, 0xE803FB07, 0xEFF9F209,
+0x05FA0705, 0x00F6F7F8, 0x03EDFF11, 0x01EFEE13, 0x0DF8F7FB, 0xFB01F1F0, 0xEDF7F808, 0x06030212,
+0x0108010D, 0x06FCFA02, 0x0EF8FC07, 0x0EF00CF9, 0x07F9170D, 0x12EDFB05, 0x0707F114, 0xF3090B09,
+0xEE09030A, 0x0815F400, 0xF80409F6, 0xFC0DFBEE, 0xF910FDF8, 0xF00FEAF5, 0xF309F7F7, 0x1010F7EF,
+0xF2FB0A12, 0x02000001, 0x02020AFA, 0xF310120D, 0xFCF8F209, 0xE7060602, 0x0DF7F810, 0x111008F8,
+0x10F2F8F6, 0xEFF9EEF3, 0xF8FDF511, 0x0C0A04F3, 0x091407F8, 0xF8160EFB, 0x02F8FFF9, 0xF704EE09,
+0x0AF5F503, 0xF7F6000E, 0xF513F30A, 0xF5E5FE11, 0x08050DF8, 0x0006EEF9, 0xFA02F3EA, 0x07EA030B,
+0xFE13ECFF, 0x02F60211, 0xF6F4F4E6, 0xF20E0CF1, 0x0807F706, 0x0FF20C0B, 0xF3FDF00C, 0xF108F50F,
+0x05FE07F3, 0x08F1EBFA, 0x08FC070D, 0x0A07FE14, 0x02ED06F3, 0x0D08ED0F, 0x09F60F06, 0xF70CF2F8,
+0x1BFC0A08, 0x000F070C, 0x130E0711, 0xF8F710F4, 0x0CF50B08, 0xF0EDFD0D, 0x1105F3F1, 0x0E00080E,
+0xF80C080F, 0xF6F7F70A, 0x07041208, 0x11F5FE08, 0xF507F9F1, 0x09FFF7FD, 0xFE0AF80F, 0x041715F1,
+0xF5FBF3F5, 0x0AF6F7F8, 0x0E00FE05, 0x04E519EF, 0x0803F711, 0xF00C0CF3, 0xFEEDEF07, 0x071508F1,
+0x0DF407F5, 0x0BFAF809, 0xF7EB0D0C, 0xF1F7F406, 0x0FEEF20A, 0x00FDFC06, 0xF302EEF6, 0xF4F51004,
+0xEE0D14FB, 0x07EC0B04, 0x090614F1, 0xF909FFF7, 0x02FEFD0C, 0x070B04FA, 0xEA16EEF8, 0xF1081105,
+0x01FA07F7, 0xF60E0D0D, 0x0BFCF6F8, 0x01F40805, 0xF70A1201, 0xFBFBF7F9, 0x04E716F6, 0x09F502F6,
+0xFBE8090D, 0xFD12000A, 0x03F4F209, 0x100CFB0F, 0x0405F40B, 0x0308EE11, 0x07110907, 0xF20901FB,
+0x0BFAFE0A, 0x0EFEF80D, 0xFCF5F2F2, 0xFAF8EAEC, 0xF211FC0C, 0xF8F1F111, 0x05F709FE, 0x0903F80B,
+0xF9030B0B, 0xF919F5F2, 0xF608FFFA, 0x09F50300, 0xF4F91314, 0x0A120AF6, 0xE5FCF1F0, 0x041EECFA,
+0xF2FDFFF1, 0x0DFD05EF, 0xF40C0912, 0xF9090106, 0x0EF6071D, 0xFE140DF1, 0xF9EE0203, 0x04110EED,
+0x06F2E903, 0xFD04F8F9, 0x0A000C0D, 0x08FAF509, 0xF4EF0E1B, 0x10F9F9F7, 0x06EE0809, 0x140E0F12,
+0x04F50FFD, 0xF0EA0D08, 0x0B0D00FF, 0x17F80F0D, 0x17070E06, 0x01F8F7FB, 0x14F80312, 0xF4FEF506,
+0x0A0AF8ED, 0x0B1109F9, 0x0B0D0EF8, 0x09F0ECE8, 0x00F2140C, 0xFD090D0E, 0xEA16F703, 0x03F6F80A,
+0xF30910FD, 0xF4F3F514, 0xF302ECF5, 0xF3FF0A0A, 0x0CEFFAFA, 0xF60B0D08, 0xF104F7F5, 0xF90AF5F4,
+0xFC0102F7, 0xFAFA01FE, 0xF40DF3F2, 0x05FC0CFF, 0x13FBF706, 0xEBF30AF7, 0xF6F20CF6, 0xF90E1EEB,
+0xF6EE0BF5, 0xF11303F7, 0xFA0D0709, 0xFAF8080C, 0x1FF80A07, 0xF5F9EE0F, 0x09F7FD08, 0x0B0A1503,
+0xF7FA000F, 0x01FAF0F5, 0xEAEEFE05, 0xF8FBFC10, 0x100B0600, 0x13050501, 0xFA15F216, 0xFD0F13F4,
+0x030B04F8, 0xFA0FF1FD, 0x12F80BF4, 0x0A080204, 0x0701FA03, 0x17EEFAF7
+
+basegraph=
+1
+
+z_c=
+176
+
+n_cb=
+11616
+
+q_m=
+2
+
+n_filler=
+8
+
+e=
+4640
+
+rv_index=
+3
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+3
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE, RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v11835.data b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
new file mode 100644
index 0000000..84a04e1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v11835.data
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x817F7F81, 0x817F817F, 0x7F818181, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F6B7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81817F7F, 0x7F818192, 0x7F81817F, 0x817F7F7F,
+0x8181
+
+output0 =
+0x44FB08C0, 0x661CCC
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+iter_max=
+20
+
+expected_iter_count=
+4
+
+op_flags=
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
new file mode 100644
index 0000000..eca4131
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342.data
@@ -0,0 +1,745 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBCBFA5D, 0x7C7B
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
new file mode 100644
index 0000000..f30726e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v2342_drop.data
@@ -0,0 +1,745 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x817F8181,
+0x817F8181, 0x817F8181, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F81817F, 0x7F818181, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x817F8181, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F7F,
+0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x81818181, 0x817F7F7F, 0x81817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F,
+0x81817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F818181,
+0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x8181817F, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F817F81,
+0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F,
+0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F818181,
+0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x817F817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F7F, 0x817F817F,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81817F7F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81818181,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x817F7F81,
+0x81818181, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F7F,
+0x7F817F81, 0x817F817F, 0x8181817F, 0x81818181, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x81818181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F81817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F81,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x817F8181, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x817F817F,
+0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x81817F81, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x817F817F, 0x81817F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81,
+0x817F7F7F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F,
+0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F81817F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x817F7F81, 0x81817F81,
+0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x81818181, 0x7F817F81,
+0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F81817F,
+0x7F818181, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x7F817F7F,
+0x8181817F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x7F7F7F81, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181,
+0x817F817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F817F, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x7F818181,
+0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81,
+0x817F8181, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F8181, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x817F8181,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x7F81817F, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F817F,
+0x81817F7F, 0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F81817F,
+0x7F7F8181, 0x81818181, 0x817F8181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x8181817F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F7F817F,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x817F7F7F,
+0x7F7F7F7F, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x7F817F81,
+0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81817F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81817F7F,
+0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F81, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x8181817F, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F818181, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x81817F7F, 0x7F818181, 0x817F8181, 0x81817F7F, 0x81818181, 0x81818181, 0x817F817F,
+0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x81818181, 0x7F818181,
+0x7F818181, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F7F7F, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F81817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x817F817F,
+0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x7F7F817F,
+0x817F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F7F7F,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F817F,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181,
+0x817F7F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x81818181,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x7F817F81,
+0x7F7F7F7F, 0x7F818181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F7F817F,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x817F8181, 0x817F817F, 0x81818181, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81817F81,
+0x7F818181, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F8181, 0x7F7F7F81, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x81818181,
+0x817F7F81, 0x817F8181, 0x817F7F81, 0x8181817F, 0x7F817F81, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x7F81817F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x81818181,
+0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x81818181, 0x817F8181,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F7F817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x8181817F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x8181817F,
+0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81,
+0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x7F818181,
+0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x817F8181, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F,
+0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x81817F7F, 0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x7F818181, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x7F7F7F7F,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x8181817F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F817F7F,
+0x817F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F7F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x817F7F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F81817F, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x81817F7F,
+0x81818181, 0x81818181, 0x817F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x7F817F81, 0x81818181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x817F8181, 0x817F8181,
+0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F817F81,
+0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F81817F,
+0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x817F8181, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F7F817F,
+0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x8181817F,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81,
+0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F817F81, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x8181817F, 0x817F8181, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F,
+0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F818181, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x817F817F,
+0x8181817F, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x817F817F,
+0x7F81817F, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x7F818181, 0x7F818181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181,
+0x817F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x7F81817F, 0x7F818181, 0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x7F817F81, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x81818181, 0x8181817F, 0x8181817F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x81818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x81818181,
+0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x817F7F81, 0x817F817F, 0x8181817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x817F7F81,
+0x7F818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F,
+0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F81817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x817F8181, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F7F81, 0x8181817F,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F8181, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F7F8181,
+0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F,
+0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F81,
+0x7F81817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F817F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x81817F7F, 0x81817F7F, 0x817F8181,
+0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81818181,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F817F, 0x7F817F7F,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x8181817F,
+0x8181817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81,
+0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x81818181, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x7F7F8181,
+0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x81818181, 0x817F7F81,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x8181817F, 0x817F8181, 0x81818181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x81818181, 0x7F7F8181,
+0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F7F,
+0x81817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F,
+0x7F7F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81,
+0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x817F8181, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x8181817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81,
+0x8181817F, 0x81818181, 0x7F817F81, 0x817F7F81, 0x81818181, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x7F7F817F, 0x817F7F7F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x81818181,
+0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F818181,
+0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F8181,
+0x7F817F7F, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F81,
+0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81818181, 0x7F81817F,
+0x8181817F, 0x7F81817F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x817F7F81,
+0x81817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x8181817F,
+0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F818181, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181,
+0x7F817F81, 0x81817F7F, 0x7F817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F81817F,
+0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x817F817F, 0x8181817F,
+0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F818181, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x8181817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x817F7F7F,
+0x7F7F7F81, 0x8181817F, 0x817F8181, 0x7F818181, 0x81818181, 0x81818181, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x817F817F,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x817F7F81, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x817F8181,
+0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81818181, 0x81818181, 0x81817F81, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x8181817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F81, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x8181817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x81818181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F818181, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x817F8181, 0x8181817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F8181,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F817F, 0x81817F7F, 0x7F817F81,
+0x7F7F817F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F81817F, 0x7F818181, 0x81817F7F,
+0x817F7F81, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81817F81, 0x817F8181, 0x81818181,
+0x81818181, 0x817F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F81817F, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F,
+0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F817F7F,
+0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81,
+0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F81,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x8181817F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F,
+0x7F7F817F, 0x81817F81, 0x817F7F81, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F81817F,
+0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F817F, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F, 0x7F81817F,
+0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F7F7F, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x81818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F,
+0x81818181, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F7F,
+0x81817F81, 0x817F7F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x81818181,
+0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x8181817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x81817F7F,
+0x8181817F, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x81817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F81817F,
+0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F,
+0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F817F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181,
+0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F817F, 0x7F81817F,
+0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x81818181, 0x817F817F, 0x8181817F,
+0x817F8181, 0x817F7F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81,
+0x817F8181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x817F7F81,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F81817F,
+0x81817F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x81818181, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F817F81,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x81817F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F,
+0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F7F81, 0x7F7F7F81, 0x7F81817F, 0x81818181, 0x81818181,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x81817F7F,
+0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x817F817F, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F7F, 0x81817F7F,
+0x81818181, 0x8181817F, 0x81817F81, 0x7F818181, 0x817F8181, 0x7F818181, 0x817F8181, 0x81818181,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x817F817F,
+0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x81818181, 0x7F81817F, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81,
+0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x81817F7F, 0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F817F81,
+0x8181817F, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x7F817F81,
+0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F81817F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81,
+0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x817F8181, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F818181, 0x817F8181, 0x817F8181,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F81817F, 0x81818181, 0x7F7F7F7F,
+0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x81818181, 0x817F7F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81,
+0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181,
+0x81818181, 0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x8181817F, 0x81818181,
+0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F817F81, 0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F7F,
+0x7F817F81, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x817F7F81,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x8181817F, 0x7F81817F, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F81,
+0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x817F8181,
+0x81818181, 0x817F7F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F817F,
+0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x81817F7F,
+0x7F7F817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81,
+0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F817F, 0x817F8181, 0x81818181,
+0x817F8181, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x817F7F81, 0x81817F81,
+0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F7F817F, 0x81817F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F817F, 0x7F818181,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F7F, 0x81818181, 0x7F818181,
+0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F8181, 0x7F818181, 0x817F7F81, 0x7F818181, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F818181, 0x7F81817F, 0x7F7F8181,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F81,
+0x817F7F81, 0x7F818181, 0x81818181, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x81817F81, 0x7F818181,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F7F7F, 0x8181817F, 0x81818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x81817F7F, 0x81817F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F8181,
+0x7F817F81, 0x817F8181, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x8181817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x817F7F81
+
+output0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK, RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v7813.data b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
new file mode 100644
index 0000000..c656fd3
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v7813.data
@@ -0,0 +1,48 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F817F81, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x8181817F, 0x8181817F
+
+output0 =
+0x8C4DEB9F, 0x52
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8480.data b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
new file mode 100644
index 0000000..ddebf7b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8480.data
@@ -0,0 +1,74 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x81818181,
+0x817F8181, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81,
+0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F81817F,
+0x7F818181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x7F7F817F,
+0x8181817F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F7F8181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F7F8181, 0x8181817F, 0x7F818181, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F81817F,
+0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F817F,
+0x81817F7F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F,
+0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81817F81,
+0x7F7F817F, 0x8181817F, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F8181, 0x817F817F,
+0x7F817F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F817F81
+
+output0 =
+0x76332859, 0x417B1254, 0xEC8A8CFE, 0xE7EFCD06, 0x43C5BDA2, 0x2EACD776, 0x6CD515AC, 0x6D6E04AC,
+0xBC2D9F85, 0xD3643553, 0xD0C8DF8E, 0x235B434A, 0xD7AB7643, 0xA4D9C420, 0x372FA858, 0xF813CE10,
+0xE0C238F6, 0x07853FD4, 0xE04E40F2, 0x0EE765A9, 0x6EEAFCBC, 0xA7059C68, 0xFBBC
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+0
+
+e =
+804
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+8
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v8568.data b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
new file mode 100644
index 0000000..0b95e4e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v8568.data
@@ -0,0 +1,255 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181,
+0x7F818181, 0x817F817F, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x7F7F7F81,
+0x7F7F817F, 0x817F817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F81817F,
+0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F, 0x817F817F,
+0x81818181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x81818181,
+0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F81817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F,
+0x817F7F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x817F817F, 0x7F818181,
+0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x7F818181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181,
+0x817F817F, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x7F81817F, 0x817F7F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F817F, 0x81818181,
+0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x81817F81,
+0x7F818181, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x81817F81,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81817F81, 0x81818181, 0x7F818181, 0x81818181,
+0x7F81817F, 0x8181817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x817F817F, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x81818181,
+0x8181817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F,
+0x7F817F81, 0x81818181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x817F7F7F, 0x81818181,
+0x7F818181, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x81818181, 0x8181817F,
+0x817F7F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x817F7F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x81817F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F818181, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F817F81, 0x8181817F,
+0x817F8181, 0x7F7F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181,
+0x817F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81818181,
+0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F8181, 0x7F7F7F81, 0x7F81817F,
+0x7F818181, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F818181,
+0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x817F817F, 0x81818181, 0x817F7F81, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x81817F7F, 0x8181817F, 0x817F8181,
+0x817F817F, 0x81818181, 0x7F7F817F, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x81817F81, 0x8181817F,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x7F818181, 0x81817F81,
+0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F,
+0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F818181, 0x7F817F81, 0x81818181, 0x81817F81, 0x7F817F81,
+0x7F7F7F81, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F,
+0x81817F81, 0x81817F81, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x8181817F, 0x7F818181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x8181817F,
+0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x7F7F817F,
+0x817F8181, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x81817F7F,
+0x8181817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x81818181, 0x8181817F, 0x817F8181, 0x817F8181,
+0x7F818181, 0x8181817F, 0x817F817F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F,
+0x7F817F81, 0x7F81817F, 0x7F817F81, 0x817F7F7F, 0x81817F81, 0x81818181, 0x817F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81818181,
+0x817F8181, 0x81817F81, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x81817F81,
+0x7F817F7F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x817F817F, 0x7F818181, 0x81817F7F,
+0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x7F818181, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x81818181, 0x81817F7F,
+0x81817F7F, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x817F817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x8181817F, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x81818181, 0x81817F7F,
+0x8181817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x81817F81,
+0x7F7F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F,
+0x81818181, 0x817F817F, 0x817F7F81, 0x81817F81, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F817F7F,
+0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x817F7F7F, 0x8181817F, 0x817F7F81,
+0x81817F7F, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F7F7F, 0x7F81817F, 0x7F817F81,
+0x7F817F81, 0x817F817F, 0x81818181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F818181,
+0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181,
+0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F817F, 0x81817F81, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x817F7F7F, 0x7F7F8181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F81817F, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F81817F,
+0x817F7F81, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x81817F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F7F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F817F81, 0x7F7F8181, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F7F81,
+0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181,
+0x817F8181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x7F7F817F,
+0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F, 0x7F817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F7F7F7F,
+0x817F8181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x817F7F81, 0x817F817F,
+0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x7F817F81, 0x81817F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F,
+0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F81, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F,
+0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F7F,
+0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x7F818181, 0x81817F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x817F7F81, 0x817F7F7F, 0x81817F7F,
+0x7F818181, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81818181,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F,
+0x817F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F,
+0x81818181, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x817F7F81,
+0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x7F818181, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x817F817F,
+0x8181817F, 0x817F7F7F, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81,
+0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F817F81, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x81817F81, 0x817F7F81, 0x817F7F81, 0x81817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81,
+0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x81818181, 0x817F817F,
+0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181,
+0x7F817F81, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F7F7F, 0x817F7F7F,
+0x7F817F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F818181,
+0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F7F, 0x7F81817F, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81, 0x817F7F7F,
+0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F818181,
+0x81817F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x7F818181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x81818181,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F81, 0x8181817F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x81818181,
+0x817F7F81, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F7F81
+
+output0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+6
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_dec_v9503.data b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
new file mode 100644
index 0000000..e645602
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_dec_v9503.data
@@ -0,0 +1,1215 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_DEC
+
+input0 =
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F817F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x817F817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F81, 0x81817F81, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x817F817F, 0x81817F81,
+0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F817F, 0x7F7F817F, 0x8181817F, 0x7F817F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x81817F81, 0x817F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F81817F,
+0x81818181, 0x817F8181, 0x81818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F81,
+0x817F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x8181817F,
+0x81817F81, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x81818181, 0x81817F81,
+0x81817F7F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x81817F7F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x8181817F,
+0x817F817F, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181,
+0x7F817F7F, 0x81818181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x817F8181,
+0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F8181, 0x7F817F7F,
+0x7F7F817F, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F7F7F81, 0x7F817F81,
+0x817F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F7F7F81, 0x7F817F7F,
+0x7F81817F, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F7F7F,
+0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F81817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F,
+0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F81,
+0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81, 0x81818181, 0x817F8181, 0x8181817F,
+0x7F7F8181, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81,
+0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x7F818181, 0x7F818181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F,
+0x817F817F, 0x81817F7F, 0x8181817F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x817F8181,
+0x81817F7F, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x817F7F81,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x8181817F, 0x7F817F81, 0x817F7F81,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x8181817F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F7F, 0x81818181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x81818181, 0x81818181,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F7F81, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F7F817F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x817F7F7F,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F8181,
+0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x817F7F81,
+0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x7F817F7F,
+0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81,
+0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F7F, 0x81817F81, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81,
+0x8181817F, 0x817F817F, 0x7F817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x81818181, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x7F81817F,
+0x81818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x7F7F8181, 0x817F7F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x81818181, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x81818181,
+0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x81817F81,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x8181817F, 0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x81818181,
+0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x7F81817F, 0x817F817F,
+0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181,
+0x7F81817F, 0x81817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x817F8181, 0x7F817F81,
+0x8181817F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F,
+0x817F817F, 0x7F7F8181, 0x81817F7F, 0x817F817F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F81,
+0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x8181817F,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x81817F81,
+0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x817F7F81, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F818181,
+0x7F818181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F818181,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81817F81,
+0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F817F81,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F817F81, 0x817F817F,
+0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F817F7F,
+0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x7F7F8181, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x81817F81, 0x8181817F,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x8181817F, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F81817F, 0x817F7F81, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81,
+0x7F7F7F81, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x8181817F, 0x7F818181, 0x81818181,
+0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x81817F81,
+0x817F817F, 0x7F817F81, 0x7F817F7F, 0x81817F7F, 0x81818181, 0x8181817F, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x817F8181, 0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x81817F7F, 0x8181817F,
+0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x817F817F, 0x817F817F, 0x817F8181,
+0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181,
+0x7F817F7F, 0x817F817F, 0x7F7F8181, 0x817F7F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F8181, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x8181817F,
+0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81,
+0x817F8181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F818181, 0x7F817F7F, 0x817F817F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x7F818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F81817F,
+0x7F7F8181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181,
+0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x817F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F817F81,
+0x7F818181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x817F817F, 0x817F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F817F,
+0x7F817F81, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x7F818181, 0x817F8181,
+0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x7F818181, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F817F7F, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F,
+0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181,
+0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x7F817F81,
+0x81817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F818181,
+0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x817F817F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81817F81, 0x81818181, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F817F81, 0x7F817F81,
+0x81818181, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81,
+0x817F7F7F, 0x817F7F81, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81,
+0x817F817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x817F8181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x81817F7F,
+0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x817F7F7F, 0x817F8181, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x8181817F, 0x7F7F7F81,
+0x81817F81, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x817F817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F7F8181,
+0x7F818181, 0x8181817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F7F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F8181, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x81817F7F, 0x8181817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F7F817F,
+0x81818181, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F7F817F,
+0x81817F7F, 0x7F818181, 0x7F818181, 0x8181817F, 0x81818181, 0x7F818181, 0x817F8181, 0x7F7F7F81,
+0x7F817F81, 0x817F817F, 0x81817F81, 0x7F7F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x817F7F7F,
+0x7F7F8181, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F8181, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F81817F, 0x81818181, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F7F7F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F,
+0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x817F817F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F,
+0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F817F,
+0x817F8181, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x7F7F8181,
+0x817F8181, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F818181, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F,
+0x817F8181, 0x7F81817F, 0x7F817F81, 0x817F817F, 0x8181817F, 0x7F817F81, 0x81818181, 0x81818181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F818181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x81818181, 0x817F7F7F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x817F7F7F, 0x7F7F817F,
+0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F81, 0x81818181, 0x7F817F81, 0x817F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F8181, 0x7F817F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x81817F81, 0x8181817F,
+0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F817F, 0x7F817F81, 0x817F7F81,
+0x81817F7F, 0x7F818181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F81817F, 0x817F817F,
+0x81818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x817F8181, 0x81818181, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F81, 0x7F7F817F,
+0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F7F, 0x7F818181,
+0x817F817F, 0x8181817F, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F,
+0x7F817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F817F, 0x817F7F7F,
+0x817F8181, 0x8181817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F817F, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81817F81,
+0x817F8181, 0x817F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x81817F81, 0x7F817F7F, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F, 0x817F7F81, 0x81817F81,
+0x81817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x7F818181,
+0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x7F81817F, 0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x817F817F,
+0x81818181, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F7F7F81, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F7F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x7F7F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x817F7F7F,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x7F81817F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x81817F81,
+0x7F817F81, 0x81817F81, 0x7F817F81, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F81817F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x7F7F8181, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F7F,
+0x7F7F7F81, 0x81818181, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x8181817F, 0x817F7F81, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x817F7F81, 0x81818181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F,
+0x81817F7F, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x7F7F817F, 0x8181817F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F81817F, 0x81817F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F81, 0x7F7F8181, 0x7F817F81, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F817F7F, 0x7F817F7F, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181,
+0x81818181, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x817F817F, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F7F7F81,
+0x817F817F, 0x7F81817F, 0x817F7F81, 0x8181817F, 0x817F7F81, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F7F, 0x81817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x8181817F, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x817F7F81, 0x7F7F7F81, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81818181, 0x817F8181,
+0x7F7F817F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F,
+0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x817F7F7F,
+0x817F817F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x81817F7F, 0x7F81817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F,
+0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x817F8181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x7F817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x817F817F,
+0x81817F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F8181,
+0x817F817F, 0x817F7F81, 0x8181817F, 0x7F818181, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F817F7F,
+0x81817F7F, 0x817F8181, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F818181, 0x7F81817F, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x81818181,
+0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F7F817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F7F81,
+0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181,
+0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x81818181,
+0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181,
+0x81817F7F, 0x7F817F81, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x81818181, 0x817F8181, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x81818181,
+0x7F81817F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81, 0x7F817F81,
+0x7F817F81, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F81817F,
+0x817F817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x81817F7F, 0x81817F7F, 0x8181817F, 0x817F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x81818181, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F817F,
+0x817F7F7F, 0x7F7F8181, 0x7F817F81, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x817F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F817F,
+0x7F7F8181, 0x7F817F81, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x8181817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181, 0x81818181, 0x7F81817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F8181, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x8181817F,
+0x7F7F7F81, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x7F81817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x81818181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F81, 0x81817F7F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F818181, 0x7F817F7F,
+0x81817F81, 0x817F7F81, 0x7F81817F, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x817F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x7F81817F,
+0x817F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x81817F7F,
+0x8181817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x817F817F, 0x81817F81, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F817F, 0x81818181, 0x81817F81, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F, 0x7F817F81, 0x7F7F7F81, 0x817F8181,
+0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81818181,
+0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F7F8181, 0x817F7F7F,
+0x7F817F81, 0x81818181, 0x81818181, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81817F81,
+0x817F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x7F818181,
+0x81817F81, 0x817F7F81, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x817F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x7F7F817F, 0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x8181817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x8181817F,
+0x817F8181, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x7F7F8181, 0x7F817F81,
+0x7F7F8181, 0x8181817F, 0x81817F7F, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F,
+0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F,
+0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F7F, 0x817F7F81, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F7F8181,
+0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F81817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x817F8181, 0x7F7F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F817F81,
+0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x8181817F, 0x817F817F, 0x7F818181, 0x7F81817F, 0x81817F81, 0x7F7F817F, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x817F817F, 0x8181817F, 0x7F818181, 0x8181817F, 0x817F8181, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F817F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x81817F7F,
+0x7F817F7F, 0x817F7F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x817F817F,
+0x7F7F817F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x817F7F7F,
+0x8181817F, 0x7F818181, 0x81818181, 0x817F817F, 0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x7F7F8181, 0x817F7F81, 0x7F817F81, 0x81817F81, 0x817F8181,
+0x7F7F7F7F, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F817F, 0x817F8181,
+0x81817F81, 0x7F7F817F, 0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x817F817F, 0x817F7F81,
+0x81818181, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x817F7F7F,
+0x81817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x7F818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x81817F81, 0x81818181,
+0x7F817F81, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x817F817F, 0x7F818181, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x81818181,
+0x817F817F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x81817F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x81817F81,
+0x817F7F7F, 0x81818181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x817F817F, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F7F8181,
+0x7F817F81, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F81,
+0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x8181817F,
+0x7F7F7F81, 0x817F8181, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181,
+0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x817F817F, 0x7F7F817F, 0x7F817F81,
+0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x81817F81,
+0x7F818181, 0x7F818181, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x81818181, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x817F7F81, 0x817F8181,
+0x7F7F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x7F818181, 0x7F7F7F81,
+0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F818181,
+0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F81,
+0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F7F7F, 0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x7F817F7F,
+0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x7F817F81,
+0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x7F818181, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F817F, 0x7F817F7F, 0x817F7F7F,
+0x81818181, 0x7F817F7F, 0x81817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x7F7F8181,
+0x7F818181, 0x7F817F81, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F7F, 0x7F818181, 0x817F7F7F,
+0x81818181, 0x817F7F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x81817F81,
+0x817F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x81818181,
+0x7F7F7F81, 0x8181817F, 0x81818181, 0x81817F7F, 0x7F7F7F81, 0x81818181, 0x81817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x8181817F, 0x817F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F817F7F, 0x817F8181,
+0x817F8181, 0x7F7F8181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x81817F81, 0x81817F81, 0x7F817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F817F, 0x7F7F817F,
+0x8181817F, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x817F817F, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x7F817F81, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x81818181,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181,
+0x817F817F, 0x8181817F, 0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x817F817F,
+0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81,
+0x817F7F81, 0x817F817F, 0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F81817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x81817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x81818181, 0x8181817F, 0x7F817F7F, 0x81818181, 0x81818181, 0x81817F7F, 0x817F8181, 0x817F7F7F,
+0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x817F8181, 0x81818181, 0x81817F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F817F, 0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x81817F7F,
+0x817F817F, 0x81818181, 0x817F8181, 0x8181817F, 0x7F7F817F, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181,
+0x8181817F, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x81817F81, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F81,
+0x81818181, 0x7F818181, 0x8181817F, 0x7F817F81, 0x817F8181, 0x8181817F, 0x7F817F81, 0x81817F7F,
+0x81817F7F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x8181817F, 0x7F7F8181, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x8181817F,
+0x7F81817F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F817F, 0x7F7F8181, 0x817F8181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x81818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x8181817F, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x81818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F7F,
+0x817F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x81818181, 0x7F7F817F, 0x8181817F, 0x7F7F817F,
+0x7F818181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x817F817F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x81818181, 0x817F8181, 0x81817F81, 0x7F7F7F81,
+0x81818181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x817F8181,
+0x7F7F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F81817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x7F7F7F81,
+0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x817F7F81,
+0x81818181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81818181, 0x7F7F817F, 0x81818181, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F81, 0x817F8181, 0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F81, 0x817F817F, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x817F817F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x81818181, 0x817F8181, 0x81817F7F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F7F7F7F, 0x81817F7F, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x81817F81, 0x8181817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x7F817F81, 0x81817F81, 0x817F7F7F, 0x7F7F8181,
+0x81817F81, 0x817F817F, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x7F7F817F,
+0x7F81817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81, 0x81818181,
+0x817F7F7F, 0x81817F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x81817F7F,
+0x81817F81, 0x81817F7F, 0x7F817F81, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x81817F7F, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x7F817F81, 0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F81817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x7F817F81, 0x81817F81,
+0x7F81817F, 0x81817F7F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x81818181, 0x7F81817F, 0x81818181,
+0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x81818181, 0x817F7F81,
+0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x817F7F81, 0x817F7F81, 0x817F7F81, 0x817F817F,
+0x817F817F, 0x7F817F81, 0x81818181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F81, 0x81818181,
+0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F81, 0x81818181, 0x7F7F7F81,
+0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F817F7F, 0x7F818181, 0x7F7F7F81, 0x817F8181, 0x81818181,
+0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x7F818181,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F81, 0x81817F81,
+0x7F817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x7F7F8181, 0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x8181817F, 0x7F7F817F,
+0x817F817F, 0x7F81817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x7F7F7F81, 0x7F818181,
+0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x81817F81, 0x81818181, 0x8181817F,
+0x817F8181, 0x7F818181, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F8181, 0x817F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x8181817F, 0x7F7F817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x81817F81,
+0x7F81817F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F,
+0x7F817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F81817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x817F7F81, 0x817F817F, 0x817F7F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F817F,
+0x7F817F7F, 0x81818181, 0x817F8181, 0x817F7F81, 0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x7F7F7F81, 0x817F817F, 0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x817F8181,
+0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x7F7F7F7F, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F818181, 0x7F7F8181, 0x81818181, 0x81817F81, 0x7F81817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x8181817F, 0x8181817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F,
+0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x817F7F81, 0x7F7F817F, 0x7F7F7F7F,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81818181, 0x817F7F81, 0x81817F7F, 0x817F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F81, 0x7F817F81, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F817F7F, 0x81817F7F,
+0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x817F817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F818181,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x81817F81, 0x817F7F7F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x8181817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F7F81,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x81818181, 0x81818181,
+0x81817F81, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x81817F81, 0x81817F81, 0x7F7F7F81,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x7F81817F,
+0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F81, 0x81818181, 0x81818181,
+0x817F8181, 0x8181817F, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F81817F,
+0x7F818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x81818181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x81817F7F, 0x817F7F81, 0x817F817F,
+0x7F81817F, 0x817F817F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x81817F81, 0x81817F7F, 0x817F7F81,
+0x81817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F817F81, 0x817F8181,
+0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x81818181, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x81818181, 0x81817F7F,
+0x817F7F81, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x817F817F, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x817F7F7F, 0x7F7F817F, 0x817F8181,
+0x8181817F, 0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x7F817F81,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x817F7F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F817F, 0x81818181, 0x817F817F, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181,
+0x7F818181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x817F817F,
+0x7F818181, 0x817F817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F8181, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F81, 0x7F817F81, 0x817F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F7F, 0x7F81817F, 0x81817F7F,
+0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x81818181,
+0x817F7F81, 0x8181817F, 0x7F818181, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81818181, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x81817F7F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x81818181, 0x81818181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181, 0x7F818181, 0x7F81817F,
+0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F817F, 0x7F818181,
+0x7F7F7F7F, 0x7F7F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x7F81817F,
+0x81817F81, 0x7F818181, 0x7F818181, 0x81818181, 0x81818181, 0x817F817F, 0x8181817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F7F,
+0x817F817F, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F81, 0x81818181,
+0x7F817F81, 0x817F817F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x8181817F, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F81817F, 0x817F8181, 0x7F818181, 0x817F817F, 0x81817F81, 0x8181817F, 0x8181817F,
+0x817F817F, 0x81818181, 0x817F817F, 0x81817F81, 0x7F817F81, 0x817F7F7F, 0x7F818181, 0x817F8181,
+0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F817F81, 0x81817F7F, 0x817F8181,
+0x817F817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x817F7F81, 0x81818181, 0x7F81817F, 0x817F8181,
+0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x7F7F7F81,
+0x7F817F7F, 0x817F7F81, 0x81818181, 0x81817F81, 0x8181817F, 0x7F7F817F, 0x7F81817F, 0x817F817F,
+0x7F81817F, 0x817F7F81, 0x817F8181, 0x7F7F8181, 0x81817F7F, 0x7F817F81, 0x81818181, 0x817F8181,
+0x7F818181, 0x817F8181, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x81817F7F,
+0x8181817F, 0x7F7F8181, 0x7F7F7F81, 0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x7F7F7F81, 0x8181817F,
+0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x81817F7F, 0x817F8181, 0x7F7F8181,
+0x817F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81,
+0x8181817F, 0x817F7F7F, 0x7F7F817F, 0x7F7F817F, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x817F8181, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F7F817F, 0x81817F7F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x7F7F7F81, 0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x7F818181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F817F81,
+0x7F7F7F7F, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F817F81, 0x81818181, 0x7F817F7F, 0x817F7F7F, 0x8181817F, 0x81817F81, 0x7F7F817F,
+0x7F7F817F, 0x817F7F7F, 0x817F7F81, 0x81817F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F8181, 0x7F7F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F817F, 0x7F81817F, 0x7F817F7F,
+0x81818181, 0x817F8181, 0x8181817F, 0x817F8181, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x817F8181,
+0x817F8181, 0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F817F, 0x81817F81,
+0x81817F7F, 0x8181817F, 0x7F818181, 0x817F8181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F81,
+0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F81817F, 0x817F8181, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x817F817F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x8181817F, 0x7F81817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x817F817F, 0x81817F81, 0x81817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x7F7F817F, 0x81818181, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x817F7F7F,
+0x817F7F7F, 0x81817F81, 0x81818181, 0x81818181, 0x81818181, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F7F, 0x81817F81,
+0x81818181, 0x7F818181, 0x817F8181, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81,
+0x81818181, 0x7F817F81, 0x81818181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x81818181, 0x8181817F, 0x7F817F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181,
+0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F8181, 0x81818181, 0x7F817F81, 0x8181817F,
+0x817F7F7F, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x8181817F, 0x7F818181, 0x8181817F, 0x81818181, 0x81817F81, 0x7F818181, 0x7F817F7F, 0x8181817F,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x81818181, 0x7F7F817F, 0x7F818181, 0x817F817F,
+0x817F7F81, 0x7F81817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x81818181, 0x7F81817F, 0x817F7F81, 0x7F7F8181, 0x817F817F, 0x81818181, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x7F7F8181, 0x7F818181, 0x7F818181, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x817F8181, 0x817F817F,
+0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x7F818181, 0x7F81817F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x817F7F7F,
+0x7F81817F, 0x7F818181, 0x7F818181, 0x7F7F817F, 0x81818181, 0x81817F81, 0x817F7F7F, 0x7F817F81,
+0x817F7F7F, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x81817F81, 0x7F7F7F81, 0x817F8181,
+0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x7F817F81, 0x817F8181, 0x817F817F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x8181817F, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x817F7F7F,
+0x7F81817F, 0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F818181,
+0x7F818181, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x7F818181,
+0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F817F7F, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x817F817F,
+0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F81, 0x7F817F81, 0x817F7F7F,
+0x8181817F, 0x7F7F7F81, 0x7F817F81, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x81817F7F, 0x8181817F, 0x7F817F81,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x81817F81, 0x7F7F817F, 0x7F81817F, 0x7F7F7F81,
+0x8181817F, 0x7F818181, 0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F817F, 0x7F7F8181, 0x7F818181, 0x7F81817F,
+0x7F818181, 0x7F7F8181, 0x817F817F, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x7F7F7F81, 0x7F818181,
+0x7F7F8181, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x817F8181,
+0x81817F81, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F,
+0x817F7F7F, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F8181, 0x7F817F81,
+0x7F817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x7F818181, 0x817F7F7F, 0x817F817F, 0x7F817F81, 0x817F8181,
+0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F8181, 0x8181817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x817F8181,
+0x7F7F7F81, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F8181, 0x817F7F81, 0x7F817F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F7F, 0x7F7F817F,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81,
+0x817F817F, 0x7F817F81, 0x7F818181, 0x8181817F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x817F8181, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x81817F7F, 0x7F818181, 0x817F817F,
+0x7F7F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F7F7F81, 0x7F817F81, 0x7F818181, 0x817F817F,
+0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x817F8181, 0x817F8181, 0x81818181,
+0x817F7F81, 0x817F7F7F, 0x81817F7F, 0x81818181, 0x817F7F81, 0x817F8181, 0x8181817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x81818181, 0x817F8181, 0x7F7F7F81,
+0x817F817F, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F7F817F, 0x7F817F7F,
+0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x81818181,
+0x81817F81, 0x81817F81, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F8181, 0x81818181, 0x8181817F,
+0x7F81817F, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x817F8181, 0x81817F81, 0x81818181, 0x817F7F7F,
+0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x81817F81,
+0x817F7F7F, 0x8181817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x8181817F,
+0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x817F817F,
+0x8181817F, 0x7F817F7F, 0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x8181817F, 0x81818181,
+0x7F7F7F81, 0x817F8181, 0x7F817F7F, 0x81818181, 0x7F818181, 0x81817F81, 0x817F7F7F, 0x817F8181,
+0x7F818181, 0x7F818181, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x817F7F7F, 0x8181817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F817F81, 0x81818181, 0x817F7F7F, 0x817F8181, 0x81818181,
+0x7F817F7F, 0x7F817F81, 0x817F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81818181, 0x7F817F7F,
+0x817F817F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81817F81, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x817F7F81, 0x7F81817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x81817F7F, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F81, 0x7F817F81, 0x81818181, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x7F818181, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F,
+0x81817F81, 0x817F8181, 0x81817F81, 0x7F7F7F7F, 0x7F818181, 0x8181817F, 0x817F817F, 0x7F7F7F7F,
+0x81817F81, 0x7F7F817F, 0x817F7F81, 0x8181817F, 0x7F7F7F81, 0x81818181, 0x7F7F8181, 0x7F817F7F,
+0x81817F81, 0x8181817F, 0x7F817F81, 0x7F817F81, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x81817F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F8181, 0x7F817F7F,
+0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x7F7F817F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F817F7F,
+0x7F81817F, 0x7F7F8181, 0x8181817F, 0x81818181, 0x817F817F, 0x7F7F817F, 0x817F7F7F, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81818181,
+0x81817F81, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x8181817F,
+0x7F7F8181, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F,
+0x817F8181, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F7F7F7F,
+0x7F7F8181, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81,
+0x8181817F, 0x7F81817F, 0x7F7F817F, 0x817F7F7F, 0x817F7F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F,
+0x81817F7F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x817F8181, 0x81817F81, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F,
+0x81817F81, 0x7F7F817F, 0x7F817F81, 0x81818181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F817F,
+0x8181817F, 0x7F7F7F7F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81818181, 0x7F817F81, 0x817F7F81,
+0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F817F81, 0x7F817F81, 0x81817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F8181,
+0x7F818181, 0x817F817F, 0x7F7F817F, 0x7F817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x7F818181,
+0x81817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x7F7F817F, 0x8181817F,
+0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x817F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x817F7F7F, 0x7F817F81, 0x7F7F7F81, 0x81818181, 0x817F8181, 0x81817F7F, 0x8181817F,
+0x81817F81, 0x817F8181, 0x817F8181, 0x817F817F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181,
+0x817F8181, 0x817F7F7F, 0x817F7F7F, 0x81817F81, 0x7F81817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x81818181, 0x7F7F7F81, 0x81818181, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x81817F81,
+0x7F7F7F81, 0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x7F817F81, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x7F7F7F7F, 0x81817F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x817F7F7F, 0x7F818181, 0x817F817F,
+0x81817F7F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x81817F7F, 0x817F817F, 0x8181817F, 0x817F8181,
+0x7F7F7F7F, 0x7F818181, 0x817F817F, 0x817F8181, 0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F817F81, 0x81818181, 0x8181817F, 0x7F817F7F,
+0x7F7F8181, 0x817F8181, 0x81817F7F, 0x81818181, 0x7F818181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x817F7F81, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x81817F81, 0x81817F81, 0x7F7F8181,
+0x817F8181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F7F8181,
+0x81818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F,
+0x81817F7F, 0x817F7F7F, 0x8181817F, 0x817F817F, 0x81817F7F, 0x81817F7F, 0x817F8181, 0x81817F7F,
+0x7F7F7F81, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x817F817F,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x8181817F, 0x81817F81, 0x817F8181, 0x7F7F817F, 0x7F81817F, 0x7F817F7F, 0x7F817F7F,
+0x81818181, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x817F817F, 0x7F7F7F81, 0x81818181, 0x817F7F7F,
+0x7F817F81, 0x7F817F7F, 0x817F817F, 0x7F7F7F81, 0x7F7F8181, 0x81817F81, 0x7F818181, 0x817F817F,
+0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F, 0x8181817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x7F81817F, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x81817F81, 0x81817F81, 0x817F7F81, 0x817F8181,
+0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x7F81817F, 0x81817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F,
+0x7F817F81, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F7F,
+0x817F8181, 0x817F8181, 0x81818181, 0x81817F7F, 0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F817F81,
+0x8181817F, 0x81817F81, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x7F81817F, 0x817F7F81, 0x81817F7F,
+0x81818181, 0x7F817F81, 0x81818181, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F7F81,
+0x7F7F817F, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x817F8181, 0x7F817F81, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x8181817F,
+0x7F7F7F7F, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x7F7F7F81, 0x7F7F817F,
+0x7F7F817F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F817F7F, 0x817F8181, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F7F8181, 0x81817F81, 0x8181817F,
+0x817F817F, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F, 0x817F7F7F, 0x817F7F81, 0x7F817F81,
+0x81817F81, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x8181817F, 0x817F7F7F, 0x7F818181, 0x7F818181,
+0x7F7F8181, 0x7F81817F, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x7F7F817F,
+0x7F7F8181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x81818181, 0x7F81817F,
+0x7F7F7F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F818181, 0x7F81817F, 0x81818181,
+0x7F7F7F7F, 0x817F8181, 0x7F7F8181, 0x7F817F81, 0x817F817F, 0x7F818181, 0x817F8181, 0x7F818181,
+0x817F7F81, 0x81817F7F, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F818181, 0x7F817F81,
+0x7F818181, 0x8181817F, 0x7F81817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F8181, 0x817F7F81, 0x7F81817F,
+0x7F817F7F, 0x817F7F81, 0x817F817F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81,
+0x8181817F, 0x8181817F, 0x7F81817F, 0x7F81817F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181,
+0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F817F, 0x81817F81, 0x7F818181, 0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F,
+0x817F7F81, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F817F81, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F817F, 0x817F8181,
+0x817F7F7F, 0x81817F7F, 0x7F81817F, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F817F, 0x7F7F7F7F,
+0x8181817F, 0x817F817F, 0x7F818181, 0x7F818181, 0x817F7F7F, 0x7F81817F, 0x817F817F, 0x81818181,
+0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F7F7F81, 0x7F7F7F81,
+0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F817F, 0x817F7F81, 0x817F7F7F, 0x7F7F7F7F,
+0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x81817F7F, 0x817F7F81,
+0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81818181, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x7F817F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x81817F81, 0x7F81817F,
+0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x817F7F81,
+0x81817F7F, 0x81817F7F, 0x8181817F, 0x7F818181, 0x7F7F8181, 0x7F817F81, 0x7F817F7F, 0x7F7F817F,
+0x81818181, 0x7F817F7F, 0x81818181, 0x81817F7F, 0x7F817F7F, 0x7F81817F, 0x7F7F8181, 0x817F8181,
+0x8181817F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x8181817F, 0x7F7F7F81,
+0x7F817F81, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F81817F,
+0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x817F7F7F, 0x817F7F81, 0x817F7F81, 0x817F8181, 0x81818181,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F81817F, 0x7F7F7F7F, 0x81817F81, 0x81817F81, 0x7F81817F,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x817F7F81,
+0x7F7F817F, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81,
+0x81817F81, 0x81818181, 0x817F7F7F, 0x817F817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F7F,
+0x81817F81, 0x7F81817F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x817F8181, 0x7F818181, 0x81818181, 0x817F7F81, 0x7F81817F, 0x81818181, 0x7F817F81,
+0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F817F81, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F7F81,
+0x81817F7F, 0x8181817F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x81818181,
+0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F7F, 0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x81817F81,
+0x81817F81, 0x7F81817F, 0x7F818181, 0x7F818181, 0x81818181, 0x81817F81, 0x7F7F8181, 0x7F81817F,
+0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F7F7F7F, 0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F7F,
+0x7F7F817F, 0x81818181, 0x81818181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F7F7F, 0x7F817F7F,
+0x817F8181, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x817F817F, 0x81818181, 0x81817F7F,
+0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x81818181,
+0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x817F817F, 0x7F7F7F7F, 0x817F8181,
+0x7F818181, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x8181817F, 0x7F7F7F81, 0x7F817F81,
+0x817F817F, 0x81818181, 0x817F8181, 0x81817F7F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x7F81817F,
+0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x7F817F81, 0x8181817F, 0x7F7F7F81, 0x81817F81,
+0x81817F81, 0x817F817F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F7F, 0x7F7F817F, 0x7F7F817F,
+0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F7F, 0x7F818181, 0x817F7F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x81818181, 0x7F7F817F, 0x7F7F8181,
+0x817F7F81, 0x817F7F7F, 0x81818181, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x7F817F7F, 0x7F817F81,
+0x7F7F8181, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x817F8181, 0x81817F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x8181817F, 0x81817F7F, 0x81817F7F, 0x7F7F7F81,
+0x7F817F7F, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F7F7F, 0x7F7F7F81, 0x81818181, 0x81818181, 0x7F7F7F7F, 0x817F7F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x817F7F81, 0x81817F7F,
+0x7F817F81, 0x7F7F8181, 0x8181817F, 0x7F7F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F817F81,
+0x7F818181, 0x7F81817F, 0x81818181, 0x81817F81, 0x7F817F81, 0x81818181, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F817F7F, 0x8181817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F7F,
+0x81817F7F, 0x7F7F817F, 0x81817F7F, 0x7F817F7F, 0x7F7F7F7F, 0x817F8181, 0x817F7F7F, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F81, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81,
+0x817F7F81, 0x7F81817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x7F81817F, 0x817F817F,
+0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x81817F81, 0x81817F81,
+0x7F7F817F, 0x7F7F817F, 0x81817F7F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F817F,
+0x81817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x81818181, 0x8181817F, 0x7F818181,
+0x7F817F7F, 0x8181817F, 0x7F817F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F81817F,
+0x817F7F7F, 0x81817F81, 0x81817F81, 0x7F818181, 0x7F818181, 0x7F7F7F7F, 0x7F818181, 0x7F7F8181,
+0x7F81817F, 0x817F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F81, 0x81817F7F, 0x7F7F7F7F, 0x817F8181,
+0x8181817F, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x817F817F, 0x81818181,
+0x817F7F7F, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F817F,
+0x7F817F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x7F817F7F, 0x7F7F7F7F, 0x81817F7F, 0x81817F81,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F81817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F,
+0x7F818181, 0x81817F81, 0x817F8181, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x7F818181, 0x81817F81,
+0x81818181, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F817F, 0x81817F7F,
+0x7F817F81, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x81817F7F,
+0x7F7F7F81, 0x7F7F817F, 0x81817F7F, 0x817F7F81, 0x7F817F7F, 0x8181817F, 0x817F7F81, 0x817F7F81,
+0x817F7F7F, 0x81818181, 0x7F817F81, 0x817F7F7F, 0x817F817F, 0x817F7F81, 0x81817F7F, 0x7F81817F,
+0x81817F81, 0x817F8181, 0x817F817F, 0x81817F7F, 0x81818181, 0x81818181, 0x817F8181, 0x817F817F,
+0x7F7F817F, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F7F7F7F, 0x81817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F817F7F, 0x7F817F7F, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x7F817F7F, 0x817F7F81, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x8181817F,
+0x817F7F81, 0x81818181, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F818181, 0x7F7F817F, 0x7F817F7F,
+0x81818181, 0x81817F7F, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F7F81, 0x817F8181, 0x817F8181, 0x81818181, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F817F81,
+0x7F7F7F7F, 0x7F7F817F, 0x817F817F, 0x7F818181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x81817F7F,
+0x7F7F8181, 0x81818181, 0x7F7F7F7F, 0x817F8181, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81818181,
+0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x817F7F81,
+0x7F81817F, 0x817F817F, 0x8181817F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x7F818181, 0x817F7F81,
+0x7F817F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x817F817F, 0x7F818181,
+0x7F817F7F, 0x7F7F8181, 0x7F81817F, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x817F7F7F, 0x8181817F,
+0x7F817F81, 0x7F818181, 0x7F81817F, 0x7F817F7F, 0x817F8181, 0x7F7F7F7F, 0x7F817F7F, 0x817F817F,
+0x817F7F81, 0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x7F7F817F,
+0x8181817F, 0x8181817F, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F7F,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F7F7F, 0x81818181, 0x81818181, 0x81818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F81817F, 0x7F81817F, 0x8181817F, 0x7F817F81, 0x7F818181, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x8181817F,
+0x7F7F817F, 0x81817F81, 0x81818181, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81,
+0x81818181, 0x817F8181, 0x81818181, 0x817F7F81, 0x81818181, 0x81818181, 0x817F8181, 0x817F8181,
+0x7F7F7F81, 0x817F7F7F, 0x7F818181, 0x81817F7F, 0x81817F81, 0x817F8181, 0x817F8181, 0x817F7F7F,
+0x7F7F7F7F, 0x81817F81, 0x81817F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x81817F7F, 0x817F8181, 0x817F7F7F, 0x7F81817F, 0x7F7F817F, 0x817F8181, 0x7F7F7F7F,
+0x7F818181, 0x7F7F8181, 0x7F81817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x817F8181, 0x81817F81,
+0x817F7F81, 0x7F817F81, 0x8181817F, 0x7F818181, 0x7F817F81, 0x7F7F7F81, 0x8181817F, 0x7F818181,
+0x81818181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F817F,
+0x81817F7F, 0x817F8181, 0x817F7F81, 0x81817F7F, 0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F8181,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F7F7F,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x7F818181, 0x81818181, 0x817F7F81,
+0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x81817F81, 0x7F818181, 0x7F7F8181, 0x7F818181, 0x81817F7F,
+0x7F817F81, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x817F7F81, 0x7F7F817F, 0x817F817F, 0x7F818181,
+0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x7F817F7F,
+0x81817F7F, 0x81818181, 0x817F7F81, 0x81818181, 0x81817F81, 0x817F7F7F, 0x81817F81, 0x7F81817F,
+0x7F7F8181, 0x817F7F81, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F7F81, 0x7F817F81, 0x7F81817F,
+0x8181817F, 0x7F7F817F, 0x817F817F, 0x81817F81, 0x81818181, 0x7F7F8181, 0x7F7F8181, 0x7F817F81,
+0x8181817F, 0x81818181, 0x817F817F, 0x81818181, 0x7F7F8181, 0x817F7F7F, 0x7F7F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x7F818181, 0x817F7F7F, 0x817F7F7F,
+0x7F818181, 0x81817F81, 0x7F818181, 0x7F7F7F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x7F7F8181, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F817F81, 0x7F7F7F81, 0x7F7F8181,
+0x81817F7F, 0x817F7F7F, 0x817F8181, 0x7F81817F, 0x7F817F81, 0x81817F81, 0x81818181, 0x817F817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x7F818181, 0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F81817F, 0x817F7F81, 0x7F818181, 0x81817F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F81817F, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x817F817F, 0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x7F7F8181, 0x7F7F817F, 0x8181817F, 0x7F81817F, 0x7F7F7F81,
+0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F817F, 0x81818181, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F7F8181,
+0x81818181, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F, 0x817F7F7F,
+0x817F817F, 0x7F7F817F, 0x81817F81, 0x7F817F7F, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181,
+0x81818181, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F81, 0x7F7F7F81, 0x81818181, 0x7F818181,
+0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F7F817F,
+0x7F817F81, 0x81817F7F, 0x817F817F, 0x817F817F, 0x81817F7F, 0x81817F81, 0x7F7F8181, 0x7F7F7F7F,
+0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F818181, 0x7F818181,
+0x817F8181, 0x7F817F7F, 0x81817F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x7F818181, 0x7F7F8181,
+0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181, 0x7F7F7F7F, 0x817F8181, 0x817F8181,
+0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x817F7F81, 0x8181817F, 0x81818181,
+0x7F7F8181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181, 0x817F817F, 0x7F817F81, 0x7F817F81, 0x7F817F7F,
+0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181, 0x81818181, 0x817F7F7F, 0x817F8181, 0x7F7F8181,
+0x81817F81, 0x7F7F817F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x817F817F, 0x817F817F,
+0x7F7F817F, 0x7F81817F, 0x7F7F817F, 0x7F817F81, 0x8181817F, 0x81817F7F, 0x81818181, 0x7F81817F,
+0x7F818181, 0x7F817F7F, 0x7F817F81, 0x8181817F, 0x81817F81, 0x8181817F, 0x817F7F81, 0x7F817F7F,
+0x817F8181, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x817F8181, 0x7F817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F7F81, 0x7F818181, 0x8181817F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x817F7F81, 0x7F7F7F7F,
+0x7F818181, 0x7F7F7F81, 0x81818181, 0x7F818181, 0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x7F7F8181,
+0x7F818181, 0x817F8181, 0x7F818181, 0x8181817F, 0x81817F7F, 0x817F8181, 0x81818181, 0x7F7F8181,
+0x817F7F81, 0x81818181, 0x817F817F, 0x7F81817F, 0x8181817F, 0x817F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x8181817F, 0x7F81817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81, 0x7F7F7F81, 0x817F7F81,
+0x817F8181, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F81, 0x7F817F81, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x7F817F81, 0x81818181,
+0x81818181, 0x7F7F817F, 0x7F81817F, 0x817F817F, 0x817F7F7F, 0x81818181, 0x817F8181, 0x7F7F8181,
+0x81818181, 0x817F7F81, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x81817F81, 0x817F8181, 0x7F7F817F,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x8181817F, 0x7F818181, 0x817F8181, 0x81818181, 0x7F817F81,
+0x817F8181, 0x81817F81, 0x7F81817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F8181, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x817F8181, 0x81818181, 0x7F81817F,
+0x7F7F8181, 0x817F8181, 0x817F7F7F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F817F, 0x7F7F7F7F,
+0x7F7F7F81, 0x7F81817F, 0x7F817F81, 0x7F7F8181, 0x7F7F7F7F, 0x817F7F7F, 0x7F817F7F, 0x817F8181,
+0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x8181817F, 0x817F7F81,
+0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F817F7F, 0x8181817F, 0x7F817F81, 0x7F7F817F, 0x81818181,
+0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F8181, 0x817F817F,
+0x817F817F, 0x7F817F7F, 0x7F7F8181, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x81818181, 0x7F817F81,
+0x7F7F7F81, 0x81817F7F, 0x817F817F, 0x81818181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F7F8181, 0x81817F7F, 0x7F81817F, 0x81817F81, 0x7F7F8181, 0x817F8181, 0x817F817F, 0x817F7F7F,
+0x7F7F817F, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F81817F, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81, 0x7F817F7F, 0x817F817F, 0x81817F7F,
+0x7F81817F, 0x81818181, 0x81817F81, 0x81817F7F, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x817F7F81,
+0x817F7F7F, 0x7F7F8181, 0x817F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F81817F, 0x7F818181,
+0x7F7F817F, 0x81818181, 0x7F7F7F7F, 0x8181817F, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F,
+0x7F7F8181, 0x7F7F8181, 0x81818181, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81,
+0x817F7F7F, 0x7F7F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F817F7F,
+0x81817F81, 0x817F817F, 0x817F8181, 0x7F7F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F7F817F,
+0x817F8181, 0x817F8181, 0x81817F81, 0x7F7F8181, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F8181,
+0x7F81817F, 0x7F7F7F81, 0x817F817F, 0x817F7F81, 0x7F817F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x7F7F8181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F817F81, 0x817F7F81,
+0x8181817F, 0x81818181, 0x7F818181, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F81817F, 0x8181817F,
+0x817F817F, 0x7F818181, 0x7F7F7F81, 0x8181817F, 0x7F817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x7F817F81, 0x7F7F7F7F, 0x81817F81, 0x817F817F, 0x7F817F81, 0x7F7F817F,
+0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F8181, 0x7F817F7F, 0x81818181,
+0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x8181817F, 0x7F817F7F,
+0x7F7F817F, 0x7F7F8181, 0x8181817F, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F7F7F81, 0x7F7F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F81, 0x81817F7F,
+0x8181817F, 0x81817F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F81817F, 0x7F7F7F7F, 0x7F818181, 0x7F81817F, 0x817F8181,
+0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x81817F81, 0x81818181, 0x8181817F,
+0x7F818181, 0x7F7F7F7F, 0x817F817F, 0x7F81817F, 0x817F817F, 0x817F8181, 0x7F81817F, 0x7F7F817F,
+0x817F7F81, 0x7F818181, 0x8181817F, 0x7F81817F, 0x8181817F, 0x81817F7F, 0x81817F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x7F818181, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F7F81, 0x7F817F81,
+0x7F817F7F, 0x7F817F81, 0x81817F7F, 0x81817F7F, 0x817F817F, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F81817F, 0x7F7F8181, 0x7F7F817F, 0x817F8181, 0x817F7F7F, 0x7F817F81, 0x817F7F7F, 0x817F817F,
+0x81817F7F, 0x81817F7F, 0x7F81817F, 0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x7F818181,
+0x7F817F81, 0x817F7F81, 0x81818181, 0x7F818181, 0x8181817F, 0x7F7F8181, 0x81817F81, 0x7F817F81,
+0x8181817F, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F7F, 0x7F7F7F7F, 0x81818181,
+0x7F81817F, 0x7F81817F, 0x817F817F, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F818181, 0x7F7F7F7F,
+0x7F817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x81817F81, 0x7F7F7F7F, 0x817F7F81, 0x817F8181,
+0x7F7F817F, 0x7F817F7F, 0x81817F7F, 0x7F7F8181, 0x81818181, 0x81817F81, 0x817F817F, 0x7F7F8181,
+0x817F8181, 0x817F817F, 0x7F818181, 0x81818181, 0x81817F7F, 0x81818181, 0x7F7F7F81, 0x7F7F8181,
+0x817F817F, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x8181817F, 0x7F7F8181, 0x7F7F817F, 0x7F818181,
+0x8181817F, 0x817F7F81, 0x7F818181, 0x7F7F8181, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x817F7F81,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F81, 0x7F817F7F,
+0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x7F817F81, 0x7F817F7F, 0x817F7F81,
+0x817F7F7F, 0x7F818181, 0x817F817F, 0x8181817F, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F,
+0x7F7F7F81, 0x81818181, 0x81817F81, 0x7F7F8181, 0x81817F7F, 0x7F7F7F81, 0x7F7F817F, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F7F817F, 0x81817F81, 0x817F7F81, 0x7F81817F,
+0x817F817F, 0x81818181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81817F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F818181,
+0x7F817F81, 0x7F7F7F81, 0x7F817F81, 0x7F81817F, 0x817F817F, 0x7F81817F, 0x7F817F7F, 0x81817F81,
+0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x81817F81, 0x7F7F8181, 0x817F817F, 0x7F7F817F, 0x81817F81,
+0x7F7F7F81, 0x81817F81, 0x81817F81, 0x8181817F, 0x8181817F, 0x81817F81, 0x7F7F817F, 0x817F7F81,
+0x7F7F8181, 0x7F7F8181, 0x7F817F81, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F7F,
+0x81817F7F, 0x7F817F81, 0x7F81817F, 0x7F818181, 0x8181817F, 0x7F817F7F, 0x817F7F81, 0x817F8181,
+0x81818181, 0x817F8181, 0x7F7F7F7F, 0x7F7F7F7F, 0x81817F7F, 0x7F81817F, 0x7F818181, 0x7F81817F,
+0x7F7F7F7F, 0x81817F81, 0x81818181, 0x7F7F7F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F817F81,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x817F817F, 0x7F7F8181, 0x817F7F7F, 0x7F7F8181,
+0x7F817F81, 0x7F7F817F, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F7F, 0x8181817F,
+0x7F7F7F7F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F817F81, 0x8181817F, 0x81817F81, 0x7F7F8181,
+0x8181817F, 0x7F7F817F, 0x81817F81, 0x81818181, 0x817F817F, 0x7F817F81, 0x7F7F817F, 0x7F817F7F,
+0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x7F81817F,
+0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81818181, 0x7F817F7F, 0x8181817F, 0x7F817F7F,
+0x81818181, 0x7F7F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x7F817F81, 0x817F7F81, 0x7F817F81, 0x7F7F817F,
+0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x81817F81, 0x81817F81,
+0x817F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F81817F, 0x817F7F7F, 0x817F817F, 0x817F817F, 0x7F7F8181,
+0x7F7F7F7F, 0x7F818181, 0x7F7F8181, 0x7F7F8181, 0x817F7F7F, 0x7F818181, 0x8181817F, 0x7F7F8181,
+0x817F817F, 0x81817F81, 0x81817F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81,
+0x817F7F81, 0x81818181, 0x8181817F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x817F8181,
+0x81817F81, 0x7F81817F, 0x7F7F817F, 0x81817F81, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F817F,
+0x81818181, 0x81817F81, 0x81818181, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F, 0x817F7F7F, 0x81817F7F, 0x81817F81, 0x817F7F81,
+0x81818181, 0x7F81817F, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x7F7F8181, 0x7F818181, 0x817F7F81,
+0x7F7F8181, 0x817F817F, 0x817F7F81, 0x817F817F, 0x81817F81, 0x817F7F81, 0x7F817F7F, 0x817F817F,
+0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F8181,
+0x7F817F81, 0x7F7F7F81, 0x817F7F81, 0x81817F7F, 0x817F7F81, 0x7F7F8181, 0x817F8181, 0x81817F7F,
+0x7F818181, 0x817F8181, 0x817F817F, 0x7F7F8181, 0x8181817F, 0x8181817F, 0x817F7F7F, 0x7F7F8181,
+0x8181817F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x7F818181, 0x7F81817F, 0x81818181, 0x817F7F7F,
+0x7F7F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x7F7F7F7F, 0x7F7F7F7F,
+0x81818181, 0x7F7F7F81, 0x81817F81, 0x817F8181, 0x7F817F7F, 0x81817F81, 0x8181817F, 0x7F7F7F81,
+0x7F818181, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x81817F7F, 0x7F818181, 0x81818181, 0x817F8181,
+0x7F817F7F, 0x7F818181, 0x7F81817F, 0x7F7F7F7F, 0x817F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F7F817F, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x817F7F81, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F817F, 0x81817F7F, 0x7F7F817F, 0x81818181, 0x7F7F8181, 0x7F817F7F, 0x7F817F81,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x7F818181, 0x7F818181, 0x81817F7F, 0x8181817F, 0x817F7F81,
+0x8181817F, 0x817F7F81, 0x7F7F817F, 0x7F817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x817F817F,
+0x817F7F7F, 0x7F818181, 0x7F817F7F, 0x8181817F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F817F, 0x7F81817F,
+0x8181817F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F, 0x7F818181, 0x817F7F7F, 0x7F7F8181,
+0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F7F817F, 0x817F8181, 0x7F817F81, 0x8181817F,
+0x7F818181, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x817F7F81, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x81818181, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F7F8181, 0x81817F7F, 0x7F7F8181, 0x7F817F81,
+0x7F7F7F7F, 0x8181817F, 0x817F817F, 0x7F7F8181, 0x817F817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81,
+0x817F7F7F, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x7F7F7F7F, 0x81818181, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F7F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F817F, 0x817F7F81, 0x817F7F7F, 0x817F8181,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F81817F, 0x81818181, 0x817F7F81, 0x81817F7F, 0x7F7F7F81,
+0x7F7F817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F817F7F, 0x7F7F817F, 0x7F81817F, 0x81817F7F,
+0x7F818181, 0x7F7F7F81, 0x81817F7F, 0x81818181, 0x81817F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F7F8181, 0x81818181, 0x7F81817F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x817F7F7F,
+0x8181817F, 0x817F7F7F, 0x7F817F7F, 0x817F817F, 0x817F8181, 0x7F818181, 0x81817F7F, 0x7F7F8181,
+0x817F7F81, 0x8181817F, 0x817F8181, 0x7F817F81, 0x7F7F817F, 0x7F7F817F, 0x7F7F7F7F, 0x7F81817F,
+0x7F7F7F81, 0x7F81817F, 0x81818181, 0x7F817F7F, 0x817F8181, 0x81817F81, 0x7F818181, 0x7F817F81,
+0x7F817F81, 0x817F7F7F, 0x7F817F81, 0x7F7F8181, 0x817F817F, 0x817F8181, 0x8181817F, 0x81817F81,
+0x817F817F, 0x7F7F817F, 0x81817F7F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x7F7F7F81, 0x817F8181,
+0x7F7F7F7F, 0x81817F7F, 0x7F817F81, 0x7F7F7F7F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F,
+0x817F7F81, 0x817F7F7F, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x8181817F, 0x817F817F, 0x817F7F7F,
+0x817F7F81, 0x817F7F7F, 0x8181817F, 0x7F7F7F81, 0x7F817F7F, 0x7F817F81, 0x817F817F, 0x7F81817F,
+0x81818181, 0x7F817F81, 0x7F817F81, 0x817F7F81, 0x7F7F817F, 0x7F81817F, 0x7F7F8181, 0x7F817F7F,
+0x817F817F, 0x81818181, 0x7F7F8181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F7F7F81, 0x7F817F7F,
+0x7F817F7F, 0x7F7F817F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x7F81817F, 0x7F7F7F7F, 0x817F8181,
+0x81817F7F, 0x7F7F817F, 0x7F817F81, 0x817F817F, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F818181,
+0x7F7F7F7F, 0x7F81817F, 0x7F818181, 0x817F8181, 0x817F7F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x7F817F7F, 0x7F81817F, 0x817F817F, 0x81817F7F, 0x7F7F7F7F, 0x817F817F, 0x7F817F7F, 0x7F7F8181,
+0x81817F81, 0x7F7F7F7F, 0x81818181, 0x817F817F, 0x81818181, 0x7F817F7F, 0x81817F81, 0x7F7F7F7F,
+0x81818181, 0x7F81817F, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F7F7F, 0x7F817F7F, 0x817F7F7F,
+0x817F8181, 0x7F818181, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x817F7F81, 0x7F81817F, 0x7F7F8181,
+0x81818181, 0x7F818181, 0x7F818181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181,
+0x81817F7F, 0x7F7F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x817F8181, 0x81817F81, 0x817F817F,
+0x7F817F81, 0x7F7F8181, 0x817F817F, 0x7F81817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F81817F, 0x81817F7F, 0x81818181, 0x7F818181, 0x7F817F7F, 0x7F7F817F, 0x817F7F7F, 0x81817F81,
+0x7F817F7F, 0x7F81817F, 0x817F7F7F, 0x7F7F817F, 0x7F81817F, 0x817F8181, 0x81818181, 0x81817F7F,
+0x817F8181, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x81817F81, 0x7F7F7F81, 0x81817F81, 0x7F7F7F81,
+0x7F817F7F, 0x7F7F7F7F, 0x81818181, 0x7F81817F, 0x8181817F, 0x7F81817F, 0x817F7F7F, 0x817F817F,
+0x817F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x817F7F81, 0x81817F7F, 0x81818181,
+0x817F817F, 0x7F7F8181, 0x817F7F81, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F817F,
+0x817F8181, 0x7F817F81, 0x7F7F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F81, 0x7F81817F, 0x7F7F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F817F7F, 0x8181817F, 0x7F7F8181,
+0x81817F81, 0x817F8181, 0x7F7F7F81, 0x81818181, 0x817F7F81, 0x8181817F, 0x817F8181, 0x81817F7F,
+0x817F7F7F, 0x7F818181, 0x81817F81, 0x7F81817F, 0x7F7F7F81, 0x8181817F, 0x7F7F817F, 0x8181817F,
+0x8181817F, 0x7F817F7F, 0x7F817F7F, 0x8181817F, 0x817F7F7F, 0x817F7F81, 0x7F817F7F, 0x7F818181,
+0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F7F, 0x817F817F,
+0x7F7F7F81, 0x7F7F817F, 0x7F817F81, 0x7F81817F, 0x7F817F81, 0x7F817F81, 0x7F7F7F7F, 0x7F818181,
+0x817F817F, 0x817F7F7F, 0x817F8181, 0x7F818181, 0x7F7F7F81, 0x817F7F7F, 0x7F81817F, 0x817F8181,
+0x817F7F81, 0x7F7F7F81, 0x8181817F, 0x817F817F, 0x8181817F, 0x817F7F7F, 0x7F81817F, 0x81817F7F,
+0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x81817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81,
+0x7F7F8181, 0x817F817F, 0x7F7F7F81, 0x7F818181, 0x81818181, 0x7F7F7F81, 0x7F817F7F, 0x817F8181,
+0x817F817F, 0x7F7F8181, 0x7F817F7F, 0x7F7F7F81, 0x7F7F817F, 0x8181817F, 0x7F817F81, 0x7F81817F,
+0x7F817F81, 0x7F818181, 0x81818181, 0x8181817F, 0x7F7F7F81, 0x817F7F7F, 0x81818181, 0x7F7F8181,
+0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F8181, 0x7F818181, 0x7F7F817F, 0x817F7F7F, 0x7F7F7F7F,
+0x817F7F81, 0x817F7F7F, 0x817F817F, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x817F7F81, 0x7F81817F,
+0x817F7F81, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F, 0x817F817F, 0x817F7F81, 0x7F7F7F81, 0x81818181,
+0x81817F81, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x8181817F,
+0x81817F7F, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x7F7F7F81, 0x7F817F81,
+0x7F7F7F81, 0x81817F81, 0x7F818181, 0x81817F7F, 0x817F817F, 0x817F7F81, 0x7F7F817F, 0x8181817F,
+0x817F817F, 0x817F817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F8181, 0x7F817F81, 0x7F7F8181,
+0x81817F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x817F7F81, 0x817F8181, 0x7F7F7F7F, 0x7F7F8181,
+0x7F7F817F, 0x7F818181, 0x7F817F81, 0x81817F7F, 0x817F817F, 0x7F817F7F, 0x817F7F7F, 0x81817F81,
+0x7F817F81, 0x817F7F7F, 0x7F81817F, 0x7F7F7F7F, 0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x81817F81,
+0x7F817F7F, 0x7F7F7F7F, 0x7F818181, 0x7F817F7F, 0x81817F81, 0x7F7F817F, 0x817F7F7F, 0x817F8181,
+0x7F817F7F, 0x81817F7F, 0x817F8181, 0x817F817F, 0x817F8181, 0x7F7F8181, 0x7F817F7F, 0x81817F7F,
+0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x7F817F81,
+0x7F81817F, 0x81817F81, 0x81817F81, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F7F81, 0x81817F81,
+0x7F817F7F, 0x7F7F817F, 0x81817F7F, 0x7F7F7F81, 0x817F817F, 0x7F7F7F7F, 0x7F81817F, 0x7F7F8181,
+0x817F817F, 0x817F8181, 0x7F7F7F81, 0x81817F7F, 0x817F8181, 0x7F7F8181, 0x7F7F817F, 0x817F7F7F,
+0x7F817F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x81817F7F, 0x7F817F7F, 0x7F817F7F,
+0x81817F7F, 0x7F818181, 0x817F8181, 0x7F7F7F7F, 0x8181817F, 0x7F817F81, 0x8181817F, 0x81817F81,
+0x8181817F, 0x7F817F7F, 0x817F817F, 0x817F7F81, 0x81818181, 0x7F817F81, 0x7F81817F, 0x7F817F81,
+0x817F7F81, 0x7F817F7F, 0x7F81817F, 0x817F8181, 0x817F817F, 0x7F7F7F7F, 0x81817F7F, 0x7F818181,
+0x817F7F81, 0x7F7F8181, 0x817F8181, 0x8181817F, 0x81818181, 0x7F818181, 0x7F7F7F7F, 0x7F7F817F,
+0x7F818181, 0x81818181, 0x817F7F7F, 0x7F818181, 0x7F7F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F818181,
+0x817F817F, 0x7F817F7F, 0x8181817F, 0x7F7F8181, 0x7F817F81, 0x817F7F7F, 0x8181817F, 0x81817F81,
+0x7F81817F, 0x7F817F81, 0x81817F81, 0x81817F81, 0x81818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F7F7F81, 0x817F817F, 0x81817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x7F81817F,
+0x8181817F, 0x81817F81, 0x7F81817F, 0x81817F81, 0x81817F7F, 0x817F7F7F, 0x8181817F, 0x7F7F817F,
+0x81818181, 0x7F81817F, 0x81817F7F, 0x7F7F7F7F, 0x817F8181, 0x81817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81, 0x7F7F817F,
+0x817F7F7F, 0x817F8181, 0x7F817F7F, 0x7F81817F, 0x7F7F817F, 0x81817F7F, 0x81817F81, 0x7F81817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F81817F, 0x817F817F, 0x7F7F7F7F, 0x8181817F, 0x7F7F8181, 0x7F7F8181,
+0x817F7F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x817F7F7F, 0x7F81817F, 0x817F7F81, 0x817F7F7F,
+0x81817F7F, 0x7F7F817F, 0x817F817F, 0x7F81817F, 0x7F81817F, 0x817F8181, 0x7F7F817F, 0x81817F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F8181, 0x817F817F, 0x81817F7F, 0x7F7F8181, 0x817F7F81,
+0x7F7F7F81, 0x817F7F7F, 0x81817F81, 0x817F7F81, 0x81817F81, 0x81817F81, 0x7F7F7F7F, 0x7F7F8181,
+0x817F7F7F, 0x81818181, 0x7F818181, 0x7F7F817F, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F7F81,
+0x7F7F7F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F7F, 0x8181817F, 0x81817F7F, 0x8181817F, 0x817F817F,
+0x7F817F7F, 0x817F8181, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x81818181, 0x7F81817F, 0x7F7F7F81,
+0x817F7F81, 0x7F818181, 0x7F81817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F81, 0x7F817F81,
+0x81817F7F, 0x817F7F81, 0x7F7F7F7F, 0x7F7F8181, 0x7F7F8181, 0x81818181, 0x81818181, 0x7F817F7F,
+0x7F817F81, 0x7F818181, 0x7F7F817F, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F, 0x81818181, 0x7F81817F,
+0x81817F7F, 0x7F81817F, 0x7F7F7F81, 0x7F81817F, 0x81817F7F, 0x7F81817F, 0x7F817F7F, 0x817F7F81,
+0x81818181, 0x81817F81, 0x817F8181, 0x8181817F, 0x817F817F, 0x81817F81, 0x7F81817F, 0x7F817F81,
+0x817F817F, 0x7F81817F, 0x81817F81, 0x7F817F7F, 0x7F7F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F,
+0x7F817F7F, 0x7F7F7F81, 0x7F7F8181, 0x7F7F7F7F, 0x7F817F81, 0x7F818181, 0x81817F7F, 0x817F817F,
+0x7F81817F, 0x81817F7F, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F817F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F81817F, 0x817F8181, 0x81818181, 0x7F818181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x7F7F7F7F,
+0x7F7F817F, 0x817F7F81, 0x81817F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F81, 0x7F818181,
+0x7F7F817F, 0x817F817F, 0x7F7F8181, 0x81818181, 0x817F8181, 0x817F7F7F, 0x7F817F7F, 0x7F818181,
+0x7F7F7F7F, 0x81817F81, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x817F7F81, 0x817F817F, 0x7F7F817F,
+0x817F817F, 0x7F7F817F, 0x817F817F, 0x81817F7F, 0x7F817F7F, 0x817F7F81, 0x7F7F817F, 0x7F818181,
+0x7F817F7F, 0x7F818181, 0x7F7F7F7F, 0x81818181, 0x8181817F, 0x81817F7F, 0x7F7F7F81, 0x81817F7F,
+0x7F817F7F, 0x8181817F, 0x817F8181, 0x7F7F7F7F, 0x817F7F81, 0x7F817F81, 0x7F817F7F, 0x8181817F,
+0x817F7F7F, 0x81818181, 0x817F7F81, 0x7F817F7F, 0x817F817F, 0x817F7F7F, 0x8181817F, 0x7F7F7F7F,
+0x7F817F81, 0x7F7F8181, 0x817F7F7F, 0x817F7F81, 0x7F818181, 0x7F817F7F, 0x7F7F8181, 0x7F7F817F,
+0x817F7F81, 0x81817F81, 0x7F7F7F7F, 0x7F817F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F81,
+0x81818181, 0x817F817F, 0x817F7F81, 0x817F8181, 0x8181817F, 0x7F818181, 0x817F7F81, 0x7F7F817F,
+0x7F7F817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x81817F81, 0x7F81817F, 0x7F817F7F, 0x7F7F7F81,
+0x81817F7F, 0x7F7F817F, 0x7F817F7F, 0x7F7F817F, 0x7F818181, 0x81817F7F, 0x7F7F8181, 0x7F7F817F,
+0x7F817F7F, 0x7F7F7F81, 0x8181817F, 0x7F7F7F7F, 0x7F817F7F, 0x7F817F7F, 0x81818181, 0x817F7F81,
+0x817F7F7F, 0x817F7F7F, 0x817F7F81, 0x817F817F, 0x7F7F817F, 0x7F7F7F81, 0x81817F7F, 0x817F8181,
+0x817F7F81, 0x817F817F, 0x817F7F7F, 0x817F7F7F, 0x7F817F81, 0x7F7F817F, 0x817F8181, 0x817F817F,
+0x81817F81, 0x817F8181, 0x7F818181, 0x817F7F7F, 0x81817F7F, 0x7F818181, 0x7F817F81, 0x7F7F7F7F,
+0x817F7F7F, 0x81818181, 0x7F7F817F, 0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x817F8181, 0x8181817F,
+0x7F7F7F7F, 0x7F817F7F, 0x8181817F, 0x817F817F, 0x7F817F7F, 0x81818181, 0x7F7F817F, 0x7F7F7F7F,
+0x7F818181, 0x81818181, 0x7F7F7F81, 0x81817F81, 0x81817F81, 0x7F81817F, 0x817F817F, 0x7F817F81,
+0x81817F7F, 0x817F817F, 0x81817F81, 0x8181817F, 0x817F817F, 0x817F817F, 0x817F817F, 0x817F817F,
+0x81817F7F, 0x81818181, 0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F817F, 0x817F7F81,
+0x7F818181, 0x817F7F81, 0x81817F7F, 0x817F817F, 0x81817F7F, 0x8181817F, 0x817F7F81, 0x7F7F7F81,
+0x81817F81, 0x7F7F7F81, 0x81818181, 0x817F7F7F, 0x81817F7F, 0x7F817F7F, 0x7F818181, 0x81817F7F,
+0x7F817F7F, 0x7F7F7F81, 0x81817F7F, 0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F7F817F, 0x7F7F7F81,
+0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x817F7F7F,
+0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F81, 0x81817F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x81818181, 0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F7F, 0x7F817F81, 0x7F817F7F, 0x817F7F81, 0x81817F81, 0x7F7F817F,
+0x7F817F7F, 0x8181817F, 0x7F7F817F, 0x81818181, 0x81817F7F, 0x7F7F817F, 0x7F7F7F81, 0x817F7F81,
+0x7F81817F, 0x7F7F8181, 0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x81818181,
+0x7F7F7F81, 0x7F81817F, 0x7F817F7F, 0x81818181, 0x817F8181, 0x7F817F7F, 0x7F818181, 0x7F81817F,
+0x817F8181, 0x7F7F8181, 0x7F7F8181, 0x8181817F, 0x7F7F7F81, 0x7F7F7F81, 0x817F7F81, 0x817F7F81,
+0x81817F7F, 0x7F817F7F, 0x817F7F7F, 0x7F7F817F, 0x817F7F7F, 0x7F817F81, 0x7F7F7F7F, 0x817F817F,
+0x81817F81, 0x7F7F8181, 0x7F81817F, 0x8181817F, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F7F7F,
+0x7F818181, 0x81818181, 0x817F7F81, 0x7F818181, 0x7F817F81, 0x7F7F817F, 0x7F818181, 0x81818181,
+0x8181817F, 0x817F7F81, 0x817F8181, 0x817F8181, 0x7F817F81, 0x7F817F81, 0x7F7F817F, 0x7F7F7F81,
+0x81818181, 0x81817F7F, 0x81817F7F, 0x81817F81, 0x7F81817F, 0x81817F7F, 0x81817F7F, 0x81817F7F,
+0x81817F81, 0x7F7F817F, 0x817F817F, 0x8181817F, 0x7F81817F, 0x81817F81, 0x7F817F81, 0x817F817F,
+0x817F7F81, 0x81818181, 0x7F817F81, 0x81817F81, 0x817F817F, 0x81817F7F, 0x7F817F81, 0x7F817F7F,
+0x7F7F7F7F, 0x7F817F81, 0x81817F7F, 0x7F7F817F, 0x7F7F8181, 0x7F7F7F81, 0x8181817F, 0x81818181,
+0x81817F7F, 0x7F817F7F, 0x81817F81, 0x817F7F7F, 0x8181817F, 0x81817F7F, 0x7F817F81, 0x81817F81,
+0x7F7F8181, 0x7F7F8181, 0x81817F81, 0x7F81817F, 0x817F8181, 0x81818181, 0x81818181, 0x817F7F7F,
+0x817F8181, 0x7F817F81, 0x7F817F7F, 0x7F818181, 0x81818181, 0x7F7F7F7F, 0x7F7F8181, 0x817F817F,
+0x7F7F8181, 0x817F8181, 0x7F7F7F81, 0x7F817F7F, 0x7F81817F, 0x8181817F, 0x7F7F817F, 0x7F817F7F,
+0x81817F7F, 0x817F817F, 0x7F7F7F81, 0x817F8181, 0x7F81817F, 0x7F7F817F, 0x81818181, 0x7F81817F,
+0x7F817F81, 0x7F7F7F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x81817F81, 0x7F7F817F,
+0x7F7F7F81, 0x817F817F, 0x81817F81, 0x8181817F, 0x7F817F81, 0x8181817F, 0x817F7F81, 0x81817F81,
+0x7F7F817F, 0x817F7F7F, 0x81817F7F, 0x81817F7F, 0x7F7F8181, 0x7F7F7F7F, 0x7F81817F, 0x8181817F,
+0x81817F7F, 0x81817F7F, 0x7F817F7F, 0x817F8181, 0x7F81817F, 0x817F7F7F, 0x7F817F7F, 0x7F817F7F,
+0x817F7F81, 0x7F7F7F7F, 0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F818181, 0x817F8181, 0x81817F7F,
+0x7F81817F, 0x7F817F81, 0x7F81817F, 0x81818181, 0x7F817F81, 0x817F817F, 0x7F817F81, 0x7F817F81,
+0x7F7F8181, 0x817F8181, 0x817F8181, 0x7F7F7F81, 0x7F818181, 0x7F7F8181, 0x81817F7F, 0x8181817F,
+0x7F7F817F, 0x7F7F7F7F, 0x7F7F7F81, 0x817F7F7F, 0x7F7F7F81, 0x7F818181, 0x817F817F, 0x817F7F7F,
+0x817F7F7F, 0x7F7F8181, 0x81817F7F, 0x7F7F7F7F, 0x817F7F81, 0x7F7F7F7F, 0x8181817F, 0x81817F7F,
+0x7F81817F, 0x7F817F7F, 0x817F7F81, 0x7F818181, 0x81817F7F, 0x7F817F81, 0x81817F81, 0x81817F7F,
+0x817F8181, 0x7F7F817F, 0x7F817F7F, 0x7F7F7F7F, 0x7F7F817F, 0x7F817F7F, 0x7F817F7F, 0x7F7F817F,
+0x817F7F7F, 0x7F81817F, 0x7F818181, 0x7F817F7F, 0x7F7F7F81, 0x7F817F81, 0x817F8181, 0x7F7F7F81,
+0x7F818181, 0x7F817F81, 0x817F8181, 0x7F818181, 0x817F817F, 0x7F817F7F, 0x817F7F81, 0x8181817F,
+0x817F817F, 0x7F7F7F7F, 0x7F817F7F, 0x81818181, 0x7F817F81, 0x7F817F7F, 0x81817F81, 0x7F7F7F81,
+0x7F7F8181, 0x81817F81, 0x7F817F7F, 0x817F7F7F, 0x81817F81, 0x7F817F7F, 0x81817F81, 0x81818181,
+0x7F817F81, 0x7F7F7F7F, 0x817F817F, 0x8181817F, 0x7F7F817F, 0x817F8181, 0x817F8181, 0x81817F81,
+0x7F7F7F7F, 0x817F8181, 0x817F7F81, 0x7F817F81, 0x817F8181, 0x81817F7F, 0x7F7F7F7F, 0x7F817F7F,
+0x7F7F7F7F, 0x7F7F7F7F, 0x817F7F7F, 0x81818181, 0x81817F7F, 0x817F7F7F, 0x7F7F7F81, 0x7F7F8181,
+0x7F7F7F81, 0x7F7F8181, 0x8181817F, 0x7F7F817F, 0x817F7F81, 0x7F817F7F, 0x817F7F7F, 0x817F7F7F,
+0x7F7F817F, 0x7F81817F, 0x817F817F, 0x7F7F817F, 0x817F817F, 0x7F7F7F7F, 0x81817F81, 0x817F7F81,
+0x8181817F, 0x81817F81, 0x817F7F7F, 0x7F818181, 0x817F7F81, 0x7F7F8181, 0x7F7F817F, 0x7F81817F,
+0x7F817F81, 0x7F81817F, 0x81818181, 0x817F7F81, 0x7F818181, 0x81818181, 0x81817F7F, 0x7F817F81,
+0x7F818181, 0x7F7F7F81, 0x7F817F81, 0x81817F81, 0x817F8181, 0x817F817F, 0x8181817F, 0x7F7F8181,
+0x81818181, 0x817F817F, 0x7F818181, 0x817F817F, 0x7F7F817F, 0x817F7F81, 0x817F8181, 0x7F7F7F81,
+0x7F7F7F7F, 0x7F817F81, 0x81817F81, 0x81817F7F, 0x7F817F7F, 0x81818181, 0x817F7F7F, 0x7F818181,
+0x817F8181, 0x7F7F7F81, 0x817F7F81, 0x81817F81, 0x7F7F7F81, 0x8181817F, 0x817F7F7F, 0x7F7F7F81,
+0x7F81817F, 0x7F818181, 0x817F7F81, 0x7F81817F, 0x817F8181, 0x817F8181, 0x7F81817F, 0x817F8181,
+0x7F7F7F81, 0x81818181, 0x7F7F817F, 0x81817F81, 0x81817F81, 0x817F8181, 0x7F7F8181, 0x817F7F81,
+0x817F8181, 0x817F7F81, 0x7F7F8181, 0x7F7F8181, 0x7F818181, 0x81817F81, 0x7F7F8181, 0x7F818181,
+0x7F7F817F, 0x7F81817F, 0x817F7F7F, 0x81817F7F, 0x7F7F7F81, 0x7F7F7F81, 0x7F7F7F7F, 0x817F8181,
+0x7F817F7F, 0x7F7F7F7F
+
+output0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C,
+0xE1952001, 0xB77912DE, 0x52E8BA16, 0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403,
+0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC, 0xA40F8094, 0xABF43E46,
+0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8,
+0xBC563FD5, 0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E,
+0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854, 0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB,
+0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3, 0xB8E4AFE9,
+0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87,
+0x3E146A49, 0x0391D092, 0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024,
+0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1, 0xDCD211C3, 0xBF6B0B87, 0xA1624F47,
+0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795,
+0xEB08B437, 0x1A9899A0, 0x26484B82, 0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B,
+0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B, 0xC01C79FA, 0x622B9FD8,
+0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x824C6F4B, 0xDC
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+iter_max =
+20
+
+expected_iter_count =
+3
+
+op_flags =
+RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE, RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v11835.data b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
new file mode 100644
index 0000000..e27ff6e
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v11835.data
@@ -0,0 +1,41 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x44FB08C0, 0x661CCC
+
+output0 =
+0x1BACEE95, 0x613ECD04, 0xC0
+
+basegraph=
+2
+
+z_c=
+10
+
+n_cb=
+500
+
+q_m=
+6
+
+n_filler=
+44
+
+e=
+66
+
+rv_index=
+0
+
+code_block_mode=
+1
+
+op_flags=
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status=
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v2342.data b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
new file mode 100644
index 0000000..619b29b
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v2342.data
@@ -0,0 +1,151 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+# Origin : FEC5g_DL_1/2342
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x02524C20, 0xB9B1FEA2, 0xC1BAB7E5, 0xEF5714CB, 0x7DE6A64D, 0xA05F9DC9, 0x0747D1E3, 0x3B20BC86,
+0x6FCBDB0F, 0xF2FB7A23, 0x79D5E062, 0x5BF4E7C3, 0xD4A68A37, 0x07B4A6AD, 0x37E911F9, 0x7FE7B30A,
+0xBBC284A2, 0xD38D6136, 0x25FAB76B, 0xBEBBF534, 0x9A88F9DB, 0xE37FD52D, 0x691DD493, 0xED2F738C,
+0x89A96EA0, 0xD981246A, 0x17CC820E, 0x07E3B463, 0xC9FC2590, 0x7475A33C, 0xA5151BB4, 0x1F7E759E,
+0x9554F964, 0xD0FA01F4, 0xD31774D2, 0xEB73A9F6, 0x8C9FBCB1, 0xF83010FB, 0x1909E09F, 0xC46023EB,
+0x02AEDC62, 0xC6352CC7, 0x674BDC6D, 0xE17CD747, 0x4E25B0B3, 0x4BFF6B17, 0x12C9AAA3, 0xC2BC91CD,
+0x44BE23A2, 0x8A72A157, 0x6E0DAD1F, 0x6CA69A09, 0xB55B582E, 0x01818B31, 0x5CA5CAB6, 0x1917AB24,
+0x38F98BCD, 0x01917487, 0x05906FDD, 0x760AFCBA, 0x19671085, 0x64E3546E, 0xEC10F922, 0x3CF286CA,
+0x68E273EA, 0xF1001325, 0x5DCB3B49, 0xE9547370, 0x65D26AE6, 0xF621256C, 0x25D6D99C, 0x7862EBA0,
+0x43365DB0, 0x4DBF06C5, 0x92FCAA02, 0xB0FD58FA, 0x910E80A6, 0x93D24A67, 0x6E39B144, 0x3D46D6F6,
+0xEDC55081, 0x33CD70C7, 0xC74B6E8E, 0x91AA27B9, 0x55B3542D, 0xEBF8046A, 0xB9ABDB94, 0x97FC38A8,
+0xD5837B4D, 0x764B1809, 0xFBE2096A, 0xC23887AC, 0x2A45029B, 0xCBB7DF70, 0x674654E1, 0x0C6A06BD,
+0xB3E8853E, 0x03FCC4CE, 0x26806F2E, 0x2CEB35B0, 0x10538B03, 0x94B059B8, 0xA95E7FFA, 0x48AD3D0A,
+0xEB9091E1, 0x972E31EF, 0x5EBC6F8F, 0x947FF108, 0xCB3123FA, 0xFEE1D939, 0xF3DC5C49, 0xA92927AE,
+0xF49BB8D0, 0xAA59F730, 0x4A66D1CD, 0x030E1ADF, 0x238D5B19, 0x96F861F1, 0x915424E4, 0x9127880C,
+0x8E779839, 0x87375FCE, 0x61FB3D79, 0x96B1EE83, 0x47BF6667, 0x19E7D408, 0x7E91137F, 0x0E4AD8E8,
+0xDABD2E45, 0x9B60873F, 0xD0294A65, 0x2A38A862, 0x59DD046D, 0x9832BB79, 0xA5870DB6, 0xB3F1CC48,
+0x7E9A8132, 0xEEA2E4BC, 0xF23ED87B, 0x550E011F, 0x9620E0C0, 0xE7CF0834, 0xDEE69623, 0x6184D512,
+0xD3D55728, 0xFA7711D4, 0x9C77B0F9, 0x8A26462B, 0xB3F5C8D5, 0x1123246D, 0x78F36272, 0x940EE0F9,
+0x757BF240, 0x7EE2B6D0, 0xD40FD5A1, 0xAB4205CA, 0x96E6B758, 0xAC5F4294, 0xC9268C66, 0xB48DC535,
+0x3CF6ED4C, 0xF187EFED, 0x7A09B08D, 0x8709EFCE, 0x267B2468, 0x0015D770, 0xDF1B90BF, 0xA03DAD85,
+0x2633012E, 0xE5437125, 0x58B79AFF, 0xB929C532, 0x6D890DC9, 0x89A59AD2, 0x2BB99316, 0x41B5B0EB,
+0x7304B295, 0xB37F6708, 0x2F84A68E, 0x3637D79A, 0xDD36687B, 0x904BF7B6, 0x6A2CF453, 0x733DED54,
+0x5DF48BAA, 0xC3FCC99F, 0x8E3BE1DB, 0x61D9CF2D, 0xB7DC202B, 0xA959FF95, 0x860D0F14, 0x4008C478,
+0xD9325A51, 0x27A29D4C, 0x308FE6D4, 0x7A1AA889, 0x5BD38393, 0xCBFA5D
+
+output0 =
+0xADE67AA9, 0x1CB4EBDD, 0x74E76684, 0xE3941FC7, 0x48DAC304, 0x1E2C198D, 0xFE88B908, 0xEC21A3DE,
+0xBF314AB7, 0x634E3DCB, 0x0DA84E23, 0x58B1B22B, 0x02B837A0, 0x8B04BF38, 0xFB8DB526, 0x1BFF82E9,
+0x4226C4D0, 0xF7A9950E, 0x6DA4D0B2, 0x38E15395, 0x94C1A379, 0x243ED666, 0x3E7255B3, 0x7DB378DB,
+0xA3CE1377, 0xE0137291, 0x42DB50AC, 0xEB2D0A13, 0xCA55944A, 0x223DF8E0, 0xB800D1CF, 0xAA2E7577,
+0x50153EC5, 0x5E3C8557, 0x63DDEC8F, 0x49A256F8, 0x41ABFD56, 0xEB76A4D7, 0x4F4E9C7C, 0x3508DA39,
+0x530F9DA0, 0xFFD20E32, 0x395F7963, 0x1C48B3F7, 0xD3BC29C7, 0x4D6ED90F, 0xC1C9EF58, 0x9B9D4A13,
+0x417BF36E, 0x1BB5FDD8, 0x72793F28, 0x2F297FA5, 0x204AA988, 0x28317636, 0x87878EC8, 0x33024F9D,
+0xE651388E, 0x560ACA6E, 0xEC3D0B64, 0xCB515AAE, 0xE42B9ECD, 0x2AE2B0D1, 0xCD659A28, 0x8BD5E4D8,
+0x0D618DD6, 0x14CF8DB1, 0xE9F82BB6, 0x558C50A4, 0xA9809F8C, 0x15646823, 0x6037DB27, 0x26A0ABAA,
+0xF8DC4AC6, 0x533494C9, 0x7BF60155, 0x7BB16D05, 0x89F7A1BA, 0xCB069606, 0x6572D71A, 0x001917EB,
+0xD353913B, 0x128F78BD, 0x83BCE2A3, 0xE0065266, 0x9E7E608F, 0x25889472, 0x184ADD42, 0xD42B429B,
+0x7A8D861F, 0x54C97AB8, 0xB8B04229, 0xDF3DE03A, 0xB97E311E, 0xBB2A1FF8, 0x53AC8D5B, 0x1825B5DC,
+0x9843DD95, 0x0214EAA6, 0x3B1CF504, 0xD3BE316F, 0x9B1D3C64, 0x8EF4A268, 0xFACBC9AD, 0xDCC6033F,
+0xF801E3D1, 0x92F3E3A1, 0x1EC121AC, 0xA6747F20, 0x6ACC34EF, 0x0F641DC0, 0x42CAB9C3, 0xE04036DD,
+0x97739381, 0x9843A304, 0x929E9AB7, 0x600E057F, 0x892D5F1F, 0x0F718281, 0xD345AA58, 0xF39215C4,
+0xBCAB0B51, 0x1EBEA1B0, 0x68885471, 0xB39AD728, 0x2FF70470, 0x80D01FE5, 0xB41A95C0, 0x01DB8079,
+0xA4C9F364, 0x41860F1A, 0xEBE24F2B, 0x086BFFF0, 0x7B66DE40, 0xFFF665D6, 0x18324792, 0x1D253106,
+0xC41B9BF0, 0xC79347BA, 0x6949A396, 0x279E7A4A, 0x4029B533, 0xE8B382E2, 0x89783E24, 0x3D945C74,
+0x49BD75D8, 0xBAD731A0, 0x48B4AFAB, 0x4383B903, 0x8A6966A6, 0x170B9958, 0x58307AB6, 0x3B627463,
+0x0B981BEA, 0xD8E9A038, 0x723219E7, 0x4F6E5470, 0xE4F3CF92, 0x37AACC8A, 0xA4E46500, 0xE44DDA39,
+0x68690180, 0x33143C47, 0x9A6EE438, 0x5FA00F23, 0xD2CEE248, 0x46090D1A, 0xDE5491AE, 0x417D853E,
+0xC607B731, 0x79D7DCCF, 0x13200C03, 0x07CAB5E9, 0xB59525EA, 0xE47B66A5, 0xB125AAAB, 0x20CCFE07,
+0x82F1F4E8, 0xCF44BD2B, 0xC462D58D, 0x60A6A73B, 0x0D0CA712, 0xFE342922, 0x15123217, 0x7A02E89D,
+0x49B44659, 0xB9F3AE54, 0xAFC472BC, 0x79AF1A6D, 0x7430BA59, 0xEA13F81C, 0x33592D7D, 0x1EF1E1DC,
+0xF51FF0C8, 0x80F7B07E, 0xC1536EBB, 0x586CB41D, 0x10AF823C, 0x390EA571, 0x7D54C302, 0xA049ECBE,
+0x368C3981, 0x38B72BEE, 0x833C5F98, 0x2E18D066, 0x5742B0D2, 0xA8F5F0B8, 0x9144935D, 0x7392A908,
+0x3175DBC0, 0x29AA2F7C, 0xF53FED73, 0xFE41236B, 0x091E47EC, 0xD2195647, 0xCAAEA8B5, 0x0ED9750E,
+0xF5027456, 0xF1838780, 0x16FFE8EE, 0xA21568C6, 0xC5E4FCAF, 0x27C24C4B, 0x3DE89E8E, 0x5464ADC6,
+0x865C8493, 0x41032697, 0xD5F82075, 0x49167AF7, 0xED1AA45C, 0xA6B20018, 0xB1776BA9, 0x9F2129B6,
+0x611C417D, 0x3B72E8B6, 0x1AA7DB22, 0xF4ADF40E, 0xA24B8EFB, 0xF25C5F9D, 0xE52C047E, 0x3B8C9A26,
+0x4C0760E4, 0x73027C0E, 0x1F5977D8, 0x6CAF979D, 0xEF39719F, 0x70129F6A, 0x0CC821CD, 0x9853AE70,
+0xC3EB24E5, 0xE4EED628, 0x9F904579, 0xFD680398, 0x2C84DF92, 0xF92DA147, 0xB2F7C7C3, 0x59052EB6,
+0x4DF89375, 0x275D0C58, 0xBE32DA96, 0x7A3C4C7F, 0xC5C2B02F, 0x651B2665, 0x36E5DC9B, 0x98B1F08B,
+0x175A5AE0, 0xBEC258CA, 0xDDF6B687, 0x49E3DBE6, 0x07C1C780, 0x63E3B861, 0x05FDAAEC, 0xFA7C38A4,
+0x5EE93618, 0xF8B78C2B, 0xBB5035B7, 0x7E297AC8, 0x6CC27636, 0x30D44C50, 0xECB1065B, 0xB00AB96E,
+0x87B3C67E, 0x0AA61403, 0xF514C18B, 0xDBF3CEEB, 0x62ACA4C1, 0x9A0D1691, 0x07E3DF50, 0xC42070E8,
+0x98F349F7, 0xC1556162, 0x6F7D7109, 0xF6C7B215, 0x73748B4E, 0xAF9F5BFF, 0xDD1B8AE6, 0xA9C710AA,
+0x5965A4DA, 0x762A0F38, 0xD42C7578, 0xBA69C66D, 0x2CCABCB7, 0x932E7065, 0xD6F3F37E, 0x729F1412,
+0xE5EAEB07, 0x1C2D7291, 0x07E5E6C9, 0xCA16EED5, 0xD488558D, 0x235C11EB, 0x579B8BCA, 0xAC352250,
+0x858BD553, 0xECCBE50A, 0x370421F0, 0xA66CD423, 0x1424CB84, 0x286FBE65, 0xDFF5A1E9, 0x71ABB615,
+0xAE331217, 0xE8E333A5, 0x99044B7D, 0x26264E30, 0x35A7FEA1, 0x3E933B79, 0x4151D8A3, 0x672D78D6,
+0xC586C999, 0xEFFEFF6F, 0xD1EC082A, 0x0EB38797, 0x85F77710, 0x5FEAE876, 0x78FBE4E2, 0x6284663A,
+0x6E54B0AF, 0x5C107AF7, 0x24005DF7, 0xA994E2EC, 0xAFDDB6FF, 0x79019A53, 0xE1B8A123, 0x997B7B95,
+0x9BFC63E3, 0xEAEEB40C, 0x14AECFE6, 0xC29A3F38, 0x21833356, 0x6B65DAAC, 0x9AEADA3F, 0x16582D82,
+0xD6E7B8EC, 0xEE67A365, 0x3F33FD50, 0xABD603DC, 0x0DA08D72, 0x69E01AFD, 0x4862B58E, 0xE1DFCA98,
+0x5FE11079, 0x40992E48, 0x0589689B, 0xE836FACC, 0x87FFD4D6, 0x9F5DF070, 0x6BC69520, 0x5CF6F087,
+0x66523DC9, 0x54D0EEA3, 0xDD820FC2, 0x663BFA8E, 0x2561E952, 0xA82EDAB8, 0x3FC1092B, 0x8591A2C1,
+0x0E9E67EF, 0x4A334D9C, 0x867BB16F, 0xB6A1713F, 0xED8D7EFE, 0xF2926C44, 0xD2E97512, 0xE8301103,
+0x3DD30957, 0xEFB71B3F, 0x4AE801D5, 0x8F75F730, 0x0C34FBC9, 0x7A60C668, 0x77908ED9, 0x963C0DE4,
+0x5279E29C, 0x6759B153, 0x747E5E7B, 0x4C510BE5, 0x32BE2132, 0x54B361E0, 0xCB4D9616, 0x3C404BA4,
+0x4BA0E910, 0x05F06AD1, 0xAE3FBC5C, 0x82CB03B4, 0xF0EC45FF, 0x9888791B, 0xDE4B9813, 0xF83B4090,
+0x3CC4BA28, 0x7CFE8854, 0x9CA7BC9D, 0x0E41843E, 0xF92535F6, 0xF19CC699, 0x0821CBF4, 0xF15F3F82,
+0xCF6CC14C, 0xF27DA57E, 0xB8DB8982, 0xFC7E263D, 0x63C36111, 0x61587ABA, 0xB87CB18D, 0x2C806A64,
+0xD8DFFF2C, 0xC8540E77, 0x1A340B85, 0xB6FBA97F, 0x77A1958D, 0x419648E8, 0x80A65729, 0xC3EC1141,
+0x3909010F, 0x84F8C534, 0x2FEDE987, 0x83851AC8, 0xAE88B841, 0xE8284692, 0x3243F04B, 0x9C845E80,
+0x4A7FC52E, 0xF6B1035A, 0x59E1C576, 0x21620CB8, 0xF047E16D, 0x079284B7, 0x00B6C955, 0xA7B19103,
+0x7B9EB069, 0x733E2443, 0x489A6EAE, 0x7BB17B2C, 0x6AB4F848, 0xEFA299A2, 0xC464BE42, 0x36F27FC5,
+0xE70CEAB2, 0x6FCB4031, 0x9C0A14C0, 0x682AA1A3, 0x36E7032C, 0x57BA22A8, 0x085288CE, 0xDE62ADD4,
+0xC0138A07, 0x4A5576F5, 0xC0F33DE3, 0x919ECA7A, 0x14FFDE87, 0x362897AF, 0xD542F683, 0x86FBC0FC,
+0x8CD6DD3E, 0x25832EDF, 0xC2C9EE74, 0xB244A89B, 0xFEAF2F44, 0x1D631217, 0x80BA2267, 0x097D3F4D,
+0x406264AC, 0x0571B5FF, 0x55658770, 0xE12F6AA3, 0x666D9831, 0x37E17306, 0x88D926AB, 0xBB0CC6D9,
+0xA857A201, 0xB24E5A82, 0xF259D2AE, 0xD09D0FAE, 0x87363A50, 0x583F1CC9, 0x653F73F3, 0x0D04970B,
+0x64D1F222, 0xEF7E0E0B, 0x7F5D49DB, 0xAC4549D9, 0x707D1FCF, 0x3A151C06, 0xFE5DEC4A, 0xE3D6CCBA,
+0x0AA3DA9B, 0x4665CBC5, 0xDF7BCD0F, 0x63DD0FF5, 0xC9C2A642, 0xB40B516D, 0xE259A165, 0xE2E454E1,
+0x0A384EDD, 0x1287018F, 0x2A7A8DFD, 0xF854FCF1, 0x79CAA64E, 0x351AC522, 0xEE65C527, 0x7F160E51,
+0xF465AF5C, 0xE671974B, 0xAF75CA8D, 0x47A5EC29, 0x5F93C8AD, 0x6420D4E9, 0xA5CA4610, 0x265F0BF4,
+0x6622036C, 0xB542C8CB, 0xDFD1FA4F, 0x5869BE19, 0x14605EAE, 0xA438FEA7, 0x9523F5FA, 0xE18FCF2B,
+0x5F11F7B1, 0x7A790EBA, 0xDBDD0005, 0x024E0D8B, 0xC387778B, 0x3C0F1274, 0xA722512C, 0xEAB3C2F3,
+0x11B55F3A, 0x9C2DBBD6, 0xA76C80DC, 0xD63A5DD2, 0x320F7AF2, 0xA707544C, 0x889A3C58, 0x50CCA3B0,
+0xD54FE248, 0x22EF12A3, 0xF618F564, 0x1D9266C8, 0x4E08FB46, 0x6D1D41EB, 0x5CFF2094, 0x116ECB97,
+0x46FD4058, 0x38FBE5CC, 0xE008E8EF, 0x578FAF14, 0x3BEED1D9, 0x8C89B4CE, 0xFC0C33D7, 0x0913ECF8,
+0x498D47D1, 0x5644A9B3, 0x6EA66735, 0xA0F3BA09, 0x948B258F, 0xFA8DE3BE, 0x2FB03145, 0x8D0B61B3,
+0x42D6F53D, 0x031FD745, 0xFF86C938, 0xA32BB471, 0x50208969, 0x9F6909C9, 0x680C6D55, 0x13054044,
+0xDFDEBEF7, 0x35600E83, 0xAFB26C47, 0xCAA86F9F, 0x5B5B65A7, 0x599DA0C3, 0x789EC931, 0x0163D6D4,
+0xF7BBA271, 0x5A755052, 0xFA27CE77, 0xD66ED111, 0x7A5BD527, 0x1B26B948, 0xAA11725B, 0x4A6AC4AD,
+0xDD8EA8DF, 0xF0C618D3, 0xF97999E5, 0x00C42C38, 0x8465BE06, 0x7B6912C9, 0x4AF1F070, 0x4F93EEB0,
+0x19A400FC, 0x0F8A6744, 0x7FD642F2, 0x3AE8F32F, 0x84501DDA, 0xB39068C6, 0x2A5BE1A6, 0x08E231F0,
+0xD52F4D13, 0x89326BE0, 0x3981DD90, 0xA986F547, 0xADF1B2E8, 0x6337CFB6, 0x595FCBC0, 0x2D774749,
+0x1D6C5FF1, 0xF403CE90, 0x16792051, 0xCE248A7D, 0x43E76774, 0xA85ED14A, 0xCFBDEB69, 0xDF559AF6,
+0xC3BF33D1, 0xF03BB486, 0x107D04B0, 0x9B9E9432, 0xE4873EC4, 0xFD7C2E89, 0xFA69FD26, 0xD04F8825,
+0xB9C4FF1F, 0x30F0826C, 0x825A8A34, 0x5EBB4ADC, 0xA71C9FF5, 0xE90ECF8A, 0xFEF3270F, 0x25612AB6,
+0xF8560C1F, 0x625A9ECE, 0x12B9B123, 0xA281D55C, 0x276F3B4A, 0x6CDE95D8, 0x7EE9F866, 0xDC769A4F,
+0xC590E1F4, 0xEA845796, 0x013AFD9E, 0x6F8E1A4D, 0xBEDF18E1, 0x2CC567BD, 0x56CBAE9D, 0xF81716E8,
+0x88834AAE, 0x1C67A0AE, 0xDDB4EB33, 0xF0F874E6, 0x4DE9C550, 0xCEAC73AD, 0x5C800FD8, 0x6A31B61A,
+0xA8B3A501, 0x73639607, 0xC95BAE
+
+basegraph=
+1
+
+z_c=
+320
+
+n_cb=
+21120
+
+q_m=
+4
+
+n_filler=
+688
+
+e =
+21592
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v7813.data b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
new file mode 100644
index 0000000..6e1acf5
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v7813.data
@@ -0,0 +1,43 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2017 Intel Corporation
+
+# Origin : FEC5g_DL_1/7813
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x8C4DEB9F, 0x52
+
+output0 =
+0x1A6D0FA6, 0x7017
+
+basegraph=
+2
+
+z_c=
+7
+
+n_cb=
+350
+
+q_m=
+2
+
+n_filler=
+30
+
+e =
+44
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v8568.data b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
new file mode 100644
index 0000000..e9bacd1
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v8568.data
@@ -0,0 +1,70 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+# Origin : FEC5g_DL_1/8568
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0xB6D49CE2, 0x3E96B93F, 0xF02009F6, 0x2DF3D30D, 0x3B06C160, 0x646C69CC, 0x54439F0F, 0xCE0D12C3,
+0x66E8BFD5, 0xA9D22B0C, 0xA9E7343B, 0x2B6EEF01, 0x6B6966C0, 0xB98FE144, 0xC3BF7BAD, 0x1B40DF1C,
+0x973B12DC, 0x46E25E90, 0xB324ACCA, 0x5F0ED2B9, 0xBB4F
+
+output0 =
+0x8F1A7C00, 0x836CF0E5, 0x717CE52D, 0xEE86FB44, 0x21621E25, 0x58425AB5, 0xECA0F645, 0xAE9E63E6,
+0x287D84BC, 0x9F19A401, 0xD68C4CA3, 0x354ACA5A, 0xD68D7FF8, 0xFAA84645, 0xCF0DBC28, 0x693C50F0,
+0x9A3CD23C, 0x57E97520, 0x929BAF90, 0x8E2BA7D8, 0x5EF0FB8A, 0xFFE7B153, 0x9E164074, 0x4D06F0A2,
+0x6BC68E5B, 0xB8274587, 0x69641DFC, 0xF5DC89A0, 0x4F8E741C, 0x1CB682DA, 0xEF36E914, 0x8BDEBA30,
+0x4B6777E2, 0xEFBFD14C, 0x85F0DF67, 0x55DBD201, 0xCF29A01A, 0x862BD273, 0x1F43CFAF, 0x5CB128E9,
+0x9C322654, 0xF8E4E47A, 0x0FCD1806, 0x0C7B6BC7, 0xF7B9748A, 0x6DE5D592, 0x0D119373, 0x5F7DC28C,
+0x68F26F39, 0xAA47E18A, 0x479CDAAF, 0xE19DCBB3, 0xA72B475D, 0x2E781ED4, 0x4CBB910A, 0x5E5A5A1D,
+0x2F668621, 0x86BD9FE1, 0xF1DC12E5, 0xB652E2C1, 0x2E0AC199, 0x059E43C4, 0x14F9B51E, 0x7DA378C5,
+0x214E4D5F, 0x72ECE751, 0xF997A106, 0x3F362F62, 0x045DCA85, 0xAD27A58E, 0xB73B4390, 0xEB76C5D2,
+0x58CE8B78, 0x73A1D1EA, 0x9705C8E4, 0x224703E8, 0xA0DE7885, 0x9CDBBEE0, 0xBAAFAE85, 0x1B5CFB8A,
+0xF66B5209, 0x979335BB, 0x2AA6C7E2, 0x7E3958E7, 0xD39F8BC0, 0xD73BEA43, 0x24C74D3E, 0x9372C2D7,
+0x49804670, 0xB3A983FC, 0xFA6DB662, 0x4E657550, 0xDDF757C2, 0xA7265DE7, 0x51BFA1A6, 0x63E1325D,
+0x1FDBE953, 0x17348EDB, 0x6B6DC5C0, 0xE335772B, 0x32612617, 0xC13B63EB, 0x8C40891A, 0xF3566154,
+0xF5345933, 0xAD9AB800, 0x4CF92B41, 0xF3B32673, 0x80577879, 0x19F8BB0E, 0xAD677483, 0x21B2EDC7,
+0x3F96C8E2, 0x7B9211B7, 0x11909101, 0x6A9D9BF5, 0xC4A0E407, 0x5B013820, 0xD2102C31, 0xDC6F548A,
+0xA4F6B72A, 0x79F19991, 0x6A21BE3C, 0x2E5CF7A5, 0xDCBB384B, 0xB05B5649, 0x1D61CCF1, 0x9DC122F3,
+0x00CA6A82, 0xB7CECDF0, 0x605252A3, 0x0500B498, 0x61AA1618, 0x669788EF, 0xF0DB599F, 0x3ED04C4A,
+0x17387F1E, 0xBDAC7B52, 0xEE7D1E0D, 0x58AF212C, 0x0CB064F8, 0x646239DB, 0x88CF9549, 0xD3C7C652,
+0xB82109DB, 0x22225244, 0x305F8384, 0x9B4166D5, 0x704FA445, 0x956A0CA5, 0x89963D07, 0x5EF61FAB,
+0xF71EAD06, 0xA47FB814, 0x86581A5C, 0xB81B9445, 0x4ECD608E, 0xE369E9A3, 0xFEB80EE5, 0x1399AB02,
+0x30A74BEA, 0xCF08B948, 0xB0857028, 0xC81F8CD8, 0x64E13623, 0xAFF927F5, 0x592D7629, 0x7295DE02,
+0xE98E2F04, 0x7407C828, 0x85EE9A47, 0xF9B6F671, 0x77F40DF0, 0x81CE7DA1, 0xB8732D5F, 0xC7AC742E,
+0xF8623836, 0xE68F4E66, 0x18F29BB9, 0xF57E3350, 0x0E14399C, 0x114ACFA1, 0xFECFBDAA, 0xB0894694,
+0xC8DF6D23, 0x7C71FB18, 0x91F00CF2, 0x6A45BC52, 0xFE99962D, 0x41FEBA3D, 0x5C1BB499, 0x51E50591,
+0x04D9CDDE, 0x503FBB80, 0x2788B4EE, 0x82A545D8, 0x5F6DD45D, 0x7AE48BE2, 0x4C653419, 0x3C32D58C,
+0x48788C71, 0x97A054A3, 0x7FC443B4, 0x805DFF9E, 0xA607D2C6, 0x02DA82C2, 0x884664C5
+
+basegraph=
+2
+
+z_c=
+72
+
+n_cb=
+3600
+
+q_m=
+2
+
+n_filler=
+64
+
+e =
+6624
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH
+
+expected_status =
+OK
diff --git a/app/test-bbdev/test_vectors/ldpc_enc_v9503.data b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
new file mode 100644
index 0000000..7fc8c95
--- /dev/null
+++ b/app/test-bbdev/test_vectors/ldpc_enc_v9503.data
@@ -0,0 +1,197 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Intel Corporation
+
+# Origin : FEC5g_DL_1/9503
+
+op_type =
+RTE_BBDEV_OP_LDPC_ENC
+
+input0 =
+0x88CCED56, 0x1C072C76, 0xD4D23B69, 0x78C979BF, 0x60764BE3, 0x4470E86B, 0x20A46F84, 0xA0211B5C, 0xE1952001, 0xB77912DE, 0x52E8BA16,
+0xE5BE8445, 0x95093ACF, 0xA8BE03D2, 0x49DBB5AB, 0xC3946403, 0x4DD44236, 0xC2833E65, 0x7288C53B, 0xD64FB75E, 0x7438C1EC, 0x71070BEC,
+0xA40F8094, 0xABF43E46, 0x564487F5, 0x8435AC89, 0x2D98A4C3, 0x07CD13F4, 0xB44CEEA6, 0x2E00DD83, 0x12EF45EB, 0x01A047B8, 0xBC563FD5,
+0xCA5C1136, 0x7AB9F2C8, 0xD62C59A9, 0x913DF674, 0xC900322A, 0xCF54042E, 0x6CAADB1E, 0x8077B98C, 0xBCB51468, 0x58339E5E, 0x1D176854,
+0xF9E2D74A, 0x2994B28A, 0xD0E46263, 0xCD8A0FDB, 0x0119B915, 0x1E5433C9, 0xEA298A7D, 0x9EB4FC8D, 0xEF93B537, 0x6D441397, 0x6A4C8DB3,
+0xB8E4AFE9, 0x1520BC1C, 0x8669961B, 0x5D484802, 0xC2793340, 0xB5FE7945, 0x43AC7CE2, 0xB74B70C1, 0xFCF56F87, 0x3E146A49, 0x0391D092,
+0x672D2427, 0xDC91BB53, 0xEB24AC1F, 0xCE0D8E63, 0xF12F7ED8, 0xB3192024, 0x0697AE9C, 0x3415F178, 0xD8410FFC, 0xE34734DE, 0x6C6E6BF1,
+0xDCD211C3, 0xBF6B0B87, 0xA1624F47, 0x3524BC4D, 0x4B4A1891, 0x8691223C, 0x12EB2DA4, 0x0B51F616, 0x31276F0E, 0x86CB4D17, 0x15CA0F9B,
+0xEB989F98, 0x1141D335, 0x442C699F, 0x82E9758B, 0x267E6D4D, 0x71BAC54A, 0x2FBCBD52, 0xA0966795, 0xEB08B437, 0x1A9899A0, 0x26484B82,
+0x3AEE43A8, 0xC409BE45, 0xCF8C6EC9, 0x098DE63F, 0xC3BEA60B, 0xCB7A5B6A, 0xCBF2A44B, 0x31E9FA4C, 0x34FD7E88, 0xA3C5AF89, 0xF13C8E2B,
+0xC01C79FA, 0x622B9FD8, 0x692D4C4F, 0x712BC24C, 0x16FBD6C3, 0x7B1BBC38, 0x63F1E328, 0x6F4B
+
+output0 =
+0x6ED462FE, 0x29726470, 0xE49C87C1, 0x6594725E, 0x64C81AE1, 0xA30C91C2, 0x5B4261AB, 0x7A44E3A4,
+ 0xACBD3DC8, 0x319AF530, 0xF3B21EC1, 0xAC180011, 0x26319FF9, 0x5946FBFD, 0x6F31959A, 0x571501D9,
+ 0xFB1F62B7, 0xF19F6C36, 0x43436C4A, 0x8CA5F436, 0x18AF91B4, 0xD86ED79F, 0x8732D29C, 0x6CE3B559,
+ 0x2DEA712F, 0x52C2E21A, 0x5C4E884C, 0xD2F50500, 0x2140E848, 0xABE47066, 0x8AE3FC46, 0xF0298999,
+ 0x829FE184, 0x51D53B6B, 0x7546D03C, 0xF1CB22DA, 0xB9D6F966, 0x85660A1F, 0xC1296566, 0xB2122E16,
+ 0x2AA38C25, 0xD7AF18FC, 0x489BDDC5, 0x93183097, 0x4C694A3C, 0x40B325F8, 0xEE05DAB2, 0xA6E0C990,
+ 0x839A7753, 0x0251D207, 0x5E1EC6B5, 0xED523076, 0xD985E23A, 0x8CA88259, 0xB0EFF6D4, 0xA9D7749B,
+ 0x32CA6F0E, 0xAAA84E97, 0x0F137B83, 0xE73C3175, 0xA3940FDA, 0xD878B121, 0xFFC8D2EC, 0x95CB65AC,
+ 0xB1CBE446, 0x73520449, 0x7D929F16, 0x69D1873C, 0x85640C01, 0xF2228024, 0x0A5E0461, 0x58B0933A,
+ 0xD37E2375, 0x36CEECEF, 0xE57A48F8, 0x4A35B5C9, 0x016A16A0, 0x6F9BCF30, 0xEB7C3BD0, 0xB1AF27FE,
+ 0x9C389360, 0xA91F2142, 0x51E618D3, 0x5F045697, 0x654C6A49, 0x2E38E30C, 0x9E8F1E63, 0xF1B25686,
+ 0xA0CDFB02, 0xDAEC605D, 0xED910B79, 0xA8E1A341, 0xAD6BD0A3, 0x03BABB0D, 0x4059355C, 0x5ECB8646,
+ 0xFDD9E0C6, 0x69106FD2, 0x47BF857E, 0x740F6313, 0xAB15E1FF, 0x94B21225, 0x600FEDF3, 0x1EF83A71,
+ 0xCE6956EE, 0xE538FC7D, 0x47520BE0, 0xA1A20CF2, 0xCB452B91, 0xEACB9E3C, 0xBA242A34, 0x13C81868,
+ 0xA58AB271, 0x724B350D, 0x95131286, 0xCF74DD61, 0x1D0CF41B, 0x38D046D2, 0xB709708D, 0x4D479AA8,
+ 0x3CBF6817, 0xDF115777, 0xBE69B850, 0x071A2B4C, 0xF3246B56, 0x2881CBA0, 0xAE158E87, 0x36538CB0,
+ 0xEF879197, 0xDBA9C1C7, 0x4EF7235A, 0x56120670, 0xC22DBEC7, 0x7071A05C, 0x376ADBD4, 0x5DD586FC,
+ 0xA638A621, 0x6D49A92A, 0x66F0C925, 0x023FC9DE, 0xF7CA1D36, 0xAF19A18B, 0x2A787792, 0x518938D7,
+ 0x25DE7B4A, 0xDEBD9010, 0x9683558D, 0x9C5694C7, 0x8B2558D0, 0x790CD121, 0x0A35C0D8, 0xCD4FBCED,
+ 0xB89F3275, 0x64A49655, 0xED7992A1, 0xAFB0A4D0, 0x29A9EB1B, 0x9244B2C0, 0x2CD88F45, 0x4AA1E98E,
+ 0x8E32CC3C, 0x8BE5DC7B, 0x759C8B24, 0x8AA119BE, 0x9CFEA065, 0x071F86FD, 0xB83F8181, 0x604FF2FB,
+ 0xAACDC394, 0x0BCC72F5, 0xE9C0CB19, 0x56EAE15F, 0xD33B8DEF, 0x01A1B007, 0xBED7C1A3, 0x18788E49,
+ 0xB565EA30, 0xC269F619, 0x1CF1B024, 0x067E9F59, 0x78E61AB4, 0x3D46CFBB, 0xE58E910B, 0x8E7ACF53,
+ 0x1EB9C15D, 0x4E3C43BF, 0xEF3D8F20, 0x5CC0A030, 0xE10AE4E7, 0xABE24941, 0x9A0C4046, 0x24E090CF,
+ 0x3248C414, 0xAF76560F, 0xCD1B106C, 0x70438AD4, 0x3463D8B0, 0xD85860FE, 0xFCDF0D57, 0xA2DBC09E,
+ 0x44C728C1, 0xD8FEE73E, 0xB1E6B4A5, 0xD0CC95CD, 0xCCEF186F, 0x70AC5D98, 0x57D21267, 0x8543F446,
+ 0x15C8EAA9, 0x0DD357D4, 0x4CE9C090, 0x4E91FADF, 0xE0658E27, 0xFF7AA5D6, 0x176ED723, 0x70D009CB,
+ 0x416ADBAA, 0x1C45865D, 0x105F3A0E, 0x14730450, 0xD0FA1AC9, 0xB76F268C, 0x7B075289, 0xA9455796,
+ 0x65E02F3E, 0xB74521F2, 0xF6CAA6C7, 0x94ABFDAD, 0x1E6D1087, 0xC25A9257, 0x87FAF9A4, 0x5184A0FA,
+ 0x240023D7, 0x7AE0ED45, 0x06E0A838, 0xBB018F31, 0x0FA836D5, 0x09CF6AEC, 0x9BC4F2B2, 0xAE92D5BA,
+ 0xE724036E, 0xE5606DDE, 0x631448F9, 0xFD59B782, 0xF17052E4, 0x66EA4C50, 0xF72C1768, 0x5C24ECEC,
+ 0x6B01B118, 0x89F8A3AB, 0x465FF462, 0xC3896A00, 0xFEC06004, 0xE2DFC70C, 0x3ACF338F, 0x1552E9D0,
+ 0x9F699B77, 0x60AC6D29, 0xBF47FD38, 0x826B0CA8, 0x0515A7AC, 0x1380A222, 0x7D054EA0, 0x3D1BCEC0,
+ 0x21AB6CF3, 0xA889E915, 0xF09D9756, 0x08BA519A, 0xCFFB6BD3, 0x7D5EF4F9, 0x34A0E942, 0x8569A327,
+ 0xFDDC5269, 0x60D8D543, 0x88B34B88, 0x50DEAA10, 0xD0563E1F, 0x80CD122B, 0xDC11607F, 0xCD9D7E05,
+ 0xC0F3510E, 0x414A7545, 0xB8211557, 0x103E6F53, 0x08A47672, 0x04D9C391, 0x3281F25C, 0x7526AAD2,
+ 0x3C89B43B, 0xBA767E59, 0xA2788EAC, 0x5EF9DF3D, 0x8F72BBE6, 0xC4B52A2B, 0xE81A80E9, 0xCD6B24D5,
+ 0x4F934751, 0xA3FCC2B5, 0x1C4FB12A, 0x7C363E45, 0x237CB63A, 0x1F26D6FD, 0xAAF3FE61, 0x48D3B3A8,
+ 0xA2A77A81, 0xADCF4AB4, 0xDF94F9B4, 0x465EA838, 0xCE4BA15C, 0x75826F5A, 0xD537E32C, 0x85F8FECD,
+ 0xD07CAB1C, 0x34F91310, 0xC40B36CA, 0xCCE0297E, 0xFB276610, 0x67DF82EC, 0x8BB58FAA, 0xCEA3BDC2,
+ 0x02B21D68, 0xCC1F8A6C, 0xF902AF4E, 0x271828EA, 0x9028298A, 0xB5BF0156, 0x5A3B3188, 0x6CCB6806,
+ 0xE2F3A4A2, 0x3B776BB9, 0x66D01790, 0x133F2414, 0x1445FE7D, 0x5CC79E5B, 0xB95FD30F, 0x50971FC5,
+ 0x8D6AFECA, 0x3FB2427C, 0xC1A980EC, 0x54C9F2AF, 0x0F509DF3, 0x1B950AA4, 0x1E5B1596, 0x93E974B9,
+ 0x71D51A0F, 0xC973F4DD, 0x79BF62A6, 0xC72F58F9, 0xCAD478D6, 0x0F7C36C7, 0x05D08481, 0x43958D67,
+ 0x93F11E1A, 0xDCDDCE62, 0xB457AC62, 0xD4A98268, 0xA793471A, 0x7AB637E0, 0x1B9BA86C, 0x456B5EF7,
+ 0xD2E75711, 0xF95E6BCD, 0xD3043467, 0x056F1621, 0x21D58D4E, 0x0C9EF57E, 0x96B645B1, 0xF5A80340,
+ 0xBD9A4C7A, 0x4D94A305, 0x59D0F9B4, 0x113F56F9, 0xE0A948B5, 0xBF982299, 0xA05D1EA1, 0xE9C50F8A,
+ 0xAF6B8F04, 0x6B05485E, 0x17DD458A, 0xFB819464, 0x5CE2F61F, 0xECF95F48, 0xA26CFBA2, 0x6A0FD00F,
+ 0xA7A2CB0F, 0xFE10768D, 0x4A258743, 0xBBF2C41A, 0xF519DBEE, 0x9DA676B6, 0xE89449C9, 0x3E13EBE5,
+ 0x4A4A42A5, 0x42663182, 0xDAAF85AB, 0xCC671BCB, 0x217491EE, 0xDCC9B6F2, 0xE1A3A7EA, 0x7B13F2F9,
+ 0xCFFCBC9F, 0x3D8FF387, 0x71ABA888, 0x2D3FE4C1, 0x081AB3DC, 0xBF21BA4B, 0x4ACE0F00, 0x6F5AB592,
+ 0xD328F08C, 0x542388E9, 0xE7A4157A, 0xE8532856, 0xE8DC528E, 0x3F2356AE, 0x76867882, 0xEC11E6D0,
+ 0x0C2DD257, 0x40A7C558, 0x354F885C, 0x2A2E0757, 0x6C0A6D95, 0xE0C23A09, 0xD1F32FF7, 0x7E27842E,
+ 0x3CDFD97E, 0x2F6807FB, 0xDBED07BD, 0xA039645B, 0x324B0955, 0x73620D27, 0x0C47D75F, 0x511BD37A,
+ 0xE80C4C44, 0xA3D77AFE, 0x058B503D, 0x391AC187, 0xD7425F0B, 0x93876765, 0x10CADF4C, 0xC4F3539A,
+ 0xF17B776C, 0x017BDEFA, 0x74F4651F, 0x65FBC1E5, 0xF55CC6B6, 0x1752401A, 0x85FB6434, 0xB8FD0F06,
+ 0x4D0D80FF, 0x0DD8438D, 0x1C5844B7, 0x31ECF66B, 0xF8A8B528, 0xA9BE0373, 0xC401C7FC, 0x3BA1FFF4,
+ 0x63946BBD, 0x82514893, 0x9CE303D6, 0x51EA2484, 0x054CACA2, 0x3F812B32, 0x0F3C603F, 0x4B3D86B6,
+ 0xD33F5950, 0x3340BFC0, 0x47CEB79D, 0x1CAB5D3C, 0x74897EB5, 0x1C320D6D, 0x8F0480D2, 0x1384331B,
+ 0x8363A7B3, 0xA5439504, 0x0E06AA80, 0x4BBFF55C, 0x470094F3, 0x8DE8E9AA, 0xABA72796, 0x4333B263,
+ 0x6FEF04EB, 0xF921C722, 0x9599B4C8, 0xBFEFF55A, 0xF89AA502, 0xDFE85218, 0x0EE15930, 0x8B2AA7F8,
+ 0xDDB03823, 0x7427A3C2, 0x8E4AF556, 0x66A9640E, 0x2EA271AE, 0xFC5BB50C, 0xDC50B432, 0xF78BB3D6,
+ 0xA06156DE, 0x5A7D7A40, 0x40BD74BF, 0x882CC19B, 0xDB2B6143, 0x5532686C, 0xA6D65320, 0x6AB5B32A,
+ 0x34129535, 0x9E41D92F, 0x3D86A085, 0xA27DE0C1, 0x6FFBEC11, 0x77A4BE81, 0xCE1DF886, 0x318E96BA,
+ 0x82C84B84, 0x40B9874F, 0x39F9F9A9, 0x21E0AACB, 0x237FC858, 0xFF700E2D, 0xA840518D, 0x5E5ED583,
+ 0x7B11CB4E, 0x99733B7F, 0xFFAAF7A9, 0xB8CB13B7, 0xE67AE45C, 0xFFDA2FC2, 0x47D08BD7, 0xD68BACF6,
+ 0xDAAE30ED, 0x95735CAF, 0xF896B165, 0x395BC94E, 0xADF803B0, 0x76B82F4D, 0xF312DD33, 0x0DD0A49D,
+ 0x0852B35E, 0x4DF14366, 0xBA01C779, 0x1415A8FA, 0xDC10F525, 0x1CE06D80, 0x953089E6, 0x933C3EE5,
+ 0xC18B1022, 0xFAD11D71, 0xA1EA92BF, 0x2AE61798, 0x63D0C0CF, 0x1CF8CA34, 0xDF748AFB, 0xF0FDE897,
+ 0x26FC4399, 0xE563FFC5, 0xE6AFE218, 0x5EE3254B, 0x76565E08, 0x70F5EFBE, 0xBD66AC9A, 0x90853CB1,
+ 0xA002CE55, 0xAFE263F4, 0x804DA5A5, 0xBB971F95, 0x775BDE46, 0xEDA15B5F, 0x3D5A2CFE, 0x6D9FE953,
+ 0xE84541F5, 0x6574FB29, 0xFD3ADC69, 0x1BAEDDED, 0xE3F810C2, 0x87CC8D7C, 0xDC23F894, 0x7635A6DC,
+ 0x294E131B, 0x62FA4471, 0x83D3870E, 0xF82B9324, 0x8A493E04, 0xA8FCDF75, 0x20583A80, 0x5A94424E,
+ 0x18CED906, 0xB417F24A, 0x47089341, 0x62A432C0, 0xFDC17DFD, 0x5B89C6D2, 0xC8C8ED37, 0xD44D38B1,
+ 0x9A6DFF2C, 0x7C5ECB65, 0x76814C50, 0xB3D56A33, 0x5DF124F8, 0xDB92A5D9, 0x210F2E0D, 0x50FFFF1B,
+ 0x1B7ECD90, 0x481ED2FE, 0x094DA8E8, 0xF111F8FA, 0xAC7872DF, 0x4B8FE240, 0xA7CF01FD, 0x72AFAF1B,
+ 0x27BE7F7E, 0xE5F42B34, 0x02807296, 0x325F9CF6, 0x97EE1C92, 0xD5E6F65C, 0x7EA2490F, 0x666E3451,
+ 0xB17E6A43, 0x1AFBE46E, 0x8D2B871B, 0xD52A1A9E, 0x41EBA711, 0x9D4B906B, 0xAEB5A2F6, 0x7EC530E7,
+ 0x063FC87E, 0x48830732, 0xE5EC2B25, 0xA17B0F26, 0x2C63A878, 0x7A1362A1, 0x68B4DE31, 0x6EC14B7E,
+ 0xE65C3B05, 0x8EB452EC, 0xB6DD94CA, 0x8DC592C5, 0x402EA8BE, 0x689F131B, 0xDA3A54D1, 0x41D264AC,
+ 0xAD150ECF, 0xD7750790, 0xBD46E2A0, 0x2DC97F87, 0x2476F6AE, 0x28F4778E, 0xB4B9E75A, 0xE5532AD6,
+ 0xE58A7485, 0xDFDD2553, 0x779D3F91, 0xD89F3033, 0x42BB4152, 0x2F6EFB01, 0xF72C43BB, 0xF1DB8663,
+ 0x5BA625E2, 0x17180017, 0x151F03B3, 0x7FDA9772, 0x1DEB2F8D, 0x178DE5EE, 0xDFF10ACA, 0x2DC29F2A,
+ 0xF2797346, 0xC298535D, 0xB56C1D35, 0x6389138B, 0x54B732AE, 0x3FAF9958, 0x3BFE3E52, 0xA311D83E,
+ 0x50E7B0BD, 0xC28F97B4, 0x8C1FAAB7, 0xD22BD453, 0x4E6A4D65, 0x626B6251, 0x1F547F6C, 0xEF8105A0,
+ 0xB7A062B6, 0xE1325CC7, 0x8207E7A2, 0xB0A9E0D6, 0x097B78C1, 0xC41D4176, 0x13DB573C, 0x5291E598,
+ 0xF4D1AFB4, 0xA93FE970, 0x673042D8, 0xCC98A35A, 0xCEBD4AE5, 0x47B8BB39, 0x5F8A294E, 0x37FDA881,
+ 0x9E81D5BD, 0x47691BD1, 0xFB92FBF8, 0x24AA898D, 0x0D0B5B29, 0xE5E11928, 0x7D356637, 0xC4525D0E,
+ 0x72AFE781, 0xEBE53FCD, 0xBCBB299C, 0xC40B26D3, 0x1C049A63, 0x4621C7F8, 0xD3337531, 0xF5CCAE80,
+ 0x5D3D0BB7, 0x2246BD17, 0xF158D4F9, 0xE5CB58A2, 0x07F5F1E1, 0x9D420346, 0x952C186B, 0x9DBB2227,
+ 0x203D1639, 0xC022D8AD, 0x7A91F3DD, 0x9326CB7B, 0x2971F3FA, 0x7EF8C14B, 0xB7B468DA, 0x840A9104,
+ 0x6F811C48, 0xC0DAC40B, 0x68D75281, 0xB7DCB2D8, 0x9A216C54, 0xEE710DB9, 0x54ADDAC6, 0xF6F71ECF,
+ 0x6F1E0D83, 0xDE5ECA0D, 0xEA40DE93, 0x962D60E7, 0x6B575E29, 0xFFCC6677, 0x0D879692, 0x728CBE24,
+ 0x9011B3F8, 0xAB260F9E, 0x5D71E2CA, 0x501F6613, 0x5F16EE75, 0x0D33E974, 0x8865BBE8, 0x10495EA6,
+ 0x393032AB, 0x6C7F4A61, 0xB685D152, 0x29D429A4, 0x24CA7E33, 0xCD26F3F2, 0x78D85078, 0x0BA90BA3,
+ 0x360CB744, 0xDF999168, 0xB60B3644, 0x39EED49A, 0x4A794E4A, 0x3B6715BF, 0x92D35DC9, 0xF640ADB6,
+ 0xFA96EF3D, 0x0DC22AD1, 0x48262E68, 0x6F620F37, 0x6B29E242, 0xC6FBEEB6, 0x3034A0D9, 0x122EF44F,
+ 0x7EEF61DF, 0xF3854D20, 0x0F84C1DB, 0x0DE504BF, 0x8AE763ED, 0x369AD35F, 0x8BA7B643, 0x44933BB5,
+ 0x49E96357, 0x4C7F9884, 0x2A5BF491, 0xBB8DCDC2, 0x3873C5F5, 0x0DB1AB26, 0x09FF188A, 0x93DE180D,
+ 0xBA757CAC, 0x06AFFBE6, 0x12B37F82, 0x150D3234, 0xC2C0AB1E, 0xC8B4D8F3, 0x65B7BB96, 0xBBF951B8,
+ 0xC4A03C44, 0x7E2FF9B6, 0x86592827, 0xECE0BE1B, 0x0DB32865, 0x5FC2CD73, 0x34AD2D16, 0x3B2057A7,
+ 0xC32C663F, 0xA85CD1EB, 0xEBD5BCF3, 0x439DC2FF, 0x93379CAE, 0x99273984, 0x3659A11F, 0xD5FF53BD,
+ 0x38704C43, 0x3D782532, 0xD7306729, 0x420E909F, 0x4840C5F3, 0xDA80DF8D, 0x53395E04, 0xEF690DCF,
+ 0xF9738931, 0xE91F7065, 0x5EB901A8, 0x176C6A2C, 0x25D062AE, 0xE4CCCB95, 0x93C87277, 0xF8FF911C,
+ 0xD7AE6706, 0xE704A40E, 0x38BCF64B, 0xDDFFF9FD, 0xD1BDE381, 0xA4313A0B, 0x48DDA520, 0xD064D1E3,
+ 0xDBFD61EC, 0x7EA87E9A, 0xF894AAFD, 0xB5565368, 0x2C34933D, 0xF0F50DE9, 0xF91EB25C, 0xE3EC3B8E,
+ 0x5E9409A7, 0xB2A9D39A, 0xB6B19F3F, 0xA6685DC9, 0xCAFC5B74, 0x4CC15F7F, 0x114E5709, 0x31B6E0EB,
+ 0x8CDAA5C4, 0xF5ABD631, 0x12A4A9C0, 0x969011BE, 0x9AB39E96, 0x0D406569, 0x8AE25103, 0x68474C26,
+ 0x9E8D006F, 0x9C8E4F0B, 0x314630FD, 0x2F30B254, 0xFE88FCF4, 0x941FBE2D, 0xC03B55A3, 0xEE474898,
+ 0xEC9B3BD2, 0xDDE00C4B, 0x7F192B54, 0xA25A0DC1, 0xDCF18F59, 0x55F674B4, 0xF6734A46, 0x92B7A7E2,
+ 0xCEDA18D8, 0x90EA738E, 0x7C98FEE8, 0xFC3DE7ED, 0x4075569F, 0x8989B676, 0x326B34DA, 0x52AC749C,
+ 0xAF71ACF8, 0xDC1F65F4, 0x408459F9, 0xD46B650F, 0xFAEDB779, 0xBC0C6EDB, 0xF68DB879, 0x40071FCD,
+ 0x2D01AC86, 0x7952D58A, 0x4F7A42BA, 0xD5C9306C, 0xFA7CC252, 0x48285F83, 0x51CD6BC3, 0x8212BC4D,
+ 0x53828B06, 0x8986B36F, 0x6E00951C, 0x6505074F, 0xAB3AF4CC, 0x12D92810, 0x44F4D0B5, 0x0D7DBCDD,
+ 0x152A5968, 0xA92C4ECA, 0x6795E17F, 0xD02C875E, 0xA4B5A04C, 0x2F0C4295, 0x72678451, 0x59B87A4C,
+ 0xB3AD2988, 0x7B717173, 0x6D0EC6EB, 0xF73B4FC7, 0x645D56E0, 0xBC73769E, 0x9A83ED5C, 0xCE5B332A,
+ 0x151A4D6C, 0xDEB26C33, 0xBA7CFEA9, 0x0FB2D875, 0xE0045E66, 0x9DB0072A, 0x5CFB3C42, 0x8C3FEFD5,
+ 0x4E7CB65C, 0x2905EC79, 0xA2F6C308, 0x296A6794, 0xB589571E, 0x4638BC8F, 0x964B8B40, 0xBE27615F,
+ 0x4E95C30C, 0x2B56A6A8, 0x4BC50BC3, 0x497BB78B, 0x8860A6CC, 0x80830DB7, 0x9D726E3A, 0xE63600FD,
+ 0x7A68F80B, 0x1C5CCCA0, 0x1784B6A4, 0xBCA7EF08, 0x425ABF74, 0x3663AD11, 0x72F2AEC0, 0xA4A940F0,
+ 0xBBC08817, 0x5C158691, 0x7C1ECC0E, 0x1818BB5B, 0x0DE17D9F, 0x350D4BB6, 0xAC21F0FB, 0xB913C7B0,
+ 0xE9DC26F6, 0x25B995C5, 0x0D2E9E6F, 0xD39C93A8, 0x1C775CED, 0xF1E69A7D, 0x0025310F, 0x782BBDF8,
+ 0xFD3E83E4, 0xB5DD602E, 0x1CD9044C, 0x2AFC3405, 0x79E32E1E, 0xB59B4A79, 0x4609271E, 0x1C5E4D7A,
+ 0xA74D0009, 0x319A07E9, 0xCAC3A6FF, 0x8B515C07, 0xE80FE11D, 0x1D59CF05, 0x38F946AE, 0x6324D94E,
+ 0x313D3FE8, 0x310AF64C, 0x3CDE2571, 0x0644DA97, 0xEADBF286, 0x7B5DACA1, 0x8D5D3A54, 0x1376A003,
+ 0x51774091, 0x562A7891, 0xC246A9FA, 0x82C1C05F, 0x0D662D24, 0xAEDDA534, 0x5A96ED06, 0x2C055326,
+ 0xB0F2F5B0, 0x21C1F0F6, 0x6C39F1DE, 0xDE48E8FE, 0xB5CD1538, 0xC4E356AC, 0x1B24FE63, 0xF36D1426,
+ 0xB8B827D2, 0x1576F620, 0x3F49589E, 0xC438975C, 0x64880EDA, 0x7C322884, 0xD3978FBD, 0x4787B61E,
+ 0x2E192772, 0x0584B589, 0x0EAAA684, 0x6D81DE51, 0x63717598, 0x08A48B4D, 0x2DF88EC5, 0xA647285C,
+ 0xFC81F7AE, 0x10E48D34, 0x963F5C91, 0x8F592492, 0xC79010B8, 0x8A6D4936, 0x4759E38B, 0xACFC5255,
+ 0x0C9D02B7, 0x1B52A34E, 0x3B0A60A1, 0x1DB4E220, 0x23DCD523, 0xEA42AD41, 0x9B3CB86B, 0x6C503824,
+ 0x41DC835D, 0x22A311A5, 0x7B7AD03E, 0x6AFA5972, 0x3E506D92, 0x04FED79C, 0xCE801EEF, 0x7BA17C52,
+ 0x3AFFBB6A, 0x96A23185, 0x74316B7B, 0x11D330F6, 0x8484E528, 0xB643261D, 0xCC076540, 0x9116E092,
+ 0x4B6D5634, 0xC9532DCB, 0x0CBBB981, 0xE8D8E41F, 0x7573408A, 0x684F202D, 0x9A92649E, 0xF2CF0C39,
+ 0xF6C540AE, 0x29368636, 0x6A5BD7FB, 0x5044B256, 0x35AEC028, 0x8C12E363, 0xE0A2FE6D, 0x9E8EB149,
+ 0x2ED1CF45, 0x54A9880B, 0x4E295354, 0x83730F2E, 0x279AD027, 0x7051921F, 0xC4E219AC, 0x8B540A9B,
+ 0x947E9DF5, 0x28B61847, 0xC4E32434, 0xF9227028, 0x3D489511, 0xD5A41195, 0xA03EE1BD, 0xD761441F,
+ 0x402F7502, 0x5AB68BEF, 0x5555B735, 0x5918623F, 0x983735E9, 0xE332F1B8, 0x48D83C28, 0x81318EE2,
+ 0xABB8AA53, 0x01F0C3CE, 0xB4291A62, 0x89344F27, 0x5FDEEA6C, 0xE6D22F86, 0x9988C7DC, 0x051A1432,
+ 0xE11867BC, 0xEFA49EEF, 0x48AADD79, 0x33633BF3, 0xA56B57B4, 0xA253AB9F, 0x7FC8340A, 0xAB73B132,
+ 0xF1DFB6CC, 0xC5F02EDA, 0x426782CD, 0xF6648D35, 0xB4AB88A0, 0x9BA7B785, 0x67C03341, 0x22612D33,
+ 0xD32ED490, 0xAAA56F6A, 0x37ECD8CD, 0x518E8140, 0x7390301C, 0xB33A9E62, 0x244220D4, 0xD88AE216,
+ 0x9752DEEA, 0xB8A22F50, 0xBFB221CB, 0xDB4D57A0, 0x02D39A0D, 0x8C311F00, 0x1192748C, 0xB9505446,
+ 0x469C1E7B, 0x3AEFF9A6, 0x7CD5ABE8, 0xD849E5F5, 0x1E2FB30A, 0x18879BD8, 0x6DDD966E, 0xC9BD4B8F,
+ 0xCEEBCCD9, 0x0D881346, 0x20
+
+basegraph=
+2
+
+z_c=
+384
+
+n_cb=
+19200
+
+q_m=
+2
+
+n_filler=
+56
+
+e =
+36936
+
+rv_index =
+0
+
+code_block_mode =
+1
+
+op_flags =
+RTE_BBDEV_LDPC_RATE_MATCH, RTE_BBDEV_LDPC_CRC_24B_ATTACH
+
+expected_status =
+OK
-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC
  2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
                                 ` (6 preceding siblings ...)
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 7/7] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
@ 2019-07-03 18:05               ` Thomas Monjalon
  2019-07-03 18:31                 ` Chautru, Nicolas
  7 siblings, 1 reply; 95+ messages in thread
From: Thomas Monjalon @ 2019-07-03 18:05 UTC (permalink / raw)
  To: Nicolas Chautru, akhil.goyal, ferruh.yigit, amr.mokhtar,
	kamilx.chalupnik
  Cc: dev

Hi,

> Nicolas Chautru (7):
>   bbdev: renaming non-generic LTE specific structure
>   bbdev: extension of BBDEV API for 5G FEC
>   docs/guides: updating bbdev API for 5GNR operations
>   baseband/turbo_sw: extension of turbosw PMD for 5G
>   docs/guides: updating building steps for BBDEV PMD
>   test-bbdev: update of bbdev test-app for 5GNR
>   test-bbdev: test vectors for 5GNR verification

What are the news about the turbo_sw PMD?
We are still not able to compile it.
After a very long time of asking for the dependency,
what can be the incentive to get Intel delivering it?
Should we block any merge in bbdev until it happens?

Akhil,
I guess you did not try to compile the patch
"extension of turbosw PMD for 5G" in this series?



^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC
  2019-07-03 18:05               ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Thomas Monjalon
@ 2019-07-03 18:31                 ` Chautru, Nicolas
  2019-07-03 20:27                   ` Thomas Monjalon
  0 siblings, 1 reply; 95+ messages in thread
From: Chautru, Nicolas @ 2019-07-03 18:31 UTC (permalink / raw)
  To: Thomas Monjalon, akhil.goyal, Yigit, Ferruh, Mokhtar, Amr,
	Chalupnik, KamilX, Richardson, Bruce
  Cc: dev

Thomas wrote:
>> Nicolas Chautru (7):
>>   bbdev: renaming non-generic LTE specific structure
>>   bbdev: extension of BBDEV API for 5G FEC
>>   docs/guides: updating bbdev API for 5GNR operations
>>   baseband/turbo_sw: extension of turbosw PMD for 5G
>>   docs/guides: updating building steps for BBDEV PMD
>>   test-bbdev: update of bbdev test-app for 5GNR
>>   test-bbdev: test vectors for 5GNR verification
>
>What are the news about the turbo_sw PMD?
>We are still not able to compile it.
>After a very long time of asking for the dependency, what can be the incentive to get Intel delivering it?
>Should we block any merge in bbdev until it happens?

Hi Thomas, 
What you are referring to was resolved with that previous serie https://patches.dpdk.org/project/dpdk/list/?series=5093&state=*
The turbo_sw_pmd is built by default now and is verified by the DPDK CI. As an option this can be built against the real time signal processing libraries (FlexRAN FEC SDK). The link to latest version of this library is also provided https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>

I believe that you reviewed this scheme previously earlier Ferruh of the Tech board as you did provide feedback on the related published article as well as recommended to split the previous serie into several patchsets. 
The last serie under review here in that email thread is the extension of the turbo_sw_pmd driver to support 5GNR operations but still rely on the exact same model and dependency, the only limitation is that these libraries requires AVX512 support for 5GNR operations. 

Let me know whether there is any discrepancy and want to discuss further through that mailing list, tech board or other method. In case you are trying to compile the SDK and have any issues let us know as well. 

Talk to you soon, 
Thanks and regards, 
Nic


^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC
  2019-07-03 18:31                 ` Chautru, Nicolas
@ 2019-07-03 20:27                   ` Thomas Monjalon
  2019-07-05  8:56                     ` Akhil Goyal
  0 siblings, 1 reply; 95+ messages in thread
From: Thomas Monjalon @ 2019-07-03 20:27 UTC (permalink / raw)
  To: Chautru, Nicolas
  Cc: akhil.goyal, Yigit, Ferruh, Mokhtar, Amr, Chalupnik, KamilX,
	Richardson, Bruce, dev

03/07/2019 20:31, Chautru, Nicolas:
> Thomas wrote:
> >> Nicolas Chautru (7):
> >>   bbdev: renaming non-generic LTE specific structure
> >>   bbdev: extension of BBDEV API for 5G FEC
> >>   docs/guides: updating bbdev API for 5GNR operations
> >>   baseband/turbo_sw: extension of turbosw PMD for 5G
> >>   docs/guides: updating building steps for BBDEV PMD
> >>   test-bbdev: update of bbdev test-app for 5GNR
> >>   test-bbdev: test vectors for 5GNR verification
> >
> >What are the news about the turbo_sw PMD?
> >We are still not able to compile it.
> >After a very long time of asking for the dependency, what can be the incentive to get Intel delivering it?
> >Should we block any merge in bbdev until it happens?
> 
> Hi Thomas, 
> What you are referring to was resolved with that previous serie https://patches.dpdk.org/project/dpdk/list/?series=5093&state=*
> The turbo_sw_pmd is built by default now and is verified by the DPDK CI. As an option this can be built against the real time signal processing libraries (FlexRAN FEC SDK). The link to latest version of this library is also provided https://software.intel.com/en-us/articles/flexran-lte-and-5g-nr-fec-software-development-kit-modules>

Whaouh, it happens and I did not notice it!

> I believe that you reviewed this scheme previously earlier Ferruh of the Tech board as you did provide feedback on the related published article as well as recommended to split the previous serie into several patchsets. 

Indeed, and I did not follow the latest news.

> The last serie under review here in that email thread is the extension of the turbo_sw_pmd driver to support 5GNR operations but still rely on the exact same model and dependency, the only limitation is that these libraries requires AVX512 support for 5GNR operations. 
> 
> Let me know whether there is any discrepancy and want to discuss further through that mailing list, tech board or other method. In case you are trying to compile the SDK and have any issues let us know as well. 

That's fine, I can keep cool, thanks.



^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC
  2019-07-03 20:27                   ` Thomas Monjalon
@ 2019-07-05  8:56                     ` Akhil Goyal
  0 siblings, 0 replies; 95+ messages in thread
From: Akhil Goyal @ 2019-07-05  8:56 UTC (permalink / raw)
  To: Thomas Monjalon, Chautru, Nicolas
  Cc: Yigit, Ferruh, Mokhtar, Amr, Chalupnik, KamilX, Richardson, Bruce, dev



> 
> 03/07/2019 20:31, Chautru, Nicolas:
> > Thomas wrote:
> > >> Nicolas Chautru (7):
> > >>   bbdev: renaming non-generic LTE specific structure
> > >>   bbdev: extension of BBDEV API for 5G FEC
> > >>   docs/guides: updating bbdev API for 5GNR operations
> > >>   baseband/turbo_sw: extension of turbosw PMD for 5G
> > >>   docs/guides: updating building steps for BBDEV PMD
> > >>   test-bbdev: update of bbdev test-app for 5GNR
> > >>   test-bbdev: test vectors for 5GNR verification
> > >
> > >What are the news about the turbo_sw PMD?
> > >We are still not able to compile it.
> > >After a very long time of asking for the dependency, what can be the
> incentive to get Intel delivering it?
> > >Should we block any merge in bbdev until it happens?
> >
> > Hi Thomas,
> > What you are referring to was resolved with that previous serie
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatches.
> dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D5093%26state%3D*&amp
> ;data=02%7C01%7Cakhil.goyal%40nxp.com%7C5a21ccb16cbd48a5e30308d6fff
> 4f100%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6369778248117
> 89839&amp;sdata=uVCL7Nm%2FOpfz97xEtCACw6sTMpCmJLiQnxqYKJ2488A%3
> D&amp;reserved=0
> > The turbo_sw_pmd is built by default now and is verified by the DPDK CI. As an
> option this can be built against the real time signal processing libraries (FlexRAN
> FEC SDK). The link to latest version of this library is also provided
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsoftware
> .intel.com%2Fen-us%2Farticles%2Fflexran-lte-and-5g-nr-fec-software-
> development-kit-
> modules&amp;data=02%7C01%7Cakhil.goyal%40nxp.com%7C5a21ccb16cbd48
> a5e30308d6fff4f100%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6
> 36977824811789839&amp;sdata=1TjUuljReN78TBx0j%2BhTeo2r56QzZuvO7qoY
> Yb45API%3D&amp;reserved=0>
> 
> Whaouh, it happens and I did not notice it!
> 
> > I believe that you reviewed this scheme previously earlier Ferruh of the Tech
> board as you did provide feedback on the related published article as well as
> recommended to split the previous serie into several patchsets.
> 
> Indeed, and I did not follow the latest news.
> 
> > The last serie under review here in that email thread is the extension of the
> turbo_sw_pmd driver to support 5GNR operations but still rely on the exact
> same model and dependency, the only limitation is that these libraries requires
> AVX512 support for 5GNR operations.
> >
> > Let me know whether there is any discrepancy and want to discuss further
> through that mailing list, tech board or other method. In case you are trying to
> compile the SDK and have any issues let us know as well.
> 
> That's fine, I can keep cool, thanks.
> 

Split the release note changes for bbdev pmd in two. fpga_lte_fec addition is merged in the previous series which added that driver
Applied to dpdk-next-crypto

Thanks.

^ permalink raw reply	[flat|nested] 95+ messages in thread

* Re: [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure
  2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
@ 2019-07-07  8:43                 ` Thomas Monjalon
  0 siblings, 0 replies; 95+ messages in thread
From: Thomas Monjalon @ 2019-07-07  8:43 UTC (permalink / raw)
  To: Nicolas Chautru
  Cc: dev, akhil.goyal, ferruh.yigit, amr.mokhtar, kamilx.chalupnik

03/07/2019 17:24, Nicolas Chautru:
> Renaming of the enums and structure which were LTE specific to
> allow for extension and support for 5GNR operations.
> 
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
> ---
> -	struct rte_bbdev_op_dec_cb_params *cb = NULL;
> -	struct rte_bbdev_op_dec_tb_params *tb = NULL;
> +	struct rte_bbdev_op_dec_turbo_cb_params *cb = NULL;
> +	struct rte_bbdev_op_dec_turbo_tb_params *tb = NULL;

These structs are renamed only in the next patch.
I will fix.



^ permalink raw reply	[flat|nested] 95+ messages in thread

end of thread, other threads:[~2019-07-07  8:43 UTC | newest]

Thread overview: 95+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-11  0:05 [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Nic Chautru
2019-05-11  0:05 ` Nic Chautru
2019-05-11  0:05 ` [dpdk-dev] [PATCH 1/5] baseband/fpga_lte_fec: addition of driver for 4G turbo FEC with PAC N300 FPGA card Nic Chautru
2019-05-11  0:05   ` Nic Chautru
2019-05-11  0:06 ` [dpdk-dev] [PATCH 2/5] bbdev : Extension of BBDEV for 5G FEC Nic Chautru
2019-05-11  0:06   ` Nic Chautru
2019-05-11  0:06 ` [dpdk-dev] [PATCH 3/5] baseband/turbo_sw : Extension of turbo_sw " Nic Chautru
2019-05-11  0:06   ` Nic Chautru
2019-05-11  0:06 ` [dpdk-dev] [PATCH 4/5] test-bbdev : Update of bbdec test-app for FPGA and 5G testing Nic Chautru
2019-05-11  0:06   ` Nic Chautru
2019-05-11  0:06 ` [dpdk-dev] [PATCH 5/5] usertools: update to usertool to allow binding of baseband device Nic Chautru
2019-05-11  0:06   ` Nic Chautru
2019-05-13 11:10 ` [dpdk-dev] [PATCH 0/5] BBDEV PMD Drivers Extension for 19.08 Luca Boccassi
2019-05-13 11:10   ` Luca Boccassi
2019-05-14  0:07   ` Chautru, Nicolas
2019-05-14  0:07     ` Chautru, Nicolas
2019-05-14 20:44     ` Thomas Monjalon
2019-05-14 20:44       ` Thomas Monjalon
2019-05-14 19:45 ` [dpdk-dev] [PATCH v2 " Nicolas Chautru
2019-05-14 19:45   ` Nicolas Chautru
2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 1/5] baseband/fpga_lte_fec: adding driver for FEC on FPGA Nicolas Chautru
2019-05-14 19:45     ` Nicolas Chautru
2019-05-15  8:28     ` Thomas Monjalon
2019-05-15  8:28       ` Thomas Monjalon
2019-05-20 13:44       ` Ferruh Yigit
2019-05-20 13:48         ` Thomas Monjalon
2019-06-21 16:59     ` [dpdk-dev] [PATCH v3 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
2019-06-24  2:52         ` [dpdk-dev] [PATCH v4 00/10] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 01/10] baseband/turbo_sw: baseband/turbo_sw: dependency patch Nicolas Chautru
2019-06-30 22:31             ` Mokhtar, Amr
2019-07-01 18:06             ` [dpdk-dev] [PATCH v5 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 2/7] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 3/7] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 5/7] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 6/7] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
2019-07-01 18:06               ` [dpdk-dev] [PATCH v5 7/7] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
2019-07-03 15:24             ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Nicolas Chautru
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 1/7] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
2019-07-07  8:43                 ` Thomas Monjalon
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 2/7] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 3/7] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 4/7] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 5/7] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 6/7] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
2019-07-03 15:24               ` [dpdk-dev] [PATCH v6 7/7] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
2019-07-03 18:05               ` [dpdk-dev] [PATCH v6 0/7] bbdev: adding support in BBDEV for 5GNR FEC Thomas Monjalon
2019-07-03 18:31                 ` Chautru, Nicolas
2019-07-03 20:27                   ` Thomas Monjalon
2019-07-05  8:56                     ` Akhil Goyal
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
2019-06-30 22:42             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
2019-06-30 22:45             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
2019-06-30 22:48             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
2019-06-30 22:49             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
2019-06-30 22:53             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
2019-06-30 22:54             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
2019-06-30 22:55             ` Mokhtar, Amr
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
2019-06-30 23:03             ` Mokhtar, Amr
2019-07-01 18:18               ` Chautru, Nicolas
2019-06-24  2:52           ` [dpdk-dev] [PATCH v4 10/10] doc: announce bbdev changes Nicolas Chautru
2019-06-30 23:04             ` Mokhtar, Amr
2019-07-01 11:14             ` Akhil Goyal
2019-07-01 18:14               ` Chautru, Nicolas
2019-07-01 19:17                 ` Thomas Monjalon
2019-07-01 20:27                   ` Chautru, Nicolas
2019-07-01 20:38                     ` Bruce Richardson
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 02/10] baseband/fpga_lte_fec: dependency patch Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 03/10] bbdev: renaming non-generic LTE specific structure Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 04/10] bbdev: extension of BBDEV API for 5G FEC Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 05/10] docs/guides: updating bbdev API for 5GNR operations Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 06/10] baseband/turbo_sw: extension of turbosw PMD for 5G Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 07/10] docs/guides: updating building steps for BBDEV PMD Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 08/10] test-bbdev: update of bbdev test-app for 5GNR Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 09/10] test-bbdev: test vectors for 5GNR verification Nicolas Chautru
2019-06-21 16:59       ` [dpdk-dev] [PATCH v3 10/10] doc: announce bbdev changes Nicolas Chautru
2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 2/5] bbdev: extension of BBDEV for 5G FEC Nicolas Chautru
2019-05-14 19:45     ` Nicolas Chautru
2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 3/5] baseband/turbo_sw: extension of turbosw " Nicolas Chautru
2019-05-14 19:45     ` Nicolas Chautru
2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 4/5] test-bbdev: update of bbdev test-app Nicolas Chautru
2019-05-14 19:45     ` Nicolas Chautru
2019-05-14 19:45   ` [dpdk-dev] [PATCH v2 5/5] usertools: update to usertool for baseband device Nicolas Chautru
2019-05-14 19:45     ` Nicolas Chautru
2019-05-14 20:54   ` [dpdk-dev] [PATCH v2 0/5] BBDEV PMD Drivers Extension for 19.08 Thomas Monjalon
2019-05-14 20:54     ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).